mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-21 10:51:29 +00:00
Expand newly created cmd-test
Modify newly created cmd-test to work for both client-side and server-side validation
This commit is contained in:
parent
fe3772890f
commit
0bb1a32411
@ -154,6 +154,27 @@ run_kubectl_create_kustomization_directory_tests() {
|
|||||||
set +o errexit
|
set +o errexit
|
||||||
}
|
}
|
||||||
|
|
||||||
|
has_one_of_error_message() {
|
||||||
|
local message=$1
|
||||||
|
local match1=$2
|
||||||
|
local match2=$3
|
||||||
|
|
||||||
|
if (grep -q "${match1}" <<< "${message}") || (grep -q "${match2}" <<< "${message}"); then
|
||||||
|
echo "Successful"
|
||||||
|
echo "message:${message}"
|
||||||
|
echo "has either:${match1}"
|
||||||
|
echo "or:${match2}"
|
||||||
|
return 0
|
||||||
|
else
|
||||||
|
echo "FAIL!"
|
||||||
|
echo "message:${message}"
|
||||||
|
echo "has neither:${match1}"
|
||||||
|
echo "nor:${match2}"
|
||||||
|
caller
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
# Runs tests related to kubectl create --validate
|
# Runs tests related to kubectl create --validate
|
||||||
run_kubectl_create_validate_tests() {
|
run_kubectl_create_validate_tests() {
|
||||||
set -o nounset
|
set -o nounset
|
||||||
@ -165,7 +186,7 @@ run_kubectl_create_validate_tests() {
|
|||||||
kube::log::status "Testing kubectl create --validate=true"
|
kube::log::status "Testing kubectl create --validate=true"
|
||||||
# create and verify
|
# create and verify
|
||||||
output_message=$(! kubectl create -f hack/testdata/invalid-deployment-unknown-and-duplicate-fields.yaml --validate=true 2>&1)
|
output_message=$(! kubectl create -f hack/testdata/invalid-deployment-unknown-and-duplicate-fields.yaml --validate=true 2>&1)
|
||||||
kube::test::if_has_string "${output_message}" 'error validating data'
|
has_one_of_error_message "${output_message}" 'strict decoding error' 'error validating data'
|
||||||
|
|
||||||
## test --validate=false
|
## test --validate=false
|
||||||
kube::log::status "Testing kubectl create --validate=false"
|
kube::log::status "Testing kubectl create --validate=false"
|
||||||
@ -179,7 +200,7 @@ run_kubectl_create_validate_tests() {
|
|||||||
kube::log::status "Testing kubectl create --validate=strict"
|
kube::log::status "Testing kubectl create --validate=strict"
|
||||||
# create and verify
|
# create and verify
|
||||||
output_message=$(! kubectl create -f hack/testdata/invalid-deployment-unknown-and-duplicate-fields.yaml --validate=strict 2>&1)
|
output_message=$(! kubectl create -f hack/testdata/invalid-deployment-unknown-and-duplicate-fields.yaml --validate=strict 2>&1)
|
||||||
kube::test::if_has_string "${output_message}" 'error validating data'
|
has_one_of_error_message "${output_message}" 'strict decoding error' 'error validating data'
|
||||||
|
|
||||||
## test --validate=warn
|
## test --validate=warn
|
||||||
kube::log::status "Testing kubectl create --validate=warn"
|
kube::log::status "Testing kubectl create --validate=warn"
|
||||||
@ -201,7 +222,7 @@ run_kubectl_create_validate_tests() {
|
|||||||
kube::log::status "Testing kubectl create"
|
kube::log::status "Testing kubectl create"
|
||||||
# create and verify
|
# create and verify
|
||||||
output_message=$(! kubectl create -f hack/testdata/invalid-deployment-unknown-and-duplicate-fields.yaml 2>&1)
|
output_message=$(! kubectl create -f hack/testdata/invalid-deployment-unknown-and-duplicate-fields.yaml 2>&1)
|
||||||
kube::test::if_has_string "${output_message}" 'error validating data'
|
has_one_of_error_message "${output_message}" 'strict decoding error' 'error validating data'
|
||||||
|
|
||||||
## test invalid validate value
|
## test invalid validate value
|
||||||
kube::log::status "Testing kubectl create --validate=foo"
|
kube::log::status "Testing kubectl create --validate=foo"
|
||||||
|
Loading…
Reference in New Issue
Block a user