Skip to content

Pass main or test options when generating c code #2545

Pass main or test options when generating c code

Pass main or test options when generating c code #2545

Workflow file for this run

jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: "actions/[email protected]"
- uses: "coursier/cache-action@v2"
- name: "java ${{matrix.java}} setup"
uses: "olafurpg/setup-scala@v13"
with:
java-version: "${{matrix.java}}"
- name: "run JVM tests"
run: |
sbt "++${{matrix.scala}}; coreJVM/test; cli/test; doc; paradox"
./test_cli.sh
strategy:
matrix:
java:
- '8'
- '11'
scala:
- '2.13.15'
timeout-minutes: 30
testPY:
runs-on: ubuntu-latest
steps:
- uses: "actions/[email protected]"
- uses: "coursier/cache-action@v2"
- name: "java ${{matrix.java}} setup"
uses: "olafurpg/setup-scala@v13"
with:
java-version: "${{matrix.java}}"
- name: "python setup"
uses: "actions/setup-python@v2"
with:
python-version: "${{matrix.python}}"
- name: "build assembly"
run: "sbt \"++${{matrix.scala}}; cli/assembly\""
- name: "generate python code"
run: "./bosatsuj transpile --input_dir test_workspace/ --package_root test_workspace/ --outdir pyout python --externals test_workspace/Prog.bosatsu_externals --evaluators test_workspace/Prog.bosatsu_eval"
- name: "run python tests"
run: "PYTHONPATH=$PYTHONPATH:$(pwd)/test_workspace:$(pwd)/pyout python3 -m unittest discover pyout -v --pattern \"*.py\""
strategy:
matrix:
java:
- '11'
scala:
- '2.13.15'
python:
- '3.9'
timeout-minutes: 30
testJS:
runs-on: ubuntu-latest
steps:
- uses: "actions/[email protected]"
- uses: "coursier/cache-action@v2"
- name: "java ${{matrix.java}} setup"
uses: "olafurpg/setup-scala@v13"
with:
java-version: "${{matrix.java}}"
- name: "run coreJS tests"
run: |
sbt "++${{matrix.scala}}; coreJS/test; jsapiJS/compile"
sbt "++${{matrix.scala}}; jsuiJS/test"
strategy:
matrix:
java:
- '11'
scala:
- '2.13.15'
timeout-minutes: 30
testWithCoverageReport:
runs-on: ubuntu-latest
steps:
- uses: "actions/[email protected]"
- uses: "coursier/cache-action@v2"
- name: "java ${{matrix.java}} setup"
uses: "olafurpg/setup-scala@v13"
with:
java-version: "${{matrix.java}}"
- name: "run tests with coverage"
run: |
sbt "coverage; clean; coreJVM/test; cli/test; coverageReport"
bash <(curl -s https://codecov.io/bash)
strategy:
matrix:
java:
- '8'
timeout-minutes: 30
buildWithGraal:
runs-on: ubuntu-latest
steps:
- uses: "actions/[email protected]"
- uses: "coursier/cache-action@v2"
- name: "graalvm setup"
uses: "olafurpg/setup-scala@v13"
with:
java-version: "${{matrix.java}}"
- name: "build native image"
run: |
sbt "++${{matrix.scala}}; cli/nativeImage"
cp cli/target/native-image/bosatsu-cli bosatsu
- name: "run bosatsu tests"
run: |
./bosatsu test --input_dir test_workspace/ --package_root test_workspace/
strategy:
matrix:
scala:
- '2.13.15'
java:
- '8'
testC:
runs-on: ubuntu-latest
strategy:
matrix:
scala:
- '2.13.15'
java:
- '8'
steps:
- uses: "actions/[email protected]"
- name: "test runtime code"
run: |
cd c_runtime
make && git diff --quiet
./test
cd ..
- name: "build assembly"
run: "sbt \"++${{matrix.scala}}; cli/assembly\""
- name: "generate c code"
run: "./bosatsuj transpile --input_dir test_workspace/ --package_root test_workspace/ --outdir c_out c --test"
- name: "compile generated c code"
run: |
cp c_runtime/* c_out
cd c_out
gcc -c output.c
timeout-minutes: 30
name: ci
on:
pull_request: {}