this repo has no description

Split interpreter and compiler tests

authored by bernsteinbear.com and committed by

Max Bernstein e144b73f 365f6272

+17 -8
+17 -8
.github/workflows/ci.yml
··· 29 29 - run: poetry run ruff check scrapscript.py 30 30 - run: poetry run ruff format --check scrapscript.py 31 31 - run: poetry run mypy --strict scrapscript.py 32 - run_unit_tests: 32 + run_interpreter_unit_tests: 33 33 strategy: 34 34 matrix: 35 35 PYTHON: [python3.8, python3.9, python3.10, python3.11, python3.12, python3.13] 36 - CC: [gcc, clang, tcc] 37 - USE_STATIC_HEAP: ["-DSTATIC_HEAP", ""] 38 36 runs-on: ubuntu-latest 39 37 steps: 40 38 - uses: actions/checkout@v4 ··· 44 42 run: sudo apt update 45 43 - name: Install Python 46 44 run: sudo apt install --yes ${{matrix.PYTHON}} 47 - - name: Install compiler 48 - run: sudo apt install --yes ${{matrix.CC}} 49 - - name: Install Valgrind 50 - run: sudo apt install --yes valgrind 51 45 - name: Run interpreter tests 52 46 run: ${{matrix.PYTHON}} scrapscript.py test 47 + run_compiler_unit_tests: 48 + strategy: 49 + matrix: 50 + PYTHON: [python3.8, python3.9, python3.10, python3.11, python3.12, python3.13] 51 + CC: [gcc, clang, tcc] 52 + USE_STATIC_HEAP: ["-DSTATIC_HEAP", ""] 53 + runs-on: ubuntu-latest 54 + steps: 55 + - uses: actions/checkout@v4 56 + - name: Get deadsnakes repo 57 + run: sudo add-apt-repository --yes ppa:deadsnakes/ppa 58 + - name: Update local package lists 59 + run: sudo apt update 60 + - name: Install deps 61 + run: sudo apt install --yes ${{matrix.PYTHON}} ${{matrix.CC}} valgrind 53 62 - name: Run compiler tests 54 63 run: CC=${{matrix.CC}} CFLAGS="${{matrix.USE_STATIC_HEAP}}" ${{matrix.PYTHON}} compiler_tests.py 55 64 - name: Run compiler tests with ASAN ··· 89 98 if: | 90 99 github.repository == 'tekknolagi/scrapscript' && 91 100 github.ref == format('refs/heads/{0}', github.event.repository.default_branch) 92 - needs: [run_lint, run_unit_tests] 101 + needs: [run_lint, run_interpreter_unit_tests, run_compiler_unit_tests] 93 102 steps: 94 103 - uses: actions/checkout@v4 95 104 - uses: superfly/flyctl-actions/setup-flyctl@master