From 38efb58446c71cc38c602e1132a179bf7bb91180 Mon Sep 17 00:00:00 2001 From: Ava Affine Date: Thu, 17 Jul 2025 14:52:47 -0700 Subject: [PATCH] add forgejo CI Signed-off-by: Ava Affine --- .forgejo/workflows/test.yml | 80 +++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 .forgejo/workflows/test.yml diff --git a/.forgejo/workflows/test.yml b/.forgejo/workflows/test.yml new file mode 100644 index 0000000..da25a67 --- /dev/null +++ b/.forgejo/workflows/test.yml @@ -0,0 +1,80 @@ +name: "per-push tests" + +on: + push: + branches: + - main + pull_request: + pull_request_target: + types: + - opened + - synchronized + - reopened + +jobs: + build: + runs-on: docker + steps: + - name: checkout code + uses: actions/checkout@v4 + - name: setup rust toolchain + uses: msrd0/rust-toolchain@nightly + - name: compile components + run: | + cargo build --lib + cargo build --bin decomposer + + test-frontend: + needs: [build] + runs-on: docker + steps: + - name: checkout code + uses: actions/checkout@v4 + - name: setup rust toolchain + uses: msrd0/rust-toolchain@nightly + - name: test lexer + run: cargo test lexer + - name: test parser + run: cargo test parser + + timed-decomposer-parse: + needs: [test-frontend] + runs-on: docker + steps: + - name: checkout code + uses: actions/checkout@v4 + - name: setup rust toolchain + uses: msrd0/rust-toolchain@nightly + - name: build decomposer + run: cargo build --bin decomposer + - name: download test scheme source + run: curl https://raw.githubusercontent.com/ecraven/r7rs-benchmarks/refs/heads/master/src/compiler.scm --output test.scm + - name: time parsing of test source + run: cargo run --bin decomposer -- -t test.scm + + test-utility: + needs: [build] + runs-on: docker + steps: + - name: checkout code + uses: actions/checkout@v4 + - name: setup rust toolchain + uses: msrd0/rust-toolchain@nightly + - name: test number package + run: cargo test number + - name: test double stack data type + run: cargo test stackstack + - name: test hashmap data type + run: cargo test hmap + + test-backend: + needs: [build] + runs-on: docker + steps: + - name: checkout code + uses: actions/checkout@v4 + - name: setup rust toolchain + uses: msrd0/rust-toolchain@nightly + - name: test instruction decoding + run: cargo test util # this is instruction decoding code +