package tui import ( "testing" "charm.land/bubbles/v2/list" tea "charm.land/bubbletea/v2" ) func TestWindowResizeReflowsEveryListAndClampsSmallTerminals(t *testing.T) { m := NewModel() updated, _ := m.Update(tea.WindowSizeMsg{Width: 4, Height: 3}) m = updated.(*Model) lists := []*list.Model{ &m.menuList, &m.installMenuList, &m.updateList, &m.uninstallList, &m.restoreConfigList, &m.majorLangList, &m.regionLangList, &m.selectedLangList, &m.langPreferenceList, &m.configOptionsList, &m.hwaOptionsList, &m.screenshotOptionsList, &m.fileAssociationsList, &m.webUIList, &m.hotkeysList, &m.hotkeysCategoryList, &m.hotkeysPresetList, &m.screenshotValueList, &m.uiSelectList, &m.uiAppList, &m.hotkeysBindingsList, &m.modernzList, &m.uoscList, &m.installPathList, &m.jobHistoryList, } for index, model := range lists { if model.Width() < 1 || model.Height() < 1 { t.Fatalf("list %d has invalid dimensions %dx%d", index, model.Width(), model.Height()) } } if m.outputViewport.Width() < 1 || m.outputViewport.Height() < 1 { t.Fatalf("output viewport has invalid dimensions %dx%d", m.outputViewport.Width(), m.outputViewport.Height()) } }