feature: added jest config

This commit is contained in:
Dmitriy Bratchikov
2024-05-27 16:35:37 +07:00
parent 534f905a6a
commit 42a457cfc8
3 changed files with 73 additions and 46 deletions
+24
View File
@@ -0,0 +1,24 @@
import type { Config } from "jest"
import nextJest from "next/jest.js"
const createJestConfig = nextJest({
dir: "./",
})
const config: Config = {
coverageProvider: "v8",
testEnvironment: "jsdom",
setupFilesAfterEnv: ["<rootDir>/jest.setup.ts"],
moduleNameMapper: {
"@app/(.*)$": "<rootDir>/src/app/$1",
"@entities/(.*)$": "<rootDir>/src/entities/$1",
"@features/(.*)$": "<rootDir>/src/features/$1",
"@pagesLayer/(.*)$": "<rootDir>/src/pagesLayer/$1",
"@shared/(.*)$": "<rootDir>/src/shared/$1",
"@widgets/(.*)$": "<rootDir>/src/widgets/$1",
"@/(.*)$": "<rootDir>/src/$1",
},
}
export default createJestConfig(config)
+1
View File
@@ -0,0 +1 @@
import "@testing-library/jest-dom"
+48 -46
View File
@@ -1,48 +1,50 @@
{ {
"name": "fsd-nest-template", "name": "fsd-nest-template",
"description": "Pure Next.js FSD template with stylelint, prettier and eslint", "description": "Pure Next.js FSD template with stylelint, prettier and eslint",
"author": { "author": {
"name": "@yunglocokid (Dmitriy Bratchikov)", "name": "@yunglocokid (Dmitriy Bratchikov)",
"url": "https://github.com/yunglocokid" "url": "https://github.com/yunglocokid"
}, },
"version": "0.1.0", "version": "0.1.0",
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "next dev", "dev": "next dev",
"build": "next build", "build": "next build",
"start": "next start", "start": "next start",
"lint": "next lint", "lint": "next lint",
"lint:prettier": "prettier . --write" "lint:prettier": "prettier . --write",
}, "test": "jest",
"dependencies": { "test:watch": "jest --watch"
"next": "14.2.3", },
"normalize.css": "^8.0.1", "dependencies": {
"react": "^18", "next": "14.2.3",
"react-dom": "^18" "normalize.css": "^8.0.1",
}, "react": "^18",
"devDependencies": { "react-dom": "^18"
"@ianvs/prettier-plugin-sort-imports": "^4.2.1", },
"@testing-library/jest-dom": "^6.4.5", "devDependencies": {
"@testing-library/react": "^15.0.7", "@ianvs/prettier-plugin-sort-imports": "^4.2.1",
"@types/node": "^20", "@testing-library/jest-dom": "^6.4.5",
"@types/react": "^18", "@testing-library/react": "^15.0.7",
"@types/react-dom": "^18", "@types/node": "^20",
"eslint": "^8", "@types/react": "^18",
"eslint-config-next": "14.2.3", "@types/react-dom": "^18",
"eslint-import-resolver-typescript": "^3.6.1", "eslint": "^8",
"eslint-plugin-boundaries": "^4.2.1", "eslint-config-next": "14.2.3",
"eslint-plugin-react-hooks": "^4.6.2", "eslint-import-resolver-typescript": "^3.6.1",
"eslint-plugin-react-refresh": "^0.4.7", "eslint-plugin-boundaries": "^4.2.1",
"jest": "^29.7.0", "eslint-plugin-react-hooks": "^4.6.2",
"jest-environment-jsdom": "^29.7.0", "eslint-plugin-react-refresh": "^0.4.7",
"prettier": "^3.2.5", "jest": "^29.7.0",
"sass": "^1.77.1", "jest-environment-jsdom": "^29.7.0",
"stylelint": "^16.5.0", "prettier": "^3.2.5",
"stylelint-config-standard": "^36.0.0", "sass": "^1.77.1",
"stylelint-config-standard-scss": "^13.1.0", "stylelint": "^16.5.0",
"stylelint-order": "^6.0.4", "stylelint-config-standard": "^36.0.0",
"stylelint-order-config-standard": "^0.1.3", "stylelint-config-standard-scss": "^13.1.0",
"typescript": "^5", "stylelint-order": "^6.0.4",
"typescript-eslint": "^7.10.0" "stylelint-order-config-standard": "^0.1.3",
} "typescript": "^5",
"typescript-eslint": "^7.10.0"
}
} }