Merge pull request #47466 from nextcloud/chore/migrate-vitest
test: Migrate from Jest to vitestpull/47465/head
commit
4fcf4dba02
@ -1,12 +0,0 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
|
||||
* SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
*/
|
||||
|
||||
import '@testing-library/jest-dom'
|
||||
|
||||
// Mock `window.location` with Jest spies and extend expect
|
||||
import 'jest-location-mock'
|
||||
|
||||
// Mock `window.fetch` with Jest
|
||||
import 'jest-fetch-mock'
|
||||
@ -0,0 +1,5 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
|
||||
* SPDX-License-Identifier: CC0-1.0
|
||||
*/
|
||||
import '@testing-library/jest-dom/vitest'
|
||||
@ -1,6 +0,0 @@
|
||||
{
|
||||
"extends": "../tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"verbatimModuleSyntax": false
|
||||
}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@ -1,81 +0,0 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors
|
||||
* SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
*/
|
||||
import type { Config } from 'jest'
|
||||
|
||||
// TODO: find a way to consolidate this in one place, with webpack.common.js
|
||||
const ignorePatterns = [
|
||||
'@buttercup/fetch',
|
||||
'@juliushaertl',
|
||||
'@mdi/svg',
|
||||
'@nextcloud/files',
|
||||
'@nextcloud/upload',
|
||||
'@nextcloud/vue',
|
||||
'ansi-regex',
|
||||
'camelcase',
|
||||
'char-regex',
|
||||
'hot-patcher',
|
||||
'is-svg',
|
||||
'layerr',
|
||||
'mime',
|
||||
'p-cancelable',
|
||||
'p-limit',
|
||||
'p-queue',
|
||||
'p-timeout',
|
||||
'splitpanes',
|
||||
'string-length',
|
||||
'strip-ansi',
|
||||
'tributejs',
|
||||
'unist-.+',
|
||||
'url-join',
|
||||
'vue-material-design-icons',
|
||||
'webdav',
|
||||
'yocto-queue',
|
||||
]
|
||||
|
||||
const config: Config = {
|
||||
testMatch: ['<rootDir>/**/*.(spec|test).(ts|js)'],
|
||||
|
||||
clearMocks: true,
|
||||
setupFilesAfterEnv: [
|
||||
'<rootDir>/__tests__/jest-setup.ts',
|
||||
'<rootDir>/__tests__/mock-window.js',
|
||||
],
|
||||
|
||||
testEnvironment: 'jest-environment-jsdom',
|
||||
preset: 'ts-jest/presets/js-with-ts',
|
||||
|
||||
roots: [
|
||||
'<rootDir>/__mocks__',
|
||||
'<rootDir>/__tests__',
|
||||
'<rootDir>/apps',
|
||||
'<rootDir>/core',
|
||||
],
|
||||
|
||||
transform: {
|
||||
// process `*.js` files with `babel-jest`
|
||||
'^.+\\.c?js$': 'babel-jest',
|
||||
'^.+\\.vue$': '@vue/vue2-jest',
|
||||
'^.+\\.ts$': ['ts-jest', {
|
||||
// @see https://github.com/kulshekhar/ts-jest/issues/4081
|
||||
tsconfig: './__tests__/tsconfig.json',
|
||||
}],
|
||||
},
|
||||
transformIgnorePatterns: [
|
||||
'node_modules/(?!(' + ignorePatterns.join('|') + ')/)',
|
||||
],
|
||||
|
||||
// Allow mocking svg files
|
||||
moduleNameMapper: {
|
||||
'^.+\\.svg(\\?raw)?$': '<rootDir>/__mocks__/svg.js',
|
||||
'\\.s?css$': '<rootDir>/__mocks__/css.js',
|
||||
},
|
||||
|
||||
modulePathIgnorePatterns: [
|
||||
'<rootDir>/apps2/',
|
||||
'<rootDir>/apps-extra/',
|
||||
],
|
||||
}
|
||||
|
||||
export default config
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,26 @@
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors
|
||||
* SPDX-License-Identifier: CC0-1.0
|
||||
*/
|
||||
import { defineConfig } from 'vitest/config'
|
||||
import vue from '@vitejs/plugin-vue2'
|
||||
|
||||
export default defineConfig({
|
||||
plugins: [vue()],
|
||||
test: {
|
||||
include: ['{apps,core}/**/*.{test,spec}.?(c|m)[jt]s?(x)'],
|
||||
environment: 'jsdom',
|
||||
coverage: {
|
||||
include: ['apps/*/src/**', 'core/src/**'],
|
||||
exclude: ['**.spec.*', '**.test.*', '**.cy.*', 'core/src/tests/**'],
|
||||
provider: 'v8',
|
||||
reporter: ['lcov', 'text'],
|
||||
},
|
||||
setupFiles: ['__tests__/mock-window.js', '__tests__/setup-testing-library.js'],
|
||||
server: {
|
||||
deps: {
|
||||
inline: [/@nextcloud\//],
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
Loading…
Reference in New Issue