26 lines
1.4 KiB
Bash
26 lines
1.4 KiB
Bash
unittest_input_dir="${cases_dir}/unittest/input"
|
|
helmfile_real="$(pwd)/${helmfile}"
|
|
HELM_UNITTEST_VERSION="${HELM_UNITTEST_VERSION:-1.0.3}"
|
|
|
|
# Ensure helm-unittest plugin is installed (matching plugin install pattern from run.sh)
|
|
info "Ensuring helm-unittest plugin v${HELM_UNITTEST_VERSION} is installed"
|
|
${helm} plugin ls | grep "^unittest" || ${helm} plugin install https://github.com/helm-unittest/helm-unittest --version v${HELM_UNITTEST_VERSION} ${PLUGIN_INSTALL_FLAGS} || fail "Could not install helm-unittest plugin"
|
|
|
|
test_start "helmfile unittest - runs unit tests on releases with unitTests defined"
|
|
cd "${unittest_input_dir}"
|
|
${helmfile_real} unittest || fail "helmfile unittest should succeed"
|
|
cd -
|
|
test_pass "helmfile unittest - runs unit tests on releases with unitTests defined"
|
|
|
|
test_start "helmfile unittest - with selector targeting release without unitTests"
|
|
cd "${unittest_input_dir}"
|
|
${helmfile_real} -l name=no-tests-app unittest || fail "helmfile unittest should succeed for releases without unitTests (skips them)"
|
|
cd -
|
|
test_pass "helmfile unittest - with selector targeting release without unitTests"
|
|
|
|
test_start "helmfile unittest - with selector targeting release with unitTests"
|
|
cd "${unittest_input_dir}"
|
|
${helmfile_real} -l name=test-app unittest || fail "helmfile unittest should succeed for releases with unitTests"
|
|
cd -
|
|
test_pass "helmfile unittest - with selector targeting release with unitTests"
|