1
0
Fork 0
mirror of https://github.com/kyverno/kyverno.git synced 2025-03-31 03:45:17 +00:00

644 removing outdated tests and fixing stylistic issues

This commit is contained in:
shravan 2020-02-06 23:55:46 +05:30
parent 0891b23efd
commit 9051320e43
2 changed files with 192 additions and 199 deletions

View file

@ -37,11 +37,7 @@ func checkKind(kinds []string, resourceKind string) bool {
}
func checkName(name, resourceName string) bool {
if wildcard.Match(name, resourceName) {
return true
}
return false
return wildcard.Match(name, resourceName)
}
func checkNameSpace(namespaces []string, resourceNameSpace string) bool {
@ -158,11 +154,8 @@ func MatchesResourceDescription(resource unstructured.Unstructured, rule kyverno
// check if any condition has failed
var numberOfConditions = 9
for numberOfConditions > 0 {
select {
case hasPassed := <-condition:
if !hasPassed {
return false
}
if hasPassed := <-condition; !hasPassed {
return false
}
numberOfConditions -= numberOfConditions
}

View file

@ -31,195 +31,195 @@ func TestGetAnchorsFromMap_ThereAreAnchors(t *testing.T) {
assert.Equal(t, actualMap["(namespace)"].(string), "kube-?olicy")
}
func TestValidate_ServiceTest(t *testing.T) {
rawPolicy := []byte(`{
"apiVersion":"kyverno.nirmata.io/v1",
"kind":"ClusterPolicy",
"metadata":{
"name":"policy-service"
},
"spec":{
"rules":[
{
"name":"ps1",
"resource":{
"kinds":[
"Service"
],
"name":"game-service*"
},
"mutate":{
"patches":[
{
"path":"/metadata/labels/isMutated",
"op":"add",
"value":"true"
},
{
"path":"/metadata/labels/secretLabel",
"op":"replace",
"value":"weKnow"
},
{
"path":"/metadata/labels/originalLabel",
"op":"remove"
},
{
"path":"/spec/selector/app",
"op":"replace",
"value":"mutedApp"
}
]
},
"validate":{
"message":"This resource is broken",
"pattern":{
"spec":{
"ports":[
{
"name":"hs",
"protocol":32
}
]
}
}
}
}
]
}
}`)
rawResource := []byte(`{
"kind":"Service",
"apiVersion":"v1",
"metadata":{
"name":"game-service",
"labels":{
"originalLabel":"isHere",
"secretLabel":"thisIsMySecret"
}
},
"spec":{
"selector":{
"app":"MyApp"
},
"ports":[
{
"name":"http",
"protocol":"TCP",
"port":80,
"targetPort":9376
}
]
}
}
`)
var policy kyverno.ClusterPolicy
json.Unmarshal(rawPolicy, &policy)
resourceUnstructured, err := utils.ConvertToUnstructured(rawResource)
assert.NilError(t, err)
er := Validate(PolicyContext{Policy: policy, NewResource: *resourceUnstructured})
assert.Assert(t, len(er.PolicyResponse.Rules) == 0)
}
func TestValidate_MapHasFloats(t *testing.T) {
rawPolicy := []byte(`{
"apiVersion":"kyverno.nirmata.io/v1",
"kind":"ClusterPolicy",
"metadata":{
"name":"policy-deployment-changed"
},
"spec":{
"rules":[
{
"name":"First policy v2",
"resource":{
"kinds":[
"Deployment"
],
"name":"nginx-*"
},
"mutate":{
"patches":[
{
"path":"/metadata/labels/isMutated",
"op":"add",
"value":"true"
},
{
"path":"/metadata/labels/app",
"op":"replace",
"value":"nginx_is_mutated"
}
]
},
"validate":{
"message":"replicas number is wrong",
"pattern":{
"metadata":{
"labels":{
"app":"*"
}
},
"spec":{
"replicas":3
}
}
}
}
]
}
}`)
rawResource := []byte(`{
"apiVersion":"apps/v1",
"kind":"Deployment",
"metadata":{
"name":"nginx-deployment",
"labels":{
"app":"nginx"
}
},
"spec":{
"replicas":3,
"selector":{
"matchLabels":{
"app":"nginx"
}
},
"template":{
"metadata":{
"labels":{
"app":"nginx"
}
},
"spec":{
"containers":[
{
"name":"nginx",
"image":"nginx:1.7.9",
"ports":[
{
"containerPort":80
}
]
}
]
}
}
}
}
`)
var policy kyverno.ClusterPolicy
json.Unmarshal(rawPolicy, &policy)
resourceUnstructured, err := utils.ConvertToUnstructured(rawResource)
assert.NilError(t, err)
er := Validate(PolicyContext{Policy: policy, NewResource: *resourceUnstructured})
assert.Assert(t, len(er.PolicyResponse.Rules) == 0)
}
//func TestValidate_ServiceTest(t *testing.T) {
// rawPolicy := []byte(`{
// "apiVersion":"kyverno.nirmata.io/v1",
// "kind":"ClusterPolicy",
// "metadata":{
// "name":"policy-service"
// },
// "spec":{
// "rules":[
// {
// "name":"ps1",
// "resource":{
// "kinds":[
// "Service"
// ],
// "name":"game-service*"
// },
// "mutate":{
// "patches":[
// {
// "path":"/metadata/labels/isMutated",
// "op":"add",
// "value":"true"
// },
// {
// "path":"/metadata/labels/secretLabel",
// "op":"replace",
// "value":"weKnow"
// },
// {
// "path":"/metadata/labels/originalLabel",
// "op":"remove"
// },
// {
// "path":"/spec/selector/app",
// "op":"replace",
// "value":"mutedApp"
// }
// ]
// },
// "validate":{
// "message":"This resource is broken",
// "pattern":{
// "spec":{
// "ports":[
// {
// "name":"hs",
// "protocol":32
// }
// ]
// }
// }
// }
// }
// ]
// }
// }`)
// rawResource := []byte(`{
// "kind":"Service",
// "apiVersion":"v1",
// "metadata":{
// "name":"game-service",
// "labels":{
// "originalLabel":"isHere",
// "secretLabel":"thisIsMySecret"
// }
// },
// "spec":{
// "selector":{
// "app":"MyApp"
// },
// "ports":[
// {
// "name":"http",
// "protocol":"TCP",
// "port":80,
// "targetPort":9376
// }
// ]
// }
// }
// `)
//
// var policy kyverno.ClusterPolicy
// json.Unmarshal(rawPolicy, &policy)
//
// resourceUnstructured, err := utils.ConvertToUnstructured(rawResource)
// assert.NilError(t, err)
//
// er := Validate(PolicyContext{Policy: policy, NewResource: *resourceUnstructured})
// assert.Assert(t, len(er.PolicyResponse.Rules) == 0)
//}
//
//func TestValidate_MapHasFloats(t *testing.T) {
// rawPolicy := []byte(`{
// "apiVersion":"kyverno.nirmata.io/v1",
// "kind":"ClusterPolicy",
// "metadata":{
// "name":"policy-deployment-changed"
// },
// "spec":{
// "rules":[
// {
// "name":"First policy v2",
// "resource":{
// "kinds":[
// "Deployment"
// ],
// "name":"nginx-*"
// },
// "mutate":{
// "patches":[
// {
// "path":"/metadata/labels/isMutated",
// "op":"add",
// "value":"true"
// },
// {
// "path":"/metadata/labels/app",
// "op":"replace",
// "value":"nginx_is_mutated"
// }
// ]
// },
// "validate":{
// "message":"replicas number is wrong",
// "pattern":{
// "metadata":{
// "labels":{
// "app":"*"
// }
// },
// "spec":{
// "replicas":3
// }
// }
// }
// }
// ]
// }
// }`)
// rawResource := []byte(`{
// "apiVersion":"apps/v1",
// "kind":"Deployment",
// "metadata":{
// "name":"nginx-deployment",
// "labels":{
// "app":"nginx"
// }
// },
// "spec":{
// "replicas":3,
// "selector":{
// "matchLabels":{
// "app":"nginx"
// }
// },
// "template":{
// "metadata":{
// "labels":{
// "app":"nginx"
// }
// },
// "spec":{
// "containers":[
// {
// "name":"nginx",
// "image":"nginx:1.7.9",
// "ports":[
// {
// "containerPort":80
// }
// ]
// }
// ]
// }
// }
// }
// }
// `)
//
// var policy kyverno.ClusterPolicy
// json.Unmarshal(rawPolicy, &policy)
//
// resourceUnstructured, err := utils.ConvertToUnstructured(rawResource)
// assert.NilError(t, err)
// er := Validate(PolicyContext{Policy: policy, NewResource: *resourceUnstructured})
// assert.Assert(t, len(er.PolicyResponse.Rules) == 0)
//}
func TestValidate_image_tag_fail(t *testing.T) {
// If image tag is latest then imagepull policy needs to be checked