diff options
| -rw-r--r-- | internal/tui/dashboard/model.go | 1 | ||||
| -rw-r--r-- | internal/tui/dashboard/model_test.go | 21 |
2 files changed, 22 insertions, 0 deletions
diff --git a/internal/tui/dashboard/model.go b/internal/tui/dashboard/model.go index 966e93e..d3d8322 100644 --- a/internal/tui/dashboard/model.go +++ b/internal/tui/dashboard/model.go @@ -90,6 +90,7 @@ func (m Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { m.latest = msg.Snap m.syscallsOffset = clampOffset(m.syscallsOffset, m.maxSyscallsRows()) m.filesOffset = clampOffset(m.filesOffset, m.maxFilesRows()) + m.filesDirOffset = clampOffset(m.filesDirOffset, m.maxFilesDirRows()) m.processesOffset = clampOffset(m.processesOffset, m.maxProcessesRows()) m.streamModel.Refresh() return m, nil diff --git a/internal/tui/dashboard/model_test.go b/internal/tui/dashboard/model_test.go index 489c14b..c243018 100644 --- a/internal/tui/dashboard/model_test.go +++ b/internal/tui/dashboard/model_test.go @@ -257,6 +257,27 @@ func TestStatsTickMsgUpdatesLatestSnapshot(t *testing.T) { } } +func TestStatsTickClampsGroupedFilesOffset(t *testing.T) { + snap := statsengine.NewSnapshot( + nil, + nil, + nil, + nil, + []statsengine.FileSnapshot{{Path: "/a/f1"}, {Path: "/a/f2"}}, + nil, + statsengine.HistogramSnapshot{}, + statsengine.HistogramSnapshot{}, + ) + m := NewModel(nil, nil) + m.filesDirOffset = 10 + + next, _ := m.Update(messages.StatsTickMsg{Snap: &snap}) + model := next.(Model) + if model.filesDirOffset != 0 { + t.Fatalf("expected grouped files offset clamped to 0, got %d", model.filesDirOffset) + } +} + func TestViewRendersTabBarAndHelp(t *testing.T) { m := NewModelWithConfig(nil, nil, 1000, common.DefaultKeyMap()) out := m.View() |
