github.phpd.cn/cilium/cilium@v1.6.12/pkg/k8s/identitybackend/identity_test.go (about) 1 // Copyright 2019 Authors of Cilium 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 // +build !privileged_tests 16 17 package identitybackend 18 19 import ( 20 "testing" 21 22 "github.com/cilium/cilium/pkg/checker" 23 24 . "gopkg.in/check.v1" 25 ) 26 27 // Hook up gocheck into the "go test" runner. 28 func Test(t *testing.T) { 29 TestingT(t) 30 } 31 32 type K8sIdentityBackendSuite struct{} 33 34 var _ = Suite(&K8sIdentityBackendSuite{}) 35 36 func (s *K8sIdentityBackendSuite) TestSanitizeK8sLabels(c *C) { 37 testCases := []struct { 38 input map[string]string 39 selected map[string]string 40 skipped map[string]string 41 }{ 42 { 43 input: map[string]string{}, 44 selected: map[string]string{}, 45 skipped: map[string]string{}, 46 }, 47 { 48 input: map[string]string{"k8s:foo": "bar"}, 49 selected: map[string]string{"foo": "bar"}, 50 skipped: map[string]string{}, 51 }, 52 { 53 input: map[string]string{"k8s:foo": "bar", "k8s:abc": "def"}, 54 selected: map[string]string{"foo": "bar", "abc": "def"}, 55 skipped: map[string]string{}, 56 }, 57 { 58 input: map[string]string{"k8s:foo": "bar", "k8s:abc": "def", "container:something": "else"}, 59 selected: map[string]string{"foo": "bar", "abc": "def"}, 60 skipped: map[string]string{"container:something": "else"}, 61 }, 62 } 63 64 for _, test := range testCases { 65 selected, skipped := sanitizeK8sLabels(test.input) 66 c.Assert(selected, checker.DeepEquals, test.selected) 67 c.Assert(skipped, checker.DeepEquals, test.skipped) 68 } 69 }