From e7361c60d5dab35f763c2e6b8136bfa4f36932dc Mon Sep 17 00:00:00 2001 From: Jacobo de Vera Date: Mon, 15 Jul 2024 23:03:40 +0100 Subject: [PATCH] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20Create=20Github=20Action?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build_and_test.yml | 27 +++++++++++++++++++++++++++ test/_build.bats | 14 +++++++++++++- test/sys.bats | 2 +- 3 files changed, 41 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/build_and_test.yml diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml new file mode 100644 index 0000000..414b380 --- /dev/null +++ b/.github/workflows/build_and_test.yml @@ -0,0 +1,27 @@ +name: Build and Test + +on: + push: + branches: [ "main" ] + pull_request: + branches: [ "main" ] +env: + TERM: linux + +jobs: + linux-tests: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + submodules: 'recursive' + fetch-depth: 0 + - name: Checks + run: make check + - name: Run tests (as root) + run: | + sudo make test + - name: Compile to a file + run: make build + - name: Run checks on the single file + run: make distcheck diff --git a/test/_build.bats b/test/_build.bats index 7d44394..bb4eb91 100755 --- a/test/_build.bats +++ b/test/_build.bats @@ -5,7 +5,19 @@ setup_file() { PROJECT_ROOT="$( cd "$( dirname "$BATS_TEST_FILENAME" )/.." >/dev/null 2>&1 && pwd )" export JDVLIB_COMPILED_PATH=$BATS_FILE_TMPDIR/jdvlib.sh pushd "$PROJECT_ROOT" > /dev/null || return 1 - "$PROJECT_ROOT/compile.sh" lib "${JDVLIB_COMPILED_PATH}" + { + echo "JDVLIB_COMPILED_PATH: ${JDVLIB_COMPILED_PATH}" + echo "Check if $BATS_FILE_TMPDIR exists:" + if [[ -d "$BATS_FILE_TMPDIR" ]]; then + echo " ✔ $BATS_FILE_TMPDIR exists" + else + echo " ✗ $BATS_FILE_TMPDIR does not exist" + fi + echo "PROJECT_ROOT: ${PROJECT_ROOT}" + echo "CONTENTS:" + ls -l + } | sed 's/^/# /' >&3 + "$BASH" ./compile.sh lib "${JDVLIB_COMPILED_PATH}" popd > /dev/null || return 1 } diff --git a/test/sys.bats b/test/sys.bats index 8bbff0f..e952288 100755 --- a/test/sys.bats +++ b/test/sys.bats @@ -337,7 +337,7 @@ fake_uname() { user=test_user user::create "$user" - register_teardown "userdel $user" + register_teardown "userdel -f $user" run sys::run_as root whoami assert_success