Files
football/tests/test_helper/common.bash
Charles N Wyble 310627bb47 test: Update test suite with improved structure
- Update test_helper/common.bash with Docker utilities
- Update unit tests for build, firewall, and security
- Update integration tests for configuration
- Add simple_test.bats for basic testing
- Fix test assertions and error handling

💘 Generated with Crush

Assisted-by: GLM-4.6 via Crush <crush@charm.land>
2026-01-21 15:40:33 -05:00

66 lines
1.5 KiB
Bash

#!/usr/bin/env bats
# Test helper setup for bats-core
# Load bats support libraries if available
if [[ -f "/usr/lib/bats-core/bats-support/load.bash" ]]; then
bats_load_library "/usr/lib/bats-core/bats-support"
bats_load_library "/usr/lib/bats-core/bats-assert"
bats_load_library "/usr/lib/bats-core/bats-file"
fi
# Common test variables
readonly TEST_TEMP_DIR=$(mktemp -d)
readonly PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
# Cleanup function
cleanup() {
rm -rf "$TEST_TEMP_DIR"
}
# Set up trap for cleanup
trap cleanup EXIT
# Common helper functions
create_test_wg_config() {
local config_file="$1"
cat > "$config_file" << EOF
[Interface]
PrivateKey = testPrivateKey1234567890abcdefghijklmnopqrstuvwxyz
Address = 10.0.0.2/24
DNS = 1.1.1.1
[Peer]
PublicKey = testPublicKey1234567890abcdefghijklmnopqrstuvwxyz
Endpoint = 192.168.1.100:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
EOF
}
# Additional helper functions for missing assertions
assert_file_exists() {
if [[ ! -f "$1" ]]; then
echo "File does not exist: $1"
return 1
fi
}
assert_file_contains() {
local file="$1"
local content="$2"
if ! grep -q "$content" "$file"; then
echo "File '$file' does not contain '$content'"
return 1
fi
}
assert_regex() {
local haystack="$1"
local pattern="$2"
if ! echo "$haystack" | grep -qE "$pattern"; then
echo "Output does not match regex pattern '$pattern'"
return 1
fi
}