-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathjest.config.js
31 lines (31 loc) · 1.18 KB
/
jest.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
module.exports = {
coverageDirectory: "./.coverage/",
collectCoverage: true,
collectCoverageFrom: [
"./**/*.{vue,js}",
// If you're working off the default Vue CLI generated template, HelloWorld.vue contains no methods, so it won't be listed.
// Basically, jest is a JAVASCRIPT test framework => only test JAVASCRIPT => Vue template has js
// Understand this make you out of shit a lot
// https://stackoverflow.com/a/53250090/2552193
// "src/**/*.{vue}",
// main.js is excluded from unit tests because it's a bootstrap file.
"!src/{main,registerServiceWorker,router,store}.js",
"!./jest.config.js",
],
moduleFileExtensions: ["js", "jsx", "json", "vue"],
transform: {
"^.+\\.vue$": "vue-jest",
".+\\.(css|styl|less|sass|scss|svg|png|jpg|ttf|woff|woff2)$": "jest-transform-stub",
"^.+\\.jsx?$": "babel-jest",
"^.+\\.js$": "babel-jest",
},
moduleNameMapper: {
"^@/(.*)$": "<rootDir>/src/$1"
},
snapshotSerializers: ["jest-serializer-vue"],
transformIgnorePatterns: ["<rootDir>/node_modules/"],
testMatch: [
"**/tests/unit/**/*.(spec|test).(js|jsx|ts|tsx)|**/__tests__/*.(js|jsx|ts|tsx)"
],
testURL: "http://localhost/"
};