From 7d307bb4bc218a0c955bdcd0783fe03751d3fcd7 Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Tue, 21 Mar 2023 13:49:12 -0500 Subject: [PATCH 01/15] Create unit-test.yml --- .github/workflows/unit-test.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .github/workflows/unit-test.yml diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml new file mode 100644 index 00000000..fd6e2e04 --- /dev/null +++ b/.github/workflows/unit-test.yml @@ -0,0 +1,18 @@ +name: Run Unit Tests + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + build-and-test: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Setup Node + uses: actions/setup-node@v3 + - run: npm ci + - run: npm test From 5419289915b1a50d0efa59e5247e757c5c329da7 Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Tue, 21 Mar 2023 13:49:12 -0500 Subject: [PATCH 02/15] Create unit-test.yml --- .github/workflows/unit-test.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .github/workflows/unit-test.yml diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml new file mode 100644 index 00000000..fd6e2e04 --- /dev/null +++ b/.github/workflows/unit-test.yml @@ -0,0 +1,18 @@ +name: Run Unit Tests + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + build-and-test: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Setup Node + uses: actions/setup-node@v3 + - run: npm ci + - run: npm test From 2d8adfbae86e77bd3e29e1cad34e3b4ac0743169 Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Tue, 21 Mar 2023 13:54:28 -0500 Subject: [PATCH 03/15] Update test script in package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 33f18883..c2b81327 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,7 @@ "test:all": "vitest", "test:accessibility": "vitest accessibility --run", "coverage": "vitest --coverage --run", - "test": "echo \"Navigate into an example and run the tests from there!\" && exit 1", + "test": "vitest", "build": "tsc && vite build", "preview": "vite preview" }, From 26bf8d8810a37b3a94e23a4a4468b3076690d395 Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Tue, 21 Mar 2023 14:02:06 -0500 Subject: [PATCH 04/15] Update unit-test.yml --- .github/workflows/unit-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index fd6e2e04..03fb62cd 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -16,3 +16,4 @@ jobs: uses: actions/setup-node@v3 - run: npm ci - run: npm test + - run: npm run build From c80885d37f6e0c315692712652a576ae781f318f Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Tue, 21 Mar 2023 14:03:28 -0500 Subject: [PATCH 05/15] Update path aliases --- src/components/button.tsx | 2 +- src/lib/polygon.test.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/button.tsx b/src/components/button.tsx index 97838a19..ec493cdb 100644 --- a/src/components/button.tsx +++ b/src/components/button.tsx @@ -1,4 +1,4 @@ -import colors from '@/colors.json'; +import colors from '@/src/colors.json'; import { css } from '@emotion/css'; import { ComponentPropsWithoutRef } from 'react'; diff --git a/src/lib/polygon.test.ts b/src/lib/polygon.test.ts index 5f1c03e5..f775f722 100644 --- a/src/lib/polygon.test.ts +++ b/src/lib/polygon.test.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, it, expect } from 'vitest'; -import { createPolygon, Polygon } from 'src/lib/polygon'; +import { createPolygon, Polygon } from '$lib/polygon'; type ContextWithPolygon = { polygon: Polygon; From 835b948e4fcdeebf5b2b61734a072b58be6b6dc5 Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Tue, 21 Mar 2023 14:23:49 -0500 Subject: [PATCH 06/15] Update unit-test.yml --- .github/workflows/unit-test.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 03fb62cd..4441f381 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -7,13 +7,19 @@ on: branches: [main] jobs: - build-and-test: + unit-test: runs-on: ubuntu-latest - steps: - uses: actions/checkout@v3 - name: Setup Node uses: actions/setup-node@v3 - run: npm ci - run: npm test + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Setup Node + uses: actions/setup-node@v3 + - run: npm ci - run: npm run build From 0ea86acf139428297fed701b7e1dbf183e27cb04 Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Tue, 21 Mar 2023 14:40:04 -0500 Subject: [PATCH 07/15] Add caching to workflow --- .github/workflows/unit-test.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 4441f381..9acf2850 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -11,8 +11,14 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 + name: Checkout Repository 🫠 - name: Setup Node uses: actions/setup-node@v3 + - uses: actions/cache@v3 + id: npm-cache + with: + path: ~/.npm + key: npm-${{ hashFiles('**/package-lock.json') }} - run: npm ci - run: npm test build: @@ -21,5 +27,10 @@ jobs: - uses: actions/checkout@v3 - name: Setup Node uses: actions/setup-node@v3 + - uses: actions/cache@v3 + id: npm-cache + with: + path: ~/.npm + key: npm-${{ hashFiles('**/package-lock.json') }} - run: npm ci - run: npm run build From dcdc531c5f8bbdaacf616f35efbe456c43c23f26 Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Tue, 21 Mar 2023 14:48:34 -0500 Subject: [PATCH 08/15] Update unit-test.yml --- .github/workflows/unit-test.yml | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 9acf2850..7a78e4a1 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -14,11 +14,9 @@ jobs: name: Checkout Repository 🫠 - name: Setup Node uses: actions/setup-node@v3 - - uses: actions/cache@v3 - id: npm-cache with: - path: ~/.npm - key: npm-${{ hashFiles('**/package-lock.json') }} + node-version: 18 + cache: 'npm' - run: npm ci - run: npm test build: @@ -27,10 +25,8 @@ jobs: - uses: actions/checkout@v3 - name: Setup Node uses: actions/setup-node@v3 - - uses: actions/cache@v3 - id: npm-cache with: - path: ~/.npm - key: npm-${{ hashFiles('**/package-lock.json') }} + node-version: 18 + cache: 'npm' - run: npm ci - run: npm run build From be2611d97d43bac54ef48c76e6f1109a79574bb9 Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Wed, 22 Mar 2023 05:35:42 -0500 Subject: [PATCH 09/15] Break out action --- .../workflows/actions/checkout-and-setup.yml | 14 ++++++++++++++ .github/workflows/unit-test.yml | 19 ++++--------------- 2 files changed, 18 insertions(+), 15 deletions(-) create mode 100644 .github/workflows/actions/checkout-and-setup.yml diff --git a/.github/workflows/actions/checkout-and-setup.yml b/.github/workflows/actions/checkout-and-setup.yml new file mode 100644 index 00000000..fca3455a --- /dev/null +++ b/.github/workflows/actions/checkout-and-setup.yml @@ -0,0 +1,14 @@ +name: 'Checkout, Install Node and Dependencies' +description: 'Install dependencies' + +runs: + using: 'composite' + steps: + - uses: actions/checkout@v3 + name: Checkout Repository 🫠 + - name: Setup Node 🏞️ + uses: actions/setup-node@v3 + with: + node-version: 18 + cache: 'npm' + - run: npm ci diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 7a78e4a1..6b8874ed 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -10,23 +10,12 @@ jobs: unit-test: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - name: Checkout Repository 🫠 - - name: Setup Node - uses: actions/setup-node@v3 - with: - node-version: 18 - cache: 'npm' - - run: npm ci + - name: Checkout and Setup Node + uses: ./.github/actions/checkout-and-setup - run: npm test build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - name: Setup Node - uses: actions/setup-node@v3 - with: - node-version: 18 - cache: 'npm' - - run: npm ci + - name: Checkout and Setup Node + uses: ./.github/actions/checkout-and-setup - run: npm run build From 18ac24b25261dcbc105920dc4cfb7fcd27ea3278 Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Wed, 22 Mar 2023 13:11:49 -0500 Subject: [PATCH 10/15] Add a build job for code coverage --- .github/workflows/unit-test.yml | 11 +++++++++++ vitest.config.ts | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 6b8874ed..8081aa86 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -19,3 +19,14 @@ jobs: - name: Checkout and Setup Node uses: ./.github/actions/checkout-and-setup - run: npm run build + coverage: + runs-on: ubuntu-latest + steps: + - name: Checkout and Setup Node + uses: ./.github/actions/checkout-and-setup + - run: npm test -- --coverage + - uses: actions/upload-artifact@v3 + name: Archive coverage report + with: + name: coverage-report + path: coverage diff --git a/vitest.config.ts b/vitest.config.ts index bfdb94e7..d1214d31 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -19,7 +19,7 @@ export default defineConfig({ ['**/*.component.test.ts', 'jsdom'], ], coverage: { - statements: 54.92, + statements: 61.16, thresholdAutoUpdate: true, include: ['src/**/*'], exclude: [ From aeeaa7d90cf5145bcb7728d87418a6cbc15391ba Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Wed, 22 Mar 2023 13:14:08 -0500 Subject: [PATCH 11/15] Revert "Break out action" This reverts commit be2611d97d43bac54ef48c76e6f1109a79574bb9. --- .../workflows/actions/checkout-and-setup.yml | 14 -------------- .github/workflows/unit-test.yml | 19 +++++++++++++++---- 2 files changed, 15 insertions(+), 18 deletions(-) delete mode 100644 .github/workflows/actions/checkout-and-setup.yml diff --git a/.github/workflows/actions/checkout-and-setup.yml b/.github/workflows/actions/checkout-and-setup.yml deleted file mode 100644 index fca3455a..00000000 --- a/.github/workflows/actions/checkout-and-setup.yml +++ /dev/null @@ -1,14 +0,0 @@ -name: 'Checkout, Install Node and Dependencies' -description: 'Install dependencies' - -runs: - using: 'composite' - steps: - - uses: actions/checkout@v3 - name: Checkout Repository 🫠 - - name: Setup Node 🏞️ - uses: actions/setup-node@v3 - with: - node-version: 18 - cache: 'npm' - - run: npm ci diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 8081aa86..1c2f388c 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -10,14 +10,25 @@ jobs: unit-test: runs-on: ubuntu-latest steps: - - name: Checkout and Setup Node - uses: ./.github/actions/checkout-and-setup + - uses: actions/checkout@v3 + name: Checkout Repository 🫠 + - name: Setup Node + uses: actions/setup-node@v3 + with: + node-version: 18 + cache: 'npm' + - run: npm ci - run: npm test build: runs-on: ubuntu-latest steps: - - name: Checkout and Setup Node - uses: ./.github/actions/checkout-and-setup + - uses: actions/checkout@v3 + - name: Setup Node + uses: actions/setup-node@v3 + with: + node-version: 18 + cache: 'npm' + - run: npm ci - run: npm run build coverage: runs-on: ubuntu-latest From 1060314c242a25ded5f2b24c6e59e0b48dbe5a4a Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Wed, 22 Mar 2023 13:16:29 -0500 Subject: [PATCH 12/15] Update unit-test.yml --- .github/workflows/unit-test.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 1c2f388c..0ed5c716 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -33,8 +33,12 @@ jobs: coverage: runs-on: ubuntu-latest steps: - - name: Checkout and Setup Node - uses: ./.github/actions/checkout-and-setup + - uses: actions/checkout@v3 + - name: Setup Node + uses: actions/setup-node@v3 + with: + node-version: 18 + cache: 'npm' - run: npm test -- --coverage - uses: actions/upload-artifact@v3 name: Archive coverage report From f4d12aee4ff9db14622125cb1c862b918ac854de Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Wed, 22 Mar 2023 13:18:08 -0500 Subject: [PATCH 13/15] Update unit-test.yml --- .github/workflows/unit-test.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 0ed5c716..6281e66c 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -36,9 +36,10 @@ jobs: - uses: actions/checkout@v3 - name: Setup Node uses: actions/setup-node@v3 - with: - node-version: 18 - cache: 'npm' + with: + node-version: 18 + cache: 'npm' + - run: npm ci - run: npm test -- --coverage - uses: actions/upload-artifact@v3 name: Archive coverage report From 4b3cab3ee518f37d4d6280156e1ebf3c3370884d Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Wed, 22 Mar 2023 13:19:57 -0500 Subject: [PATCH 14/15] Update vitest.config.ts --- vitest.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vitest.config.ts b/vitest.config.ts index d1214d31..84c98601 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -19,7 +19,7 @@ export default defineConfig({ ['**/*.component.test.ts', 'jsdom'], ], coverage: { - statements: 61.16, + statements: 50, thresholdAutoUpdate: true, include: ['src/**/*'], exclude: [ From 581042f30a22bdd5de500260d5fb6d727fa227d5 Mon Sep 17 00:00:00 2001 From: Steve Kinney Date: Wed, 22 Mar 2023 13:26:20 -0500 Subject: [PATCH 15/15] Update unit-test.yml --- .github/workflows/unit-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index 6281e66c..0f597557 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -40,7 +40,7 @@ jobs: node-version: 18 cache: 'npm' - run: npm ci - - run: npm test -- --coverage + - run: npm test -- --coverage --run - uses: actions/upload-artifact@v3 name: Archive coverage report with: