Improve test setup with test_helper.bash

This commit is contained in:
Deploy Bot
2025-07-17 21:05:35 -04:00
parent 1292cefa1e
commit 7c5c56812a
3 changed files with 43 additions and 6 deletions

View File

@@ -42,9 +42,27 @@ jobs:
sudo ./bats-core/install.sh /usr/local sudo ./bats-core/install.sh /usr/local
fi fi
# Verify BATS helpers are available # Install BATS helpers
mkdir -p tests/test_helper
# Install bats-support
if [ ! -d "tests/test_helper/bats-support" ]; then
git clone --depth 1 https://github.com/bats-core/bats-support.git tests/test_helper/bats-support
fi
# Install bats-assert
if [ ! -d "tests/test_helper/bats-assert" ]; then
git clone --depth 1 https://github.com/bats-core/bats-assert.git tests/test_helper/bats-assert
fi
# Install bats-file
if [ ! -d "tests/test_helper/bats-file" ]; then
git clone --depth 1 https://github.com/bats-core/bats-file.git tests/test_helper/bats-file
fi
# Verify BATS helpers were installed
if [ ! -d "tests/test_helper/bats-support" ] || [ ! -d "tests/test_helper/bats-assert" ] || [ ! -d "tests/test_helper/bats-file" ]; then if [ ! -d "tests/test_helper/bats-support" ] || [ ! -d "tests/test_helper/bats-assert" ] || [ ! -d "tests/test_helper/bats-file" ]; then
echo "Error: BATS helper libraries not found in test_helper directory" echo "Error: Failed to install BATS helper libraries"
ls -la tests/test_helper/ ls -la tests/test_helper/
exit 1 exit 1
fi fi

View File

@@ -1,9 +1,7 @@
#!/usr/bin/env bats #!/usr/bin/env bats
# Load BATS helper libraries # Load test helper
load 'test_helper/bats-support/load' load 'test_helper'
load 'test_helper/bats-assert/load'
load 'test_helper/bats-file/load'
# Simple test for parse_volume function # Simple test for parse_volume function
@test "parse_volume should parse volume string correctly" { @test "parse_volume should parse volume string correctly" {

21
tests/test_helper.bash Normal file
View File

@@ -0,0 +1,21 @@
#!/usr/bin/env bash
# Set the path to the BATS helpers
export BATS_HELPER_PATH="${BATS_TEST_DIRNAME}/test_helper"
# Load BATS helper libraries
load "${BATS_HELPER_PATH}/bats-support/load.bash"
load "${BATS_HELPER_PATH}/bats-assert/load.bash"
load "${BATS_HELPER_PATH}/bats-file/load.bash"
# Setup function that runs before each test
setup() {
# Add any test setup code here
:
}
# Teardown function that runs after each test
teardown() {
# Add any test teardown code here
:
}