package ui import ( "testing" "github.com/stretchr/testify/assert" ) func TestIsLabelSelector(t *testing.T) { uu := map[string]struct { sel string e bool }{ "cool": {"-l app=fred,env=blee", true}, "noMode": {"app=fred,env=blee", false}, "noSpace": {"-lapp=fred,env=blee", true}, "wrongLabel": {"-f app=fred,env=blee", false}, } for k := range uu { u := uu[k] t.Run(k, func(t *testing.T) { assert.Equal(t, u.e, IsLabelSelector(u.sel)) }) } } func TestTrimLabelSelector(t *testing.T) { uu := map[string]struct { sel, e string }{ "cool": {"-l app=fred,env=blee", "app=fred,env=blee"}, "noSpace": {"-lapp=fred,env=blee", "app=fred,env=blee"}, } for k := range uu { u := uu[k] t.Run(k, func(t *testing.T) { assert.Equal(t, u.e, TrimLabelSelector(u.sel)) }) } } // BOZO!! // func TestTVSortRows(t *testing.T) { // uu := []struct { // rows resource.RowEvents // col int // asc bool // first resource.Row // e []string // }{ // { // resource.RowEvents{ // "row1": {Fields: resource.Row{"x", "y"}}, // "row2": {Fields: resource.Row{"a", "b"}}, // }, // 0, // true, // resource.Row{"a", "b"}, // []string{"row2", "row1"}, // }, // { // resource.RowEvents{ // "row1": {Fields: resource.Row{"x", "y"}}, // "row2": {Fields: resource.Row{"a", "b"}}, // }, // 1, // true, // resource.Row{"a", "b"}, // []string{"row2", "row1"}, // }, // { // resource.RowEvents{ // "row1": {Fields: resource.Row{"x", "y"}}, // "row2": {Fields: resource.Row{"a", "b"}}, // }, // 1, // false, // resource.Row{"x", "y"}, // []string{"row1", "row2"}, // }, // { // resource.RowEvents{ // "row1": {Fields: resource.Row{"2175h48m0.06015s", "y"}}, // "row2": {Fields: resource.Row{"403h42m34.060166s", "b"}}, // }, // 0, // true, // resource.Row{"403h42m34.060166s", "b"}, // []string{"row2", "row1"}, // }, // } // for _, u := range uu { // keys := make([]string, len(u.rows)) // sortRows(u.rows, defaultSort, SortColumn{index: u.col, colCount: len(u.rows), asc: u.asc}, keys) // assert.Equal(t, u.e, keys) // assert.Equal(t, u.first, u.rows[u.e[0]].Fields) // } // } // func BenchmarkTableSortRows(b *testing.B) { // evts := resource.RowEvents{ // "row1": {Fields: resource.Row{"x", "y"}}, // "row2": {Fields: resource.Row{"a", "b"}}, // } // sc := SortColumn{index: 0, colCount: 2, asc: true} // keys := make([]string, len(evts)) // b.ResetTimer() // b.ReportAllocs() // for i := 0; i < b.N; i++ { // sortRows(evts, defaultSort, sc, keys) // } // }