From 66e58ef111cc6fa6d9caa2f6a285402e32bdb12c Mon Sep 17 00:00:00 2001 From: Timo De Meyst Date: Tue, 25 Mar 2025 22:13:53 +0100 Subject: [PATCH 1/2] actions: testing opgesplitst frontend en backend worden nu apart getest --- .github/workflows/backend-testing.yml | 33 ++++++++++++++++++++++++++ .github/workflows/frontend-testing.yml | 32 +++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 .github/workflows/backend-testing.yml create mode 100644 .github/workflows/frontend-testing.yml diff --git a/.github/workflows/backend-testing.yml b/.github/workflows/backend-testing.yml new file mode 100644 index 00000000..caec6c07 --- /dev/null +++ b/.github/workflows/backend-testing.yml @@ -0,0 +1,33 @@ +# This workflow will do a clean installation of node dependencies, cache/restore them, run backend tests across different versions of node (here 22.x) +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs + +name: Backend Testing + +on: + push: + branches: [ "dev" ] + pull_request: + branches: [ "dev" ] + types: ["synchronize", "ready_for_review", "opened", "reopened"] + + +jobs: + test: + name: Run backend unit tests + if: '! github.event.pull_request.draft' + runs-on: [self-hosted, Linux, X64] + + strategy: + matrix: + node-version: [22.x] + # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ + + steps: + - uses: actions/checkout@v4 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + cache: 'npm' + - run: npm ci + - run: npm run test:unit -w backend diff --git a/.github/workflows/frontend-testing.yml b/.github/workflows/frontend-testing.yml new file mode 100644 index 00000000..825065be --- /dev/null +++ b/.github/workflows/frontend-testing.yml @@ -0,0 +1,32 @@ +# This workflow will do a clean installation of node dependencies, cache/restore them, run frontend tests across different versions of node (here 22.x) +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs + +name: Frontend Testing + +on: + push: + branches: [ "dev" ] + pull_request: + branches: [ "dev" ] + types: ["synchronize", "ready_for_review", "opened", "reopened"] + +jobs: + test: + name: Run frontend unit tests + if: '! github.event.pull_request.draft' + runs-on: [self-hosted, Linux, X64] + + strategy: + matrix: + node-version: [22.x] + # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ + + steps: + - uses: actions/checkout@v4 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + cache: 'npm' + - run: npm ci + - run: npm run test:unit -w frontend From b10f967eedef4c1355480d719fc3a47a7600ca04 Mon Sep 17 00:00:00 2001 From: Timo De Meyst Date: Tue, 25 Mar 2025 22:14:41 +0100 Subject: [PATCH 2/2] actions: gebruik van paths bij testing testing workflows gebruikt paths om enkel te testen als er veranderingen zijn gemaakt die invloed hebben op de testen --- .github/workflows/backend-testing.yml | 12 ++++++++++++ .github/workflows/frontend-testing.yml | 22 ++++++++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/.github/workflows/backend-testing.yml b/.github/workflows/backend-testing.yml index caec6c07..0d0b1f3f 100644 --- a/.github/workflows/backend-testing.yml +++ b/.github/workflows/backend-testing.yml @@ -3,12 +3,24 @@ name: Backend Testing +# Workflow runs when: +# - a backend js/ts file on "dev" changes +# - a non-draft PR to "dev" with backend js/ts files is opened, is reopened, or changes +# - a draft PR to "dev" with backend js/ts files is marked as ready for review on: push: branches: [ "dev" ] + paths: + - 'backend/src/**.[jt]s' + - 'backend/tests/**.[jt]s' + - 'backend/vitest.config.ts' pull_request: branches: [ "dev" ] types: ["synchronize", "ready_for_review", "opened", "reopened"] + paths: + - 'backend/src/**.[jt]s' + - 'backend/tests/**.[jt]s' + - 'backend/vitest.config.ts' jobs: diff --git a/.github/workflows/frontend-testing.yml b/.github/workflows/frontend-testing.yml index 825065be..ff7bde4d 100644 --- a/.github/workflows/frontend-testing.yml +++ b/.github/workflows/frontend-testing.yml @@ -3,12 +3,34 @@ name: Frontend Testing +# Workflow runs when: +# - a frontend js/ts/vue/css file on "dev" changes +# - a non-draft PR to "dev" with frontend js/ts/vue/css files is opened, is reopened, or changes +# - a draft PR to "dev" with frontend js/ts/vue/css files is marked as ready for review on: push: branches: [ "dev" ] + paths: + - 'frontend/src/**.[jt]s' + - 'frontend/src/**.vue' + - 'frontend/src/**.css' + - 'frontend/tests/**.[jt]s' + - 'frontend/tests/**.vue' + - 'frontend/tests/**.css' + - 'frontend/vitest.config.ts' + - 'frontend/playwright.config.ts' pull_request: branches: [ "dev" ] types: ["synchronize", "ready_for_review", "opened", "reopened"] + paths: + - 'frontend/src/**.[jt]s' + - 'frontend/src/**.vue' + - 'frontend/src/**.css' + - 'frontend/tests/**.[jt]s' + - 'frontend/tests/**.vue' + - 'frontend/tests/**.css' + - 'frontend/vitest.config.ts' + - 'frontend/playwright.config.ts' jobs: test: