From 029168747b8defeb0a7f76d727e060c45d61eb3f Mon Sep 17 00:00:00 2001 From: Daniel Van Der Ploeg Date: Thu, 24 Oct 2024 16:02:21 +1030 Subject: [PATCH] chore: add test workflow --- .github/workflows/test.yml | 55 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 00000000..102c300b --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,55 @@ +name: Test on Pull Request + +on: + pull_request: + branches: + - '**' # Trigger on all branches + workflow_dispatch: # Allows manual trigger from the GitHub Actions tab + +jobs: + test: + name: ⚙️ Run Tests + runs-on: ubuntu-latest + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + + - name: Setup dependency cache + uses: actions/cache@v4 + with: + path: /usr/local/share/.cache/yarn/v6 + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + + - name: Install + run: yarn install + + - name: Run Tests + run: | + yarn install + FORCE_COLOR=true + DESTINATION_BRANCH=${{ github.event.pull_request.base.ref }} # Set branch + yarn nx affected:test --base=$DESTINATION_BRANCH --ci --code-coverage --parallel --max-parallel=3 + + code-quality: + name: 🕵️‍♀️ Code Quality + runs-on: ubuntu-latest + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + + - name: Setup dependency cache + uses: actions/cache@v4 + with: + path: /usr/local/share/.cache/yarn/v6 + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + + - name: Install + run: yarn install + + - name: Code Quality Check + run: | + FORCE_COLOR=true + DESTINATION_BRANCH=${{ github.event.pull_request.base.ref }} # Set branch + yarn nx affected:lint --base=$DESTINATION_BRANCH --parallel --max-parallel=3 + yarn nx format:check --base=$DESTINATION_BRANCH --parallel --max-parallel=3 + yarn nx affected -t check-types --base=$DESTINATION_BRANCH --parallel --max-parallel=3