fix: jest tests (#2056)

This commit is contained in:
Alexey
2023-10-10 17:44:39 +02:00
committed by GitHub
parent bdcda6a1fb
commit dc402f1940
3 changed files with 13 additions and 63 deletions
@@ -7,23 +7,9 @@
*/
/* eslint-disable @typescript-eslint/no-var-requires */
const testingAttributes = require('../dist/babel-plugins/TestingAttributes.js');
const { warn } = console;
// Prevents resolution warnings from babel-plugin-module-resolver
// See https://github.com/tleunen/babel-plugin-module-resolver/issues/315
// eslint-disable-next-line no-console
console.warn = (...args) => {
for (const arg of args) {
if (arg.startsWith('Could not resolve') && /src/.test(arg)) {
return;
}
}
warn(...args);
};
module.exports = api => {
const devMode = !api.env('production');
const testMode = api.env('test');
api.cache.never();
return {
@@ -34,25 +20,6 @@ module.exports = api => {
setSpreadProperties: true,
},
presets: [
// [
// '@babel/preset-env',
// {
// modules: testMode ? undefined : false,
// targets: {
// node: 'current',
// browsers: [
// 'defaults',
// 'not IE 11',
// // "last 1 chrome version",
// // "last 1 firefox version",
// // "last 1 edge version",
// // "last 1 safari version"
// ],
// },
// exclude: ['transform-async-to-generator', 'transform-regenerator'],
// },
// ],
// ['@babel/preset-typescript', { isTSX: true, allExtensions: true, onlyRemoveTypeImports: true }],
[
'@babel/preset-react',
{
@@ -61,26 +28,6 @@ module.exports = api => {
},
],
],
plugins: [
// 'babel-plugin-transform-typescript-metadata',
// '@babel/plugin-syntax-dynamic-import',
// '@babel/plugin-proposal-nullish-coalescing-operator',
// '@babel/plugin-proposal-optional-chaining',
// ['@babel/plugin-proposal-decorators', { legacy: true }],
// ['@babel/plugin-proposal-class-properties'],
// ['@babel/plugin-proposal-object-rest-spread', { useBuiltIns: true }],
[testingAttributes, {}],
[require('@reshadow/babel'), {}],
// /*devMode &&*/ [
// 'babel-plugin-module-resolver',
// {
// alias: {
// '^@cloudbeaver/([^/]*)$': '@cloudbeaver/\\1/lib',
// '^@cloudbeaver/([^/]*)/(.*)$': '@cloudbeaver/\\1/\\2',
// },
// },
// ],
devMode && !testMode && require.resolve('react-refresh/babel'),
].filter(Boolean),
plugins: [[testingAttributes, {}], [require('@reshadow/babel'), {}], devMode && require.resolve('react-refresh/babel')].filter(Boolean),
};
};
@@ -0,0 +1,11 @@
/*
* CloudBeaver - Cloud Database Manager
* Copyright (C) 2020-2023 DBeaver Corp and others
*
* Licensed under the Apache License, Version 2.0.
* you may not use this file except in compliance with the License.
*/
module.exports = {
presets: ['@babel/preset-env', ['@babel/preset-react', { runtime: 'automatic' }]],
plugins: ['../dist/babel-plugins/TestingAttributes.js', require('@reshadow/babel')],
};
@@ -12,28 +12,20 @@ module.exports = {
'node_modules/(?!@ngrx|(?!deck.gl)|ng-dynamic)',
'/node_modules/(?!(uuid|go-split|@react-dnd|react-dnd-html5-backend|react-dnd|dnd-core|@cloudbeaver))(.*)',
],
// transformIgnorePatterns: ['/node_modules/', '\\.pnp\\.[^\\/]+$', 'reshadow'],
testPathIgnorePatterns: ['/node_modules/'],
moduleNameMapper: {
'\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$': require.resolve('./__mocks__/fileMock.js'),
'\\.(css|scss|less)$': require.resolve('./__mocks__/styleMock.js'),
'^dexie$': require.resolve('dexie'),
// '^@cloudbeaver/([^/]*)$': '@cloudbeaver/$1/src',
// '^@cloudbeaver/([^/]*)/(.*)$': '@cloudbeaver/$1/$2',
'^reshadow$': 'reshadow/lib',
'^@reshadow/react$': '@reshadow/react/lib',
'^@reshadow/runtime$': '@reshadow/runtime/lib',
},
// collectCoverage: true,
// collectCoverageFrom: ['src/**/*.{ts,tsx}', '!src/types.ts'],
// coverageReporters: ['json'],
// restoreMocks: true,
passWithNoTests: true,
setupFiles: [require.resolve('fake-indexeddb/auto'), require.resolve('../tests/setup.js')],
setupFilesAfterEnv: ['@testing-library/jest-dom'],
transform: {
'\\.jsx?$': ['babel-jest', { configFile: require.resolve('./babel.config.js') }],
'\\.jsx?$': ['babel-jest', { configFile: require.resolve('./jest.babel.config.js') }],
},
};