#!/usr/bin/env bats # Integration tests for complete workflows # Add bats library to BATS_LIB_PATH load 'bats-support/load' load 'bats-assert/load' load 'bats-file/load' load '../test_helper/common.bash' @test "run.sh script has correct permissions" { assert [ -x "${PROJECT_ROOT}/run.sh" ] } @test "Dockerfile contains all required packages" { assert_file_contains "${PROJECT_ROOT}/Dockerfile" "live-build" assert_file_contains "${PROJECT_ROOT}/Dockerfile" "bats" assert_file_contains "${PROJECT_ROOT}/Dockerfile" "shellcheck" assert_file_contains "${PROJECT_ROOT}/Dockerfile" "nftables" } @test "preseed configuration contains required settings" { assert_file_contains "${PROJECT_ROOT}/config/preseed.cfg" "US/Chicago" assert_file_contains "${PROJECT_ROOT}/config/preseed.cfg" "kneluser" assert_file_contains "${PROJECT_ROOT}/config/preseed.cfg" "wireguard" assert_file_contains "${PROJECT_ROOT}/config/preseed.cfg" "sudo" } @test "package list includes minimal required packages" { assert_file_contains "${PROJECT_ROOT}/config/package-lists/knel-football.list.chroot" "icewm" assert_file_contains "${PROJECT_ROOT}/config/package-lists/knel-football.list.chroot" "remmina" assert_file_contains "${PROJECT_ROOT}/config/package-lists/knel-football.list.chroot" "wireguard" assert_file_contains "${PROJECT_ROOT}/config/package-lists/knel-football.list.chroot" "nftables" }