Add bb unit & integration tests to CI #56
Workflow file for this run
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
name: CI | |
on: | |
push: | |
branches: | |
- "*" | |
pull_request: | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v2 | |
- name: Checkout current branch | |
uses: actions/checkout@v3 | |
with: | |
ref: master | |
- name: Set up JDK 8 | |
uses: actions/setup-java@v1 | |
with: | |
java-version: 8 | |
- name: Change to repo directory | |
run: cd ${GITHUB_WORKSPACE} | |
- name: Install Leiningen | |
run: | | |
curl https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein > lein | |
mv lein /usr/local/bin/ | |
chmod a+x /usr/local/bin/lein | |
- name: Install dependencies | |
run: lein deps | |
- name: Run Clojure unit tests | |
run: lein clj-test-pass-unit | |
- name: Run ClojureScript unit tests | |
run: lein cljs-test-pass-unit | |
- name: Run Clojure integration tests | |
run: lein clj-test-pass-integration | |
- name: Run ClojureScript integration tests | |
run: lein cljs-test-pass-integration | |
- name: Install ripgrep | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y ripgrep | |
- name: Run failing tests | |
run: | | |
(! lein clj-test-fail) | tee /dev/tty | rg --quiet --multiline '25 assertions.*\n.*25 failures' | |
lein cljs-test-fail | tee /dev/tty | rg --quiet --multiline '25 assertions.*\n.*25 failures' | |
- name: Install Lumo | |
run: npm install -g --unsafe-perm lumo-cljs | |
- name: Test JavaScript JS using Lumo | |
run: lein tach lumo | |
- name: Create code coverage report | |
run: CLOVERAGE_VERSION=1.1.1 lein coverage | |
- name: Upload code coverage report to Codecov | |
uses: codecov/codecov-action@v3 | |
with: | |
file: target/coverage/codecov.json |