github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/pkg/labels/selector_test.go (about) 1 package labels_test 2 3 import ( 4 "testing" 5 6 "github.com/caos/orbos/pkg/labels" 7 "gopkg.in/yaml.v3" 8 ) 9 10 func TestSelectorLabels_Equal(t *testing.T) { 11 nameLabels := validNameLabels(t) 12 expectValueEquality( 13 t, 14 labels.DeriveNameSelector(nameLabels, true), 15 labels.DeriveNameSelector(nameLabels, true), 16 labels.DeriveNameSelector(nameLabels, false), 17 ) 18 } 19 20 func TestSelectorLabels_Open_MarshalYAML(t *testing.T) { 21 testSelectorLabels(t, labels.DeriveNameSelector(validNameLabels(t), true), `orbos.ch/selectable: "yes" 22 app.kubernetes.io/component: testSuite 23 `) 24 } 25 26 func TestSelectorLabels_Close_MarshalYAML(t *testing.T) { 27 testSelectorLabels(t, labels.DeriveNameSelector(validNameLabels(t), false), `orbos.ch/selectable: "yes" 28 app.kubernetes.io/name: testcase 29 app.kubernetes.io/component: testSuite 30 app.kubernetes.io/managed-by: TEST_OPERATOR_LABELS 31 app.kubernetes.io/part-of: ORBOS 32 `) 33 } 34 35 func testSelectorLabels(t *testing.T, selector *labels.Selector, expected string) { 36 marshalled, err := yaml.Marshal(selector) 37 if err != nil { 38 t.Error("expected successful mashalling") 39 } 40 41 if string(marshalled) != expected { 42 t.Errorf("expected \n%s\n but got \n%s\n", expected, string(marshalled)) 43 } 44 }