Update lifecycle tests for controller state

This commit is contained in:
Joe Julian
2026-03-29 13:45:57 -07:00
parent 47bbbdb05e
commit 4509634a15
+29 -29
View File
@@ -1869,20 +1869,20 @@ func TestUILocalLifecycleActionsUpdateVisibleStatusMessages(t *testing.T) {
u.masterPassword.SetText("correct horse battery staple") u.masterPassword.SetText("correct horse battery staple")
u.runAction("create vault", u.createVaultAction) u.runAction("create vault", u.createVaultAction)
if got := u.statusMessage; got != "create vault complete" { if got := u.state.StatusMessage; got != "create vault complete" {
t.Fatalf("status after create = %q, want %q", got, "create vault complete") t.Fatalf("status after create = %q, want %q", got, "create vault complete")
} }
if got := u.errorMessage; got != "" { if got := u.state.ErrorMessage; got != "" {
t.Fatalf("error after create = %q, want empty", got) t.Fatalf("error after create = %q, want empty", got)
} }
path := filepath.Join(t.TempDir(), "keepassgo.kdbx") path := filepath.Join(t.TempDir(), "keepassgo.kdbx")
u.saveAsPath.SetText(path) u.saveAsPath.SetText(path)
u.runAction("save-as vault", u.saveAsAction) u.runAction("save-as vault", u.saveAsAction)
if got := u.statusMessage; got != "save-as vault complete" { if got := u.state.StatusMessage; got != "save-as vault complete" {
t.Fatalf("status after save-as = %q, want %q", got, "save-as vault complete") t.Fatalf("status after save-as = %q, want %q", got, "save-as vault complete")
} }
if got := u.errorMessage; got != "" { if got := u.state.ErrorMessage; got != "" {
t.Fatalf("error after save-as = %q, want empty", got) t.Fatalf("error after save-as = %q, want empty", got)
} }
@@ -1898,26 +1898,26 @@ func TestUILocalLifecycleActionsUpdateVisibleStatusMessages(t *testing.T) {
} }
u.runAction("save vault", u.saveAction) u.runAction("save vault", u.saveAction)
if got := u.statusMessage; got != "save vault complete" { if got := u.state.StatusMessage; got != "save vault complete" {
t.Fatalf("status after save = %q, want %q", got, "save vault complete") t.Fatalf("status after save = %q, want %q", got, "save vault complete")
} }
if got := u.errorMessage; got != "" { if got := u.state.ErrorMessage; got != "" {
t.Fatalf("error after save = %q, want empty", got) t.Fatalf("error after save = %q, want empty", got)
} }
u.runAction("lock vault", u.lockAction) u.runAction("lock vault", u.lockAction)
if got := u.statusMessage; got != "lock vault complete" { if got := u.state.StatusMessage; got != "lock vault complete" {
t.Fatalf("status after lock = %q, want %q", got, "lock vault complete") t.Fatalf("status after lock = %q, want %q", got, "lock vault complete")
} }
if got := u.errorMessage; got != "" { if got := u.state.ErrorMessage; got != "" {
t.Fatalf("error after lock = %q, want empty", got) t.Fatalf("error after lock = %q, want empty", got)
} }
u.runAction("unlock vault", u.unlockAction) u.runAction("unlock vault", u.unlockAction)
if got := u.statusMessage; got != "unlock vault complete" { if got := u.state.StatusMessage; got != "unlock vault complete" {
t.Fatalf("status after unlock = %q, want %q", got, "unlock vault complete") t.Fatalf("status after unlock = %q, want %q", got, "unlock vault complete")
} }
if got := u.errorMessage; got != "" { if got := u.state.ErrorMessage; got != "" {
t.Fatalf("error after unlock = %q, want empty", got) t.Fatalf("error after unlock = %q, want empty", got)
} }
@@ -1925,10 +1925,10 @@ func TestUILocalLifecycleActionsUpdateVisibleStatusMessages(t *testing.T) {
reopened.masterPassword.SetText("correct horse battery staple") reopened.masterPassword.SetText("correct horse battery staple")
reopened.vaultPath.SetText(path) reopened.vaultPath.SetText(path)
reopened.runAction("open vault", reopened.openVaultAction) reopened.runAction("open vault", reopened.openVaultAction)
if got := reopened.statusMessage; got != "open vault complete" { if got := reopened.state.StatusMessage; got != "open vault complete" {
t.Fatalf("status after open = %q, want %q", got, "open vault complete") t.Fatalf("status after open = %q, want %q", got, "open vault complete")
} }
if got := reopened.errorMessage; got != "" { if got := reopened.state.ErrorMessage; got != "" {
t.Fatalf("error after open = %q, want empty", got) t.Fatalf("error after open = %q, want empty", got)
} }
} }
@@ -1945,10 +1945,10 @@ func TestUILocalLifecycleActionErrorsAreVisibleAndSpecific(t *testing.T) {
u.runAction("create vault", u.createVaultAction) u.runAction("create vault", u.createVaultAction)
u.runAction("save vault", u.saveAction) u.runAction("save vault", u.saveAction)
if got := u.statusMessage; got != "" { if got := u.state.StatusMessage; got != "" {
t.Fatalf("status after failed save = %q, want empty", got) t.Fatalf("status after failed save = %q, want empty", got)
} }
if got := u.errorMessage; !strings.Contains(got, session.ErrNoPath.Error()) { if got := u.state.ErrorMessage; !strings.Contains(got, session.ErrNoPath.Error()) {
t.Fatalf("error after failed save = %q, want %q", got, session.ErrNoPath.Error()) t.Fatalf("error after failed save = %q, want %q", got, session.ErrNoPath.Error())
} }
}) })
@@ -1962,10 +1962,10 @@ func TestUILocalLifecycleActionErrorsAreVisibleAndSpecific(t *testing.T) {
u.runAction("create vault", u.createVaultAction) u.runAction("create vault", u.createVaultAction)
u.runAction("save-as vault", u.saveAsAction) u.runAction("save-as vault", u.saveAsAction)
if got := u.statusMessage; got != "" { if got := u.state.StatusMessage; got != "" {
t.Fatalf("status after failed save-as = %q, want empty", got) t.Fatalf("status after failed save-as = %q, want empty", got)
} }
if got := u.errorMessage; got != "save-as path is required" { if got := u.state.ErrorMessage; got != "save-as path is required" {
t.Fatalf("error after failed save-as = %q, want %q", got, "save-as path is required") t.Fatalf("error after failed save-as = %q, want %q", got, "save-as path is required")
} }
}) })
@@ -1978,10 +1978,10 @@ func TestUILocalLifecycleActionErrorsAreVisibleAndSpecific(t *testing.T) {
u.runAction("open vault", u.openVaultAction) u.runAction("open vault", u.openVaultAction)
if got := u.statusMessage; got != "" { if got := u.state.StatusMessage; got != "" {
t.Fatalf("status after failed open = %q, want empty", got) t.Fatalf("status after failed open = %q, want empty", got)
} }
if got := u.errorMessage; got != "vault path is required" { if got := u.state.ErrorMessage; got != "vault path is required" {
t.Fatalf("error after failed open = %q, want %q", got, "vault path is required") t.Fatalf("error after failed open = %q, want %q", got, "vault path is required")
} }
}) })
@@ -1995,10 +1995,10 @@ func TestUILocalLifecycleActionErrorsAreVisibleAndSpecific(t *testing.T) {
u.runAction("open vault", u.openVaultAction) u.runAction("open vault", u.openVaultAction)
if got := u.statusMessage; got != "" { if got := u.state.StatusMessage; got != "" {
t.Fatalf("status after unreadable open = %q, want empty", got) t.Fatalf("status after unreadable open = %q, want empty", got)
} }
if got := u.errorMessage; got == "" || !strings.Contains(got, "read ") { if got := u.state.ErrorMessage; got == "" || !strings.Contains(got, "read ") {
t.Fatalf("error after unreadable open = %q, want read failure", got) t.Fatalf("error after unreadable open = %q, want read failure", got)
} }
}) })
@@ -2017,10 +2017,10 @@ func TestUILocalLifecycleActionErrorsAreVisibleAndSpecific(t *testing.T) {
u.runAction("open vault", u.openVaultAction) u.runAction("open vault", u.openVaultAction)
if got := u.statusMessage; got != "" { if got := u.state.StatusMessage; got != "" {
t.Fatalf("status after decode failure = %q, want empty", got) t.Fatalf("status after decode failure = %q, want empty", got)
} }
if got := u.errorMessage; got == "" || !strings.Contains(got, "decode kdbx") { if got := u.state.ErrorMessage; got == "" || !strings.Contains(got, "decode kdbx") {
t.Fatalf("error after decode failure = %q, want decode kdbx failure", got) t.Fatalf("error after decode failure = %q, want decode kdbx failure", got)
} }
}) })
@@ -2043,10 +2043,10 @@ func TestUILocalLifecycleActionErrorsAreVisibleAndSpecific(t *testing.T) {
u.runAction("open vault", u.openVaultAction) u.runAction("open vault", u.openVaultAction)
if got := u.statusMessage; got != "" { if got := u.state.StatusMessage; got != "" {
t.Fatalf("status after invalid master open = %q, want empty", got) t.Fatalf("status after invalid master open = %q, want empty", got)
} }
if got := u.errorMessage; !strings.Contains(got, vault.ErrInvalidMasterKey.Error()) { if got := u.state.ErrorMessage; !strings.Contains(got, vault.ErrInvalidMasterKey.Error()) {
t.Fatalf("error after invalid master open = %q, want %q", got, vault.ErrInvalidMasterKey.Error()) t.Fatalf("error after invalid master open = %q, want %q", got, vault.ErrInvalidMasterKey.Error())
} }
}) })
@@ -2066,10 +2066,10 @@ func TestUILocalLifecycleActionErrorsAreVisibleAndSpecific(t *testing.T) {
u.masterPassword.SetText("wrong password") u.masterPassword.SetText("wrong password")
u.runAction("unlock vault", u.unlockAction) u.runAction("unlock vault", u.unlockAction)
if got := u.statusMessage; got != "" { if got := u.state.StatusMessage; got != "" {
t.Fatalf("status after invalid unlock = %q, want empty", got) t.Fatalf("status after invalid unlock = %q, want empty", got)
} }
if got := u.errorMessage; !strings.Contains(got, vault.ErrInvalidMasterKey.Error()) { if got := u.state.ErrorMessage; !strings.Contains(got, vault.ErrInvalidMasterKey.Error()) {
t.Fatalf("error after invalid unlock = %q, want %q", got, vault.ErrInvalidMasterKey.Error()) t.Fatalf("error after invalid unlock = %q, want %q", got, vault.ErrInvalidMasterKey.Error())
} }
}) })
@@ -2082,15 +2082,15 @@ func TestUILocalLifecycleActionsClearStaleMessagesOnSuccess(t *testing.T) {
u.masterPassword.SetText("correct horse battery staple") u.masterPassword.SetText("correct horse battery staple")
u.runAction("save vault", u.saveAction) u.runAction("save vault", u.saveAction)
if u.errorMessage == "" { if u.state.ErrorMessage == "" {
t.Fatal("error after failed save = empty, want visible failure") t.Fatal("error after failed save = empty, want visible failure")
} }
u.runAction("create vault", u.createVaultAction) u.runAction("create vault", u.createVaultAction)
if got := u.errorMessage; got != "" { if got := u.state.ErrorMessage; got != "" {
t.Fatalf("error after create = %q, want cleared", got) t.Fatalf("error after create = %q, want cleared", got)
} }
if got := u.statusMessage; got != "create vault complete" { if got := u.state.StatusMessage; got != "create vault complete" {
t.Fatalf("status after create = %q, want %q", got, "create vault complete") t.Fatalf("status after create = %q, want %q", got, "create vault complete")
} }
} }