diff --git a/backend/jest.config.js b/backend/jest.config.js new file mode 100644 index 000000000..ee0c37d8c --- /dev/null +++ b/backend/jest.config.js @@ -0,0 +1,13 @@ +module.exports = { + verbose: true, + collectCoverage: true, + collectCoverageFrom: [ + '**/*.js', + '!**/node_modules/**', + '!**/test/**', + '!**/dist/**', + '!**/src/**/?(*.)+(spec|test).js?(x)' + ], + coverageReporters: ['lcov', 'text'], + testMatch: ['**/src/**/?(*.)+(spec|test).js?(x)'], +} diff --git a/backend/package.json b/backend/package.json index fd285a3b4..f32d9a759 100644 --- a/backend/package.json +++ b/backend/package.json @@ -15,29 +15,13 @@ "dev": "nodemon --exec babel-node src/ -e js,gql", "dev:debug": "nodemon --exec babel-node --inspect=0.0.0.0:9229 src/ -e js,gql", "lint": "eslint src --config .eslintrc.js", - "test": "cross-env NODE_ENV=test NODE_OPTIONS=--max-old-space-size=8192 jest --forceExit --detectOpenHandles --runInBand --coverage --logHeapUsage", + "test": "cross-env NODE_ENV=test NODE_OPTIONS=--max-old-space-size=8192 jest --runInBand --coverage --forceExit --detectOpenHandles", "db:clean": "babel-node src/db/clean.js", "db:reset": "yarn run db:clean", "db:seed": "babel-node src/db/seed.js", "db:migrate": "yarn run __migrate --store ./src/db/migrate/store.js", "db:migrate:create": "yarn run __migrate --template-file ./src/db/migrate/template.js --date-format 'yyyymmddHHmmss' create" }, - "jest": { - "verbose": true, - "collectCoverageFrom": [ - "**/*.js", - "!**/node_modules/**", - "!**/test/**", - "!**/dist/**", - "!**/src/**/?(*.)+(spec|test).js?(x)" - ], - "coverageReporters": [ - "lcov" - ], - "testMatch": [ - "**/src/**/?(*.)+(spec|test).js?(x)" - ] - }, "dependencies": { "@babel/cli": "~7.8.4", "@babel/core": "~7.9.0", diff --git a/webapp/jest.config.js b/webapp/jest.config.js new file mode 100644 index 000000000..9980c319c --- /dev/null +++ b/webapp/jest.config.js @@ -0,0 +1,33 @@ +module.exports = { + verbose: true, + collectCoverage: true, + collectCoverageFrom: [ + '**/*.{js,vue}', + '!**/?(*.)+(spec|test|story).js?(x)', + '!**/node_modules/**', + '!**/.nuxt/**', + '!**/storybook/**', + '!**/coverage/**', + '!**/config/**', + '!**/maintenance/**', + '!**/plugins/**', + '!**/.eslintrc.js', + '!**/.prettierrc.js', + '!**/nuxt.config.js', + ], + coverageReporters: ['lcov', 'text'], + setupFiles: ['/test/registerContext.js', '/test/testSetup.js'], + transform: { + '.*\\.(vue)$': 'vue-jest', + '^.+\\.js$': 'babel-jest', + }, + testMatch: ['**/?(*.)+(spec|test).js?(x)'], + modulePathIgnorePatterns: ['/build/'], + moduleNameMapper: { + '\\.(svg)$': '/test/fileMock.js', + '\\.(css|less)$': 'identity-obj-proxy', + '^@/(.*)$': '/src/$1', + '^~/(.*)$': '/$1', + }, + moduleFileExtensions: ['js', 'json', 'vue'], +} diff --git a/webapp/package.json b/webapp/package.json index 65f34c3e3..d1b95dc4a 100644 --- a/webapp/package.json +++ b/webapp/package.json @@ -17,51 +17,9 @@ "lint": "eslint --ext .js,.vue .", "locales": "../scripts/translations/missing-keys.sh && ../scripts/translations/sort.sh", "precommit": "yarn lint", - "test": "cross-env NODE_ENV=test jest --coverage", + "test": "cross-env NODE_ENV=test jest --coverage --forceExit --detectOpenHandles", "test:unit:debug": "node --inspect-brk ./node_modules/jest/bin/jest.js --no-cache --runInBand" }, - "jest": { - "verbose": true, - "collectCoverageFrom": [ - "**/*.{js,vue}", - "!**/?(*.)+(spec|test|story).js?(x)", - "!**/node_modules/**", - "!**/.nuxt/**", - "!**/storybook/**", - "!**/coverage/**", - "!**/config/**", - "!**/maintenance/**", - "!**/plugins/**", - "!**/.eslintrc.js", - "!**/.prettierrc.js", - "!**/nuxt.config.js" - ], - "coverageReporters": [ - "lcov" - ], - "transform": { - ".*\\.(vue)$": "vue-jest", - "^.+\\.js$": "babel-jest" - }, - "moduleFileExtensions": [ - "js", - "json", - "vue" - ], - "moduleNameMapper": { - "\\.(svg)$": "/test/fileMock.js", - "\\.(css|less)$": "identity-obj-proxy", - "^@/(.*)$": "/src/$1", - "^~/(.*)$": "/$1" - }, - "setupFiles": [ - "/test/registerContext.js", - "/test/testSetup.js" - ], - "testMatch": [ - "**/?(*.)+(spec|test).js?(x)" - ] - }, "dependencies": { "@human-connection/styleguide": "0.5.22", "@nuxtjs/apollo": "^4.0.0-rc19", diff --git a/webapp/yarn.lock b/webapp/yarn.lock index b5ba692fa..67d0154a4 100644 --- a/webapp/yarn.lock +++ b/webapp/yarn.lock @@ -21340,3 +21340,4 @@ zxcvbn@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/zxcvbn/-/zxcvbn-4.4.2.tgz#28ec17cf09743edcab056ddd8b1b06262cc73c30" integrity sha1-KOwXzwl0PtyrBW3dixsGJizHPDA= + \ No newline at end of file