You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
93 lines
2.4 KiB
93 lines
2.4 KiB
/*
|
|
* @copyright Copyright (c) 2020 Marco Ambrosini <marcoambrosini@icloud.com>
|
|
*
|
|
* @author Marco Ambrosini <marcoambrosini@icloud.com>
|
|
*
|
|
* @license GNU AGPL version 3 or any later version
|
|
*
|
|
* This program is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU Affero General Public License as
|
|
* published by the Free Software Foundation, either version 3 of the
|
|
* License, or (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU Affero General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Affero General Public License
|
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
*
|
|
*/
|
|
|
|
const { resolve } = require('node:path')
|
|
|
|
// TODO: find a way to consolidate this in one place, with webpack.common.js
|
|
const ignorePatterns = [
|
|
'(vue-material-design-icons)',
|
|
'(@juliushaertl)',
|
|
'(tributejs)',
|
|
'(@nextcloud/vue)',
|
|
'(splitpanes)',
|
|
'(string-length)',
|
|
'(strip-ansi)',
|
|
'(ansi-regex)',
|
|
'(char-regex)',
|
|
'(uuid)',
|
|
'(unist*)',
|
|
'(unified)',
|
|
'(bail)',
|
|
'(remark*)',
|
|
'(is-*)',
|
|
'(trough)',
|
|
'(vfile)',
|
|
'(mdast*)',
|
|
'(micromark)',
|
|
'(decode-named-character-reference)',
|
|
'(trim-lines)',
|
|
'(rehype*)',
|
|
'(hast-*)',
|
|
'(property-information)',
|
|
'(space-separated-tokens)',
|
|
'(comma-separated-tokens)',
|
|
'(web-namespaces)',
|
|
]
|
|
|
|
module.exports = {
|
|
|
|
// Allow tests in the src and in tests/unit folders
|
|
testMatch: ['<rootDir>/src/**/*.(spec|test).(ts|js)'],
|
|
transformIgnorePatterns: [
|
|
'node_modules/(?!' + ignorePatterns.join('|') + '/)',
|
|
],
|
|
resetMocks: false,
|
|
setupFiles: ['jest-localstorage-mock'],
|
|
setupFilesAfterEnv: [
|
|
'<rootDir>/src/test-setup.js',
|
|
'jest-mock-console/dist/setupTestFramework.js',
|
|
],
|
|
globalSetup: resolve(__dirname, 'jest.global.setup.js'),
|
|
|
|
collectCoverageFrom: [
|
|
'<rootDir>/src/**/*.{js,vue}',
|
|
],
|
|
|
|
testEnvironment: 'jest-environment-jsdom',
|
|
|
|
moduleFileExtensions: [
|
|
'js',
|
|
'vue',
|
|
],
|
|
|
|
moduleNameMapper: {
|
|
'\\.(css|scss)$': 'jest-transform-stub',
|
|
'vendor/tflite/(.*).wasm$': '<rootDir>/src/utils/media/effects/virtual-background/vendor/tflite/$1.js',
|
|
},
|
|
|
|
transform: {
|
|
'\\.js$': 'babel-jest',
|
|
'\\.vue$': '@vue/vue2-jest',
|
|
'\\.tflite$': 'jest-transform-stub',
|
|
'\\.(css|scss)$': 'jest-transform-stub',
|
|
},
|
|
}
|