From f97252700e7f051923a14a145bf9115f715727ba Mon Sep 17 00:00:00 2001 From: Avan Date: Fri, 23 Aug 2024 21:40:54 +0800 Subject: [PATCH] test: use unified github action yml (#360) --- .github/workflows/main.yml | 119 ++----------------------------------- .gitignore | 4 +- bunfig.toml | 2 + package.json | 7 +-- vitest-setup.ts | 2 +- 5 files changed, 14 insertions(+), 120 deletions(-) create mode 100644 bunfig.toml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2097f2a..5735e2d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,115 +1,6 @@ -name: CI - -on: ['push', 'pull_request'] - +name: ✅ test +on: [push, pull_request] jobs: - setup: - runs-on: ubuntu-latest - steps: - - name: checkout - uses: actions/checkout@v4 - - - uses: actions/setup-node@v4 - with: - node-version: '20' - - - name: cache package-lock.json - uses: actions/cache@v4 - with: - path: package-temp-dir - key: lock-${{ github.sha }} - - - name: create package-lock.json - run: npm i --package-lock-only --ignore-scripts - - - name: hack for singe file - run: | - if [ ! -d "package-temp-dir" ]; then - mkdir package-temp-dir - fi - cp package-lock.json package-temp-dir - - - name: cache node_modules - id: node_modules_cache_id - uses: actions/cache@v4 - with: - path: node_modules - key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} - - - name: install - if: steps.node_modules_cache_id.outputs.cache-hit != 'true' - run: npm ci - - lint: - runs-on: ubuntu-latest - steps: - - name: checkout - uses: actions/checkout@v4 - - - name: restore cache from package-lock.json - uses: actions/cache@v4 - with: - path: package-temp-dir - key: lock-${{ github.sha }} - - - name: restore cache from node_modules - uses: actions/cache@v4 - with: - path: node_modules - key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} - - - name: lint - run: npm run lint - - needs: setup - - compile: - runs-on: ubuntu-latest - steps: - - name: checkout - uses: actions/checkout@v4 - - - name: restore cache from package-lock.json - uses: actions/cache@v4 - with: - path: package-temp-dir - key: lock-${{ github.sha }} - - - name: restore cache from node_modules - uses: actions/cache@v4 - with: - path: node_modules - key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} - - - name: compile - run: npm run compile - - needs: setup - - coverage: - runs-on: ubuntu-latest - steps: - - name: checkout - uses: actions/checkout@v4 - - - name: restore cache from package-lock.json - uses: actions/cache@v4 - with: - path: package-temp-dir - key: lock-${{ github.sha }} - - - name: restore cache from node_modules - uses: actions/cache@v4 - with: - path: node_modules - key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }} - - - name: coverage - run: npm test -- --coverage - - - name: Upload coverage to Codecov - uses: codecov/codecov-action@v4 - with: - token: ${{ secrets.CODECOV_TOKEN }} - - needs: setup + test: + uses: react-component/rc-test/.github/workflows/test.yml@main + secrets: inherit \ No newline at end of file diff --git a/.gitignore b/.gitignore index 35fad32..93e1cbd 100644 --- a/.gitignore +++ b/.gitignore @@ -39,4 +39,6 @@ package-lock.json # dumi .dumi/tmp -.dumi/tmp-production \ No newline at end of file +.dumi/tmp-production + +bun.lockb \ No newline at end of file diff --git a/bunfig.toml b/bunfig.toml new file mode 100644 index 0000000..80d57b6 --- /dev/null +++ b/bunfig.toml @@ -0,0 +1,2 @@ +[install] +peer = false \ No newline at end of file diff --git a/package.json b/package.json index 4341533..4117593 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,8 @@ "compile": "father build && lessc assets/index.less assets/index.css", "prepublishOnly": "npm run compile && np --yolo --no-publish", "lint": "eslint src/ docs/examples/ --ext .tsx,.ts,.jsx,.js", - "test": "vitest", + "test": "vitest --watch=false", + "test:watch": "vitest", "coverage": "vitest run --coverage", "now-build": "npm run build", "prepare": "husky install" @@ -52,7 +53,7 @@ }, "devDependencies": { "@rc-component/father-plugin": "^1.0.2", - "@testing-library/jest-dom": "^5.0.0", + "@testing-library/jest-dom": "^6.0.0", "@testing-library/react": "^15.0.7", "@types/classnames": "^2.2.10", "@types/react": "^18.0.0", @@ -66,8 +67,6 @@ "father": "^4.0.0", "gh-pages": "^3.1.0", "husky": "^8.0.3", - "jsdom": "^22.1.0", - "less": "^4.2.0", "jsdom": "^24.0.0", "less": "^4.2.0", "lint-staged": "^14.0.1", diff --git a/vitest-setup.ts b/vitest-setup.ts index 76824c3..f17e3b8 100644 --- a/vitest-setup.ts +++ b/vitest-setup.ts @@ -1,5 +1,5 @@ import type { TestingLibraryMatchers } from '@testing-library/jest-dom/matchers'; -import matchers from '@testing-library/jest-dom/matchers'; +import * as matchers from '@testing-library/jest-dom/matchers'; import { expect } from 'vitest'; declare module 'vitest' {