summaryrefslogtreecommitdiff
path: root/internal/tui/pidpicker/model_test.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-02-26 22:59:16 +0200
committerPaul Buetow <paul@buetow.org>2026-02-26 22:59:16 +0200
commitdc7478d7dadf544787a9718608f11312bd2ea944 (patch)
treedc445798ab132e08d8885672fcca0a37facd25ea /internal/tui/pidpicker/model_test.go
parent39a11ed5997a3829751dfbe4b666d3568d466276 (diff)
tui: revamp status keys and add pid/tid reselection flow
Diffstat (limited to 'internal/tui/pidpicker/model_test.go')
-rw-r--r--internal/tui/pidpicker/model_test.go38
1 files changed, 38 insertions, 0 deletions
diff --git a/internal/tui/pidpicker/model_test.go b/internal/tui/pidpicker/model_test.go
index 7347eca..2d76508 100644
--- a/internal/tui/pidpicker/model_test.go
+++ b/internal/tui/pidpicker/model_test.go
@@ -63,6 +63,44 @@ func TestEnterEmitsAllPIDsAndSelectedPID(t *testing.T) {
}
}
+func TestEnterEmitsAllTIDsAndSelectedTIDInTIDMode(t *testing.T) {
+ m := NewTIDWithKeys(42, DefaultKeyMap())
+ m.processes = []ProcessInfo{
+ {Pid: 7001, ParentPID: 42, Comm: "main"},
+ {Pid: 7002, ParentPID: 42, Comm: "worker"},
+ }
+ m.applyFilter()
+
+ modelAny, cmdAny := m.Update(tea.KeyMsg{Type: tea.KeyEnter})
+ _ = modelAny
+ msgAny := cmdAny()
+ tidAny, ok := msgAny.(messages.TidSelectedMsg)
+ if !ok {
+ t.Fatalf("expected TidSelectedMsg for all-tids selection, got %T", msgAny)
+ }
+ if tidAny.Tid != 0 {
+ t.Fatalf("expected all-tids to emit tid 0, got %d", tidAny.Tid)
+ }
+ if tidAny.Pid != 0 {
+ t.Fatalf("expected all-tids to emit pid 0, got %d", tidAny.Pid)
+ }
+
+ m.selectedIndex = 2
+ modelOne, cmdOne := m.Update(tea.KeyMsg{Type: tea.KeyEnter})
+ _ = modelOne
+ msgOne := cmdOne()
+ tidOne, ok := msgOne.(messages.TidSelectedMsg)
+ if !ok {
+ t.Fatalf("expected TidSelectedMsg for concrete selection, got %T", msgOne)
+ }
+ if tidOne.Tid != 7002 {
+ t.Fatalf("expected selected tid 7002, got %d", tidOne.Tid)
+ }
+ if tidOne.Pid != 42 {
+ t.Fatalf("expected selected pid 42, got %d", tidOne.Pid)
+ }
+}
+
func TestEscQuitsAndRefreshTriggersScan(t *testing.T) {
m := NewWithKeys(DefaultKeyMap())