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  }