diff options
| author | Paul Buetow <paul@buetow.org> | 2026-02-24 17:27:10 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-02-24 17:27:10 +0200 |
| commit | da8ddf1cf415f1754c3fe71f3f342327ad00e91e (patch) | |
| tree | af3ba70015cf7db4bfd3a2adcb9334417740e4f3 /internal/tui/tui_test.go | |
| parent | 2ae0b33c9f196634eaa55bd6997d1feae9147385 (diff) | |
tui: add toggle to disable snapshot export file writes
Diffstat (limited to 'internal/tui/tui_test.go')
| -rw-r--r-- | internal/tui/tui_test.go | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/internal/tui/tui_test.go b/internal/tui/tui_test.go index fd7adfa..e69ff9b 100644 --- a/internal/tui/tui_test.go +++ b/internal/tui/tui_test.go @@ -192,6 +192,9 @@ func TestDashboardRefreshPicksLateBoundSource(t *testing.T) { } func TestExportKeyOpensModalOnDashboard(t *testing.T) { + flags.SetTUIExportEnable(true) + t.Cleanup(func() { flags.SetTUIExportEnable(true) }) + m := NewModel(-1, func(context.Context) error { return nil }) m.screen = ScreenDashboard m.attaching = false @@ -203,6 +206,21 @@ func TestExportKeyOpensModalOnDashboard(t *testing.T) { } } +func TestExportKeyIgnoredWhenExportDisabled(t *testing.T) { + flags.SetTUIExportEnable(false) + t.Cleanup(func() { flags.SetTUIExportEnable(true) }) + + m := NewModel(-1, func(context.Context) error { return nil }) + m.screen = ScreenDashboard + m.attaching = false + + next, _ := m.Update(tea.KeyMsg{Type: tea.KeyRunes, Runes: []rune{'e'}}) + updated := next.(Model) + if updated.exporter.Visible() { + t.Fatalf("expected export modal to remain closed when export is disabled") + } +} + func TestRunExportCmdCSVWritesFile(t *testing.T) { dir := t.TempDir() prev, err := os.Getwd() @@ -292,6 +310,9 @@ func TestHelpOverlayUsesPickerBindingsOnPickerScreen(t *testing.T) { } func TestHelpToggleDoesNotBreakExportModalInput(t *testing.T) { + flags.SetTUIExportEnable(true) + t.Cleanup(func() { flags.SetTUIExportEnable(true) }) + m := NewModel(-1, func(context.Context) error { return nil }) m.screen = ScreenDashboard @@ -314,6 +335,22 @@ func TestHelpToggleDoesNotBreakExportModalInput(t *testing.T) { } } +func TestHelpOverlayHidesExportBindingWhenExportDisabled(t *testing.T) { + flags.SetTUIExportEnable(false) + t.Cleanup(func() { flags.SetTUIExportEnable(true) }) + + m := NewModel(-1, func(context.Context) error { return nil }) + m.screen = ScreenDashboard + m.showHelp = true + m.width = 100 + m.height = 30 + + out := m.View() + if strings.Contains(out, "e export") { + t.Fatalf("did not expect export shortcut in help overlay when export is disabled") + } +} + func TestExportModalStillAllowsDashboardStatsUpdates(t *testing.T) { m := NewModel(-1, func(context.Context) error { return nil }) m.screen = ScreenDashboard |
