diff --git a/.github/workflows/valgrind.yml b/.github/workflows/valgrind.yml new file mode 100644 index 0000000..3409e7d --- /dev/null +++ b/.github/workflows/valgrind.yml @@ -0,0 +1,33 @@ +name: Valgrind + +on: + workflow_dispatch: + push: + branches: [ master ] + pull_request: + +jobs: + valgrind-check: + name: Valgrind Memory Check + runs-on: ubuntu-latest + + steps: + - name: Checkout Code + uses: actions/checkout@v3 + + - name: Install Dependencies + run: | + sudo apt-get update + sudo apt-get install -y build-essential cmake valgrind + + - name: Build Project + run: | + mkdir -p build + cd build + cmake -DCMAKE_BUILD_TYPE=Debug .. + make + + - name: Run Tests with Valgrind + run: | + cd build + valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1 tests/test_src