aravagarwal/CodeCloakPII
0
1name: CI2 3on:4 push:5 branches: ["*"]6 paths:7 - grammar.js8 - src/**9 - test/**10 - bindings/**11 - binding.gyp12 pull_request:13 paths:14 - grammar.js15 - src/**16 - test/**17 - bindings/**18 - binding.gyp19 20concurrency:21 group: ${{github.workflow}}-${{github.ref}}22 cancel-in-progress: true23 24jobs:25 test:26 name: Test parser27 runs-on: ${{matrix.os}}28 strategy:29 fail-fast: false30 matrix:31 os: [ubuntu-latest, windows-latest, macos-14]32 steps:33 - name: Set up the repo34 uses: tree-sitter/parser-setup-action@v1.135 with:36 node-version: ${{vars.NODE_VERSION}}37 - name: Set up examples38 run: |-39 git clone https://github.com/numpy/numpy examples/numpy --depth=1 --filter=blob:none40 git clone https://github.com/django/django examples/django --depth=1 --filter=blob:none41 git clone https://github.com/pallets/flask examples/flask --depth=1 --filter=blob:none42 git clone https://github.com/python/cpython examples/cpython --depth=1 --filter=blob:none43 - name: Run tests44 uses: tree-sitter/parser-test-action@v1.145 with:46 lint: true47 test-library: ${{runner.os == 'Linux'}}48 examples: |49 examples/**/*.py50 !examples/cpython/Lib/test/badsyntax_3131.py51 !examples/cpython/Lib/test/badsyntax_future8.py52 !examples/cpython/Lib/test/test_compile.py53 !examples/cpython/Tools/build/generate_re_casefix.py54 fuzz:55 name: Fuzz parser56 runs-on: ubuntu-latest57 steps:58 - name: Checkout repository59 uses: actions/checkout@v460 with:61 fetch-depth: 262 - name: Check for scanner changes63 id: scanner-changes64 run: |-65 if git diff --quiet HEAD^ -- src/scanner.c; then66 printf 'changed=false\n' >> "$GITHUB_OUTPUT"67 else68 printf 'changed=true\n' >> "$GITHUB_OUTPUT"69 fi70 - name: Fuzz parser71 uses: tree-sitter/fuzz-action@v472 if: steps.scanner-changes.outputs.changed == 'true'73 