mirror of
https://github.com/chatmail/core.git
synced 2026-05-06 06:46:35 +03:00
test removing the last, seletected account
this just result again in no accounts. before, get_selected_account() has paniced.
This commit is contained in:
@@ -478,6 +478,27 @@ mod tests {
|
|||||||
assert_eq!(accounts.accounts.read().await.len(), 1);
|
assert_eq!(accounts.accounts.read().await.len(), 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[async_std::test]
|
||||||
|
async fn test_accounts_remove_last() -> Result<()> {
|
||||||
|
let dir = tempfile::tempdir()?;
|
||||||
|
let p: PathBuf = dir.path().join("accounts").into();
|
||||||
|
|
||||||
|
let accounts = Accounts::new("my_os".into(), p.clone()).await?;
|
||||||
|
assert!(accounts.get_selected_account().await.is_none());
|
||||||
|
assert_eq!(accounts.config.get_selected_account().await, 0);
|
||||||
|
|
||||||
|
let id = accounts.add_account().await?;
|
||||||
|
assert!(accounts.get_selected_account().await.is_some());
|
||||||
|
assert_eq!(id, 1);
|
||||||
|
assert_eq!(accounts.accounts.read().await.len(), 1);
|
||||||
|
assert_eq!(accounts.config.get_selected_account().await, id);
|
||||||
|
|
||||||
|
accounts.remove_account(id).await?;
|
||||||
|
assert!(accounts.get_selected_account().await.is_none());
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
|
||||||
#[async_std::test]
|
#[async_std::test]
|
||||||
async fn test_migrate_account() {
|
async fn test_migrate_account() {
|
||||||
let dir = tempfile::tempdir().unwrap();
|
let dir = tempfile::tempdir().unwrap();
|
||||||
|
|||||||
Reference in New Issue
Block a user