aboutsummaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@users.noreply.github.com>2024-06-20 15:10:56 -0400
committerGitHub <noreply@github.com>2024-06-20 15:10:56 -0400
commit931ee28eb9c5b5e3c2b0d3008f5f65d810dc9b0c (patch)
tree5dbcccffd509fa71a99c351ed4628ed0841e1e46 /.github
parent11aa1d44d95da221073e512fbec3bbccc0f1a46b (diff)
downloadstasis-931ee28eb9c5b5e3c2b0d3008f5f65d810dc9b0c.tar.gz
Unit tests (#6)
* Initial commit of unit tests [WIP] * Address shortcomings and bugs flushed out by unit tests * Enable unit testing in CI workflow * Enable verbose ctests * Handle lack of __FILE_NAME__ define * Only podman support `run --arch` argument * Skip docker build testing if CI system cannot pull an image * Remove errant call to puts() * Identify local repo user * Fix missing xmllint * NULL terminate arrays * Fix filename assignment in is_url mode * Break loop when expected lines are exhausted * strcmp_array expects NULL terminated array. Iterating by size in this case passes NULL to strcmp leading to an invalid read * Remove debug printf statements * Disable a few warnings for tests * Workaround for ctest junit xml truncation * Update checkout@v4 * Prevent false-positive result * Return zero on error * Fix strlist_remove function * Value argument can be constant * Fix test to match changes to startswith and endswith * Add test_ini.c * Fix redaction code to accept NULL pointers in array * And let the caller specify the length of the array of strings to redact. * Redactions now occur directly on authentication strings rather than their command line arguments * Fix BUILD_TESTING_DEBUG * Adds missing -D argument
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/cmake-multi-platform.yml12
1 files changed, 6 insertions, 6 deletions
diff --git a/.github/workflows/cmake-multi-platform.yml b/.github/workflows/cmake-multi-platform.yml
index 61ed38b..6d4709a 100644
--- a/.github/workflows/cmake-multi-platform.yml
+++ b/.github/workflows/cmake-multi-platform.yml
@@ -29,7 +29,7 @@ jobs:
c_compiler: gcc
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
- name: Set reusable strings
id: strings
@@ -40,19 +40,19 @@ jobs:
- name: Install Linux dependencies
if: matrix.os == 'ubuntu-latest'
run: >
- sudo apt install -y libcurl4-openssl-dev libxml2-dev rsync
+ sudo apt install -y libcurl4-openssl-dev libxml2-dev libxml2-utils rsync
- name: Configure CMake
run: >
cmake -B ${{ steps.strings.outputs.build-output-dir }}
-DCMAKE_C_COMPILER=${{ matrix.c_compiler }}
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
+ -DBUILD_TESTING=ON
-S ${{ github.workspace }}
- name: Build
run: cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build_type }}
- # TODO: Write ctests
- #- name: Test
- # working-directory: ${{ steps.strings.outputs.build-output-dir }}
- # run: ctest --build-config ${{ matrix.build_type }}
+ - name: Test
+ working-directory: ${{ steps.strings.outputs.build-output-dir }}
+ run: ctest -V --build-config ${{ matrix.build_type }} --output-junit results.xml --test-output-size-passed 65536 --test-output-size-failed 65536