diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/login.rs | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/login.rs b/src/login.rs index 58d1b87..ad9902d 100644 --- a/src/login.rs +++ b/src/login.rs | |||
| @@ -42,7 +42,8 @@ pub async fn launch( | |||
| 42 | get_config_item(git_repo, "nostr.npub") | 42 | get_config_item(git_repo, "nostr.npub") |
| 43 | .unwrap_or("unknown ncryptsec".to_string()), | 43 | .unwrap_or("unknown ncryptsec".to_string()), |
| 44 | ) { | 44 | ) { |
| 45 | if let Ok(user_ref) = get_user_details(&public_key, client).await { | 45 | if let Ok(user_ref) = get_user_details(&public_key, client, git_repo).await |
| 46 | { | ||
| 46 | user_ref.metadata.name | 47 | user_ref.metadata.name |
| 47 | } else { | 48 | } else { |
| 48 | "unknown ncryptsec".to_string() | 49 | "unknown ncryptsec".to_string() |
| @@ -70,7 +71,7 @@ pub async fn launch( | |||
| 70 | } | 71 | } |
| 71 | } { | 72 | } { |
| 72 | // get user ref | 73 | // get user ref |
| 73 | let user_ref = get_user_details(&keys.public_key(), client).await?; | 74 | let user_ref = get_user_details(&keys.public_key(), client, git_repo).await?; |
| 74 | print_logged_in_as(&user_ref, client.is_none())?; | 75 | print_logged_in_as(&user_ref, client.is_none())?; |
| 75 | Ok((keys, user_ref)) | 76 | Ok((keys, user_ref)) |
| 76 | } else { | 77 | } else { |
| @@ -193,7 +194,7 @@ async fn fresh_login( | |||
| 193 | if let Err(error) = save_keys(git_repo, &keys, always_save) { | 194 | if let Err(error) = save_keys(git_repo, &keys, always_save) { |
| 194 | println!("{error}"); | 195 | println!("{error}"); |
| 195 | } | 196 | } |
| 196 | let user_ref = get_user_details(&keys.public_key(), client).await?; | 197 | let user_ref = get_user_details(&keys.public_key(), client, git_repo).await?; |
| 197 | print_logged_in_as(&user_ref, client.is_none())?; | 198 | print_logged_in_as(&user_ref, client.is_none())?; |
| 198 | Ok((keys, user_ref)) | 199 | Ok((keys, user_ref)) |
| 199 | } | 200 | } |
| @@ -341,11 +342,17 @@ async fn get_user_details( | |||
| 341 | public_key: &PublicKey, | 342 | public_key: &PublicKey, |
| 342 | #[cfg(test)] client: Option<&crate::client::MockConnect>, | 343 | #[cfg(test)] client: Option<&crate::client::MockConnect>, |
| 343 | #[cfg(not(test))] client: Option<&Client>, | 344 | #[cfg(not(test))] client: Option<&Client>, |
| 345 | git_repo: &Repo, | ||
| 344 | ) -> Result<UserRef> { | 346 | ) -> Result<UserRef> { |
| 345 | if client.is_some() { | 347 | if client.is_some() { |
| 346 | println!("searching for profile and relay updates..."); | 348 | println!("searching for profile and relay updates..."); |
| 347 | } | 349 | } |
| 348 | let database = SQLiteDatabase::open(get_dirs()?.config_dir().join("cache.sqlite")).await?; | 350 | let database = SQLiteDatabase::open(if std::env::var("NGITTEST").is_err() { |
| 351 | get_dirs()?.config_dir().join("cache.sqlite") | ||
| 352 | } else { | ||
| 353 | git_repo.get_path()?.join(".git/test-global-cache.sqlite") | ||
| 354 | }) | ||
| 355 | .await?; | ||
| 349 | let mut events: Vec<nostr::Event> = vec![]; | 356 | let mut events: Vec<nostr::Event> = vec![]; |
| 350 | let filters = vec![ | 357 | let filters = vec![ |
| 351 | nostr::Filter::default() | 358 | nostr::Filter::default() |