katetaan puuttuva testit
This commit is contained in:
@@ -0,0 +1,79 @@
|
||||
#!/usr/bin/env bats
|
||||
|
||||
setup() {
|
||||
export CONF_FILE=$(mktemp)
|
||||
export CI_CONF_FILE="$CONF_FILE"
|
||||
}
|
||||
|
||||
teardown() {
|
||||
rm -f "$CONF_FILE"
|
||||
}
|
||||
|
||||
@test "missing config file → exit 1" {
|
||||
export CI_CONF_FILE="/nonexistent/path/$(date +%s).conf"
|
||||
run bash scripts/ci-validate.sh
|
||||
[ "$status" -eq 1 ]
|
||||
[[ "$output" == *"ERROR"* ]]
|
||||
}
|
||||
|
||||
@test "empty value in config → exit 1" {
|
||||
cat > "$CONF_FILE" <<EOF
|
||||
SOME_KEY=
|
||||
EOF
|
||||
run bash scripts/ci-validate.sh
|
||||
[ "$status" -eq 1 ]
|
||||
[[ "$output" == *"empty"* ]]
|
||||
}
|
||||
|
||||
@test "invalid URL in config → exit 1" {
|
||||
cat > "$CONF_FILE" <<EOF
|
||||
API_URL=not-a-url
|
||||
EOF
|
||||
run bash scripts/ci-validate.sh
|
||||
[ "$status" -eq 1 ]
|
||||
[[ "$output" == *"URL"* ]]
|
||||
}
|
||||
|
||||
@test "missing GITEA_TOKEN secret → exit 1" {
|
||||
cat > "$CONF_FILE" <<EOF
|
||||
SOME_KEY=ok
|
||||
EOF
|
||||
unset GITEA_TOKEN
|
||||
run bash scripts/ci-validate.sh
|
||||
[ "$status" -eq 1 ]
|
||||
[[ "$output" == *"GITEA_TOKEN"* ]]
|
||||
}
|
||||
|
||||
@test "missing GIT_PAGES_PUBLISH_TOKEN secret → exit 1" {
|
||||
cat > "$CONF_FILE" <<EOF
|
||||
SOME_KEY=ok
|
||||
EOF
|
||||
export GITEA_TOKEN="sometoken"
|
||||
unset GIT_PAGES_PUBLISH_TOKEN
|
||||
run bash scripts/ci-validate.sh
|
||||
[ "$status" -eq 1 ]
|
||||
[[ "$output" == *"GIT_PAGES_PUBLISH_TOKEN"* ]]
|
||||
}
|
||||
|
||||
@test "valid config and all secrets → exit 0" {
|
||||
cat > "$CONF_FILE" <<EOF
|
||||
API_URL=https://example.com
|
||||
ANOTHER=https://test.fi
|
||||
EOF
|
||||
export GITEA_TOKEN="sometoken"
|
||||
export GIT_PAGES_PUBLISH_TOKEN="sometoken"
|
||||
run bash scripts/ci-validate.sh
|
||||
[ "$status" -eq 0 ]
|
||||
}
|
||||
|
||||
@test "comment and blank lines are ignored → exit 0" {
|
||||
cat > "$CONF_FILE" <<EOF
|
||||
# this is a comment
|
||||
|
||||
VALID_URL=https://example.com
|
||||
EOF
|
||||
export GITEA_TOKEN="sometoken"
|
||||
export GIT_PAGES_PUBLISH_TOKEN="sometoken"
|
||||
run bash scripts/ci-validate.sh
|
||||
[ "$status" -eq 0 ]
|
||||
}
|
||||
Reference in New Issue
Block a user