Skip to content

Commit

Permalink
Merge pull request #11019 from boaz0/test_cors
Browse files Browse the repository at this point in the history
Add tests to verify CORs is enabled
  • Loading branch information
openshift-merge-robot authored Jul 26, 2021
2 parents 21e1c31 + 1a188f6 commit 5ef78c0
Showing 1 changed file with 44 additions and 0 deletions.
44 changes: 44 additions & 0 deletions test/system/271-tcp-cors-server.bats
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
#!/usr/bin/env bats -*- bats -*-
#
# Tests podman system service CORS enabled
#

load helpers

SERVICE_NAME="podman_test_$(random_string)"

SERVICE_TCP_HOST="localhost"

SERVICE_FILE="$UNIT_DIR/$SERVICE_NAME.service"
SOCKET_FILE="$UNIT_DIR/$SERVICE_NAME.socket"

@test "podman system service - tcp CORS" {
skip_if_remote "system service tests are meaningless over remote"
PORT=$(( ((RANDOM<<15)|RANDOM) % 63001 + 2000 ))
run_podman system service --cors="*" tcp:$SERVICE_TCP_HOST:$PORT -t 20 &
podman_pid="$!"
sleep 5s
run curl -s --max-time 10 -vvv $SERVICE_TCP_HOST:$PORT/_ping 2>&1
is "$output" ".*< Access-Control-Allow-Origin: \*.*" "access-control-allow-origin verifies CORS is set"
kill $podman_pid
wait $podman_pid || true
}

@test "podman system service - tcp without CORS" {
skip_if_remote "system service tests are meaningless over remote"
PORT=$(( ((RANDOM<<15)|RANDOM) % 63001 + 2000 ))
run_podman system service tcp:$SERVICE_TCP_HOST:$PORT -t 20 &
podman_pid="$!"
sleep 5s
(curl -s --max-time 10 -vvv $SERVICE_TCP_HOST:$PORT/_ping 2>&1 | grep -Eq "Access-Control-Allow-Origin:") && false || true
kill $podman_pid
wait $podman_pid || true
}

@test "podman system service - CORS enabled in logs" {
skip_if_remote "system service tests are meaningless over remote"
run_podman system service --log-level="debug" --cors="*" -t 1
is "$output" ".*CORS Headers were set to \*.*" "debug log confirms CORS headers set"
}

# vim: filetype=sh

0 comments on commit 5ef78c0

Please sign in to comment.