Skip to content

Commit d654667

Browse files
chore(test): migrate from jest to vitest (#1945)
* chore(test): migrate from jest to vitest * fix(i18n): update test * fix: tests * fix: improve solution --------- Co-authored-by: Dorian Maliszewski <[email protected]>
1 parent 067dd9f commit d654667

File tree

114 files changed

+2835
-789
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

114 files changed

+2835
-789
lines changed

.eslintignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@
22
node_modules/
33
dist/
44
build/
5-
__typetests__/
5+
__typetests__/
6+
packages_deprecated/

.eslintrc

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,11 +35,14 @@
3535
{
3636
"files": [
3737
"packages/jest-helpers/**/*.ts{x,}",
38-
"**/__tests__/**/*.ts{x,}"
38+
"**/__tests__/**/*.ts{x,}",
39+
"vitest.setup.ts",
40+
"*.config.ts"
3941
],
4042
"rules": {
4143
"import/no-extraneous-dependencies": "off",
42-
"react/jsx-key": "off"
44+
"react/jsx-key": "off",
45+
"import/no-relative-packages": "off"
4346
}
4447
}
4548
]

.github/renovate.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
"reviewersSampleSize": 2,
1616
"semanticCommitScope": "deps",
1717
"semanticCommitType": "chore",
18+
"ignorePaths": ["packages_deprecated/**/package.json"],
1819
"packageRules": [
1920
{
2021
"matchDepTypes": ["engines", "peerDependencies"],

.github/workflows/ci.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,10 @@ jobs:
5353
- run: pnpm run build
5454
- run: pnpm run test:coverage
5555
- uses: codecov/[email protected]
56+
with:
57+
files: packages/**/coverage/cobertura-coverage.xml
58+
token: ${{ secrets.CODECOV_TOKEN }}
59+
verbose: true
5660

5761
test-types:
5862
runs-on: ubuntu-22.04

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,13 @@ yarn-debug.log*
2525
yarn-error.log*
2626
*.log
2727

28+
# turbo
29+
packages/*/.turbo
30+
packages/*/dist
2831

32+
#vite
33+
vite.config.ts.*
34+
vitest.config.ts.*
2935

3036
# Yalc
3137
yalc.lock

package.json

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,33 +21,32 @@
2121
"@changesets/cli": "2.27.1",
2222
"@commitlint/cli": "19.2.2",
2323
"@commitlint/config-conventional": "19.2.2",
24-
"@jest/globals": "29.7.0",
2524
"@scaleway/eslint-config-react": "workspace:*",
2625
"@scaleway/tsconfig": "workspace:*",
2726
"@testing-library/jest-dom": "6.4.2",
2827
"@testing-library/react": "15.0.2",
2928
"@types/jest": "29.5.12",
3029
"@types/node": "20.12.7",
31-
"@types/react-dom": "18.2.25",
3230
"@types/react": "18.2.79",
31+
"@types/react-dom": "18.2.25",
3332
"@vitejs/plugin-react": "4.2.1",
33+
"@vitest/coverage-istanbul": "^1.5.1",
3434
"browserslist": "4.23.0",
3535
"builtin-modules": "3.3.0",
3636
"cross-env": "7.0.3",
3737
"esbuild-plugin-browserslist": "0.11.1",
3838
"eslint": "8.57.0",
39+
"happy-dom": "^14.7.1",
3940
"husky": "9.0.11",
40-
"jest-environment-jsdom": "29.7.0",
41-
"jest-junit": "16.0.0",
42-
"jest-localstorage-mock": "2.4.26",
43-
"jest": "29.7.0",
4441
"lint-staged": "15.2.2",
4542
"mockdate": "3.0.5",
4643
"prettier": "3.2.5",
4744
"read-pkg": "9.0.1",
4845
"tstyche": "1.1.0 ",
4946
"typescript": "5.4.5",
5047
"vite": "5.2.10",
48+
"vitest": "1.5.0",
49+
"vitest-localstorage-mock": "0.1.2",
5150
"wait-for-expect": "3.0.2"
5251
},
5352
"scripts": {
@@ -56,8 +55,7 @@
5655
"build": "pnpm recursive run build",
5756
"commit": "npx git-cz -a",
5857
"format": "prettier --write '**/*.{ts,tsx,js,json,md,mdx}'",
59-
"test": "TZ=UTC jest",
60-
"test:watch": "pnpm run test --watch",
58+
"test": "pnpm recursive run test:unit",
6159
"test:coverage": "pnpm run test --coverage",
6260
"test:types": "tstyche",
6361
"release": "pnpm build && pnpm changeset publish",
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// eslint-disable-next-line import/no-extraneous-dependencies
2+
import { vi } from 'vitest'
3+
4+
export const defaultGitValues = {
5+
branch: () => ({
6+
current: '',
7+
}),
8+
show: () => {},
9+
diffSummary: () => {},
10+
revparse: () => {},
11+
add: () => {},
12+
commit: () => {},
13+
push: () => {},
14+
}
15+
16+
export const mockSimpleGit = vi.fn(() => defaultGitValues)
17+
18+
const simpleGit = () => mockSimpleGit()
19+
20+
export { simpleGit }

packages/changesets-renovate/package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,9 @@
2929
"type:generate": "tsc --declaration -p tsconfig.build.json",
3030
"build": "vite build --config vite.config.ts && pnpm run type:generate",
3131
"build:profile": "npx vite-bundle-visualizer -c vite.config.ts",
32-
"lint": "eslint --report-unused-disable-directives --cache --cache-strategy content --ext ts,tsx ."
32+
"lint": "eslint --report-unused-disable-directives --cache --cache-strategy content --ext ts,tsx .",
33+
"test:unit": "vitest --run --config vite.config.ts",
34+
"test:unit:coverage": "pnpm test:unit --coverage"
3335
},
3436
"repository": {
3537
"type": "git",
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2+
3+
exports[`generate changeset file > should generate changeset file, but skip commit and push 1`] = `
4+
[MockFunction spy] {
5+
"calls": [
6+
[
7+
".changeset/renovate-test.md",
8+
"---
9+
'packageName': patch
10+
---
11+
12+
Updated dependency \`package\` to \`version\`.
13+
Updated dependency \`package2\` to \`version2\`.
14+
",
15+
],
16+
],
17+
"results": [
18+
{
19+
"type": "return",
20+
"value": undefined,
21+
},
22+
],
23+
}
24+
`;
25+
26+
exports[`generate changeset file > should generate changeset file, commit and push 1`] = `
27+
[MockFunction spy] {
28+
"calls": [
29+
[
30+
".changeset/renovate-test.md",
31+
"---
32+
'packageName': patch
33+
---
34+
35+
Updated dependency \`package\` to \`version\`.
36+
Updated dependency \`package2\` to \`version2\`.
37+
",
38+
],
39+
],
40+
"results": [
41+
{
42+
"type": "return",
43+
"value": undefined,
44+
},
45+
],
46+
}
47+
`;

0 commit comments

Comments
 (0)