-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
e4382c1
commit 03a96c5
Showing
3 changed files
with
88 additions
and
20 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
# Tests on every push (excluding main branch) and pull request | ||
|
||
name: Test | ||
|
||
on: | ||
push: | ||
branches-ignore: | ||
- main | ||
pull_request: | ||
|
||
jobs: | ||
test-grammar: | ||
name: Test grammar | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up JDK | ||
uses: actions/setup-java@v4 | ||
with: | ||
distribution: temurin | ||
java-version: 17 | ||
cache: "maven" # caching Maven dependencies | ||
cache-dependency-path: "pom.xml" | ||
- name: Build with Maven | ||
run: mvn -B package --file pom.xml | ||
|
||
create-test-java-parser: | ||
name: Create and test Java parser | ||
needs: test-grammar | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up JDK | ||
uses: actions/setup-java@v4 | ||
with: | ||
distribution: temurin | ||
java-version: 17 | ||
cache: "maven" # caching Maven dependencies | ||
cache-dependency-path: "parsers/java/pom.xml" | ||
- name: Build Java parser | ||
run: mvn -B package --file ${{ github.workspace }}/parsers/java/pom.xml && mv ${{ github.workspace }}/parsers/java/target/yarspg-java-parser*.jar ${{ github.workspace }}/parsers/java/target/yarspg-java-parser.jar | ||
- name: Test Java parser | ||
run: | | ||
java -jar ${{ github.workspace }}/parsers/java/target/yarspg-java-parser.jar ${{ github.workspace }}/yarspg/examples/test-example.yarspg | ||
create-test-python-parser: | ||
name: Create and test Python parser | ||
needs: test-grammar | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.x" | ||
cache: "pip" # caching pip dependencies | ||
cache-dependency-path: "parsers/python/requirements.txt" | ||
- name: Install pip dependencies | ||
run: python -m pip install -r ${{ github.workspace }}/parsers/python/requirements.txt | ||
- name: Download the ANTRL4 Java binaries | ||
run: curl -O https://www.antlr.org/download/antlr-4.13.1-complete.jar | ||
- name: Generate the Python parser | ||
run: | | ||
java -jar antlr-4.13.1-complete.jar -Dlanguage=Python3 -o ${{ github.workspace }}/parsers/python ${{ github.workspace }}/yarspg/YARSpg.g4 | ||
zip -j ${{ github.workspace }}/parsers/python/yarspg-python-parser.zip ${{ github.workspace }}/parsers/python/* | ||
- name: Test Python parser | ||
run: python ${{ github.workspace }}/parsers/python/yarspg_python_parser.py ${{ github.workspace }}/yarspg/examples/test-example.yarspg |