Add configurable vault security settings
This commit is contained in:
@@ -365,6 +365,65 @@ func TestUILifecycleActionsCreateSaveOpenLockAndUnlockLocalVault(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestUICreateVaultUsesSelectedSecuritySettings(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
u := newUIWithSession("desktop", &session.Manager{})
|
||||
u.securityCipher.SetText(vault.CipherAES256)
|
||||
u.securityKDF.SetText(vault.KDFAES)
|
||||
u.masterPassword.SetText("correct horse battery staple")
|
||||
|
||||
if err := u.createVaultAction(); err != nil {
|
||||
t.Fatalf("createVaultAction() error = %v", err)
|
||||
}
|
||||
|
||||
path := filepath.Join(t.TempDir(), "secure.kdbx")
|
||||
u.saveAsPath.SetText(path)
|
||||
if err := u.saveAsAction(); err != nil {
|
||||
t.Fatalf("saveAsAction() error = %v", err)
|
||||
}
|
||||
|
||||
var reopened session.Manager
|
||||
if err := reopened.Open(path, vault.MasterKey{Password: "correct horse battery staple"}); err != nil {
|
||||
t.Fatalf("Open() error = %v", err)
|
||||
}
|
||||
got := reopened.SecuritySettings()
|
||||
if got.Cipher != vault.CipherAES256 || got.KDF != vault.KDFAES {
|
||||
t.Fatalf("SecuritySettings() = %#v, want aes256/aes-kdf", got)
|
||||
}
|
||||
}
|
||||
|
||||
func TestUISaveSecuritySettingsUpdatesExistingVault(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
manager := &session.Manager{}
|
||||
u := newUIWithSession("desktop", manager)
|
||||
u.masterPassword.SetText("correct horse battery staple")
|
||||
if err := u.createVaultAction(); err != nil {
|
||||
t.Fatalf("createVaultAction() error = %v", err)
|
||||
}
|
||||
u.securityCipher.SetText(vault.CipherAES256)
|
||||
u.securityKDF.SetText(vault.KDFAES)
|
||||
if err := u.saveSecuritySettingsAction(); err != nil {
|
||||
t.Fatalf("saveSecuritySettingsAction() error = %v", err)
|
||||
}
|
||||
|
||||
path := filepath.Join(t.TempDir(), "updated-secure.kdbx")
|
||||
u.saveAsPath.SetText(path)
|
||||
if err := u.saveAsAction(); err != nil {
|
||||
t.Fatalf("saveAsAction() error = %v", err)
|
||||
}
|
||||
|
||||
var reopened session.Manager
|
||||
if err := reopened.Open(path, vault.MasterKey{Password: "correct horse battery staple"}); err != nil {
|
||||
t.Fatalf("Open() error = %v", err)
|
||||
}
|
||||
got := reopened.SecuritySettings()
|
||||
if got.Cipher != vault.CipherAES256 || got.KDF != vault.KDFAES {
|
||||
t.Fatalf("SecuritySettings() = %#v, want aes256/aes-kdf", got)
|
||||
}
|
||||
}
|
||||
|
||||
func TestUILockAndUnlockClearMasterPasswordField(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user