Skip to content

Commit

Permalink
Fix test performance
Browse files Browse the repository at this point in the history
  • Loading branch information
vojtechszocs committed Oct 13, 2022
1 parent 0631e0d commit 3b19a89
Show file tree
Hide file tree
Showing 16 changed files with 60 additions and 62 deletions.
15 changes: 11 additions & 4 deletions jest.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
import type { InitialOptionsTsJest } from 'ts-jest';

process.env.TZ = 'UTC';

const config: InitialOptionsTsJest = {
projects: [
'<rootDir>/packages/common',
Expand All @@ -12,8 +10,17 @@ const config: InitialOptionsTsJest = {

collectCoverage: true,
coverageDirectory: 'coverage',
coverageReporters: ['json', 'lcov', 'text'],
collectCoverageFrom: ['src/**/*.{js,jsx,ts,tsx}', '!**/(node_modules|dist)/**'],
coverageReporters: ['lcov'],
collectCoverageFrom: [
'src/**/*.{js,jsx,ts,tsx}',
'!**/(node_modules|dist)/**',
'!**/*.{test,stories}.*',
],
};

if (process.env.CI) {
// https://github.com/kulshekhar/ts-jest/issues/259#issuecomment-888978737
config.maxWorkers = 1;
}

export default config;
12 changes: 6 additions & 6 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,14 @@
"build-samples": "yarn workspaces foreach --from '@monorepo/sample-*' run build",
"run-samples": "yarn workspaces foreach -pvi --from '@monorepo/sample-*' run http-server",
"lint": "yarn eslint packages",
"test": "jest --logHeapUsage -w 1",
"test": "jest --logHeapUsage",
"test-print-config": "jest --showConfig",
"test-e2e": "yarn workspace @monorepo/e2e-sample-app run test-e2e",
"test-e2e-open": "yarn workspace @monorepo/e2e-sample-app run test-e2e-open",
"test-e2e-ci": "start-server-and-test 'yarn run-samples' '9000|9001' 'yarn test-e2e'",
"eslint": "eslint --max-warnings 0 --ext .js,.jsx,.ts,.tsx",
"eslint-print-config": "eslint --print-config",
"jest": "TZ=UTC jest",
"storybook": "start-storybook -p 6006",
"build-storybook": "build-storybook"
},
Expand All @@ -38,13 +39,12 @@
"@storybook/manager-webpack5": "^6.5.9",
"@storybook/react": "^6.5.9",
"@storybook/testing-library": "^0.0.13",
"@testing-library/dom": "^8.13.0",
"@testing-library/jest-dom": "^5.16.4",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^12.1.5",
"@testing-library/react-hooks": "^8.0.0",
"@testing-library/user-event": "^14.1.1",
"@testing-library/react-hooks": "^8.0.1",
"@testing-library/user-event": "^14.4.3",
"@types/glob": "^7.2.0",
"@types/jest": "^27.5.0",
"@types/jest": "^27.5.2",
"@types/lodash-es": "^4.17.5",
"@types/node": "^16.11.12",
"@types/pluralize": "^0.0.29",
Expand Down
2 changes: 1 addition & 1 deletion packages/common/test-configs/jest-config-base.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ const config: InitialOptionsTsJest = {
preset: 'ts-jest/presets/js-with-ts',

testMatch: ['**/*.test.(js|jsx|ts|tsx)'],
transformIgnorePatterns: ['/node_modules/(?!(@patternfly)/)'],
transformIgnorePatterns: ['/node_modules/'],

moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json'],
moduleNameMapper: {
Expand Down
1 change: 1 addition & 0 deletions packages/common/test-configs/jest-config-node.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ const config: InitialOptionsTsJest = {
globals: {
'ts-jest': {
tsconfig: path.resolve(__dirname, '../tsconfig-bases/lib-node-cjs.json'),
isolatedModules: true,
},
},
};
Expand Down
1 change: 1 addition & 0 deletions packages/common/test-configs/jest-config-react.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ const config: InitialOptionsTsJest = {
globals: {
'ts-jest': {
tsconfig: path.resolve(__dirname, '../tsconfig-bases/lib-react-esm.json'),
isolatedModules: true,
},
},
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
import { render, screen, fireEvent } from '@testing-library/react';
import React from 'react';
import { MemoryRouter, Routes, Route } from 'react-router-dom';
import '@testing-library/jest-dom';
import type { DetailsPageHeaderProps } from './DetailsPageHeader';
import { DetailsPageHeader } from './DetailsPageHeader';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import { render, screen, fireEvent } from '@testing-library/react';
import React from 'react';
import '@testing-library/jest-dom';
import { ActionButtons } from './ActionButtons';

const mockCallback = jest.fn();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import { render, screen, fireEvent } from '@testing-library/react';
import React from 'react';
import '@testing-library/jest-dom';
import { ActionMenu } from './ActionMenu';

const mockCallback = jest.fn();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
import { render, screen, fireEvent } from '@testing-library/react';
import React from 'react';
import { MemoryRouter, Routes, Route } from 'react-router-dom';
import '@testing-library/jest-dom';
import type { BreadcrumbsProps } from './Breadcrumbs';
import { Breadcrumbs } from './Breadcrumbs';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
import { Text, TextContent, TextVariants } from '@patternfly/react-core';
import { render, screen, fireEvent } from '@testing-library/react';
import React from 'react';
import '@testing-library/jest-dom';
import GettingStartedCard from './GettingStartedCard';

const localStorageKey = 'get-started-with-workspaces';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import {
Split,
SplitItem,
} from '@patternfly/react-core';
import CloseIcon from '@patternfly/react-icons/dist/js/icons/close-icon';
import { CloseIcon } from '@patternfly/react-icons';
import * as React from 'react';
import '@patternfly/react-styles/css/utilities/Display/display.css';
import '@patternfly/react-styles/css/utilities/Spacing/spacing.css';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import { render, screen, fireEvent } from '@testing-library/react';
import React from 'react';
import '@testing-library/jest-dom';
import { BrowserRouter } from 'react-router-dom';
import type { Tab } from './HorizontalNav';
import { HorizontalNav, HorizontalNavTabs } from './HorizontalNav';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* eslint-disable react/jsx-props-no-spreading */
import { InfoCircleIcon } from '@patternfly/react-icons/dist/esm/icons/info-circle-icon';
import { InfoCircleIcon } from '@patternfly/react-icons';
import type { ComponentStory, ComponentMeta } from '@storybook/react';
import React from 'react';
import type { LabelListProps } from './LabelList';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { InfoCircleIcon } from '@patternfly/react-icons/dist/esm/icons/info-circle-icon';
import { InfoCircleIcon } from '@patternfly/react-icons';
import { render, screen } from '@testing-library/react';
import * as React from 'react';
import type { LabelListProps } from './LabelList';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* eslint-disable react/jsx-props-no-spreading */
import type { AnyObject } from '@monorepo/common';
import { Button, Tooltip } from '@patternfly/react-core';
import HelpIcon from '@patternfly/react-icons/dist/esm/icons/help-icon';
import { HelpIcon } from '@patternfly/react-icons';
import { sortable } from '@patternfly/react-table';
import type { ComponentStory, ComponentMeta } from '@storybook/react';
import React from 'react';
Expand Down
77 changes: 36 additions & 41 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,13 @@ __metadata:
version: 6
cacheKey: 8

"@adobe/css-tools@npm:^4.0.1":
version: 4.0.1
resolution: "@adobe/css-tools@npm:4.0.1"
checksum: 80226e2229024c21da9ffa6b5cd4a34b931f071e06f45aba4777ade071d7a6c94605cf73b13718b0c4b34e8b124c65c607b82eaa53a326d3eb73d9682a04a593
languageName: node
linkType: hard

"@ampproject/remapping@npm:^2.1.0":
version: 2.2.0
resolution: "@ampproject/remapping@npm:2.2.0"
Expand Down Expand Up @@ -2541,13 +2548,12 @@ __metadata:
"@storybook/manager-webpack5": ^6.5.9
"@storybook/react": ^6.5.9
"@storybook/testing-library": ^0.0.13
"@testing-library/dom": ^8.13.0
"@testing-library/jest-dom": ^5.16.4
"@testing-library/jest-dom": ^5.16.5
"@testing-library/react": ^12.1.5
"@testing-library/react-hooks": ^8.0.0
"@testing-library/user-event": ^14.1.1
"@testing-library/react-hooks": ^8.0.1
"@testing-library/user-event": ^14.4.3
"@types/glob": ^7.2.0
"@types/jest": ^27.5.0
"@types/jest": ^27.5.2
"@types/lodash-es": ^4.17.5
"@types/node": ^16.11.12
"@types/pluralize": ^0.0.29
Expand Down Expand Up @@ -4374,7 +4380,7 @@ __metadata:
languageName: node
linkType: hard

"@testing-library/dom@npm:^8.0.0, @testing-library/dom@npm:^8.13.0":
"@testing-library/dom@npm:^8.0.0":
version: 8.13.0
resolution: "@testing-library/dom@npm:8.13.0"
dependencies:
Expand Down Expand Up @@ -4406,26 +4412,26 @@ __metadata:
languageName: node
linkType: hard

"@testing-library/jest-dom@npm:^5.16.4":
version: 5.16.4
resolution: "@testing-library/jest-dom@npm:5.16.4"
"@testing-library/jest-dom@npm:^5.16.5":
version: 5.16.5
resolution: "@testing-library/jest-dom@npm:5.16.5"
dependencies:
"@adobe/css-tools": ^4.0.1
"@babel/runtime": ^7.9.2
"@types/testing-library__jest-dom": ^5.9.1
aria-query: ^5.0.0
chalk: ^3.0.0
css: ^3.0.0
css.escape: ^1.5.1
dom-accessibility-api: ^0.5.6
lodash: ^4.17.15
redent: ^3.0.0
checksum: 4240501223b72b97a44d4e3c669f39b208c49fb645d11d08d5f178d607265c5dfad07efbe027f41a0e2458178ff1fd5bf437fc05661b9109dcd013b95a37079e
checksum: 94911f901a8031f3e489d04ac057cb5373621230f5d92bed80e514e24b069fb58a3166d1dd86963e55f078a1bd999da595e2ab96ed95f452d477e272937d792a
languageName: node
linkType: hard

"@testing-library/react-hooks@npm:^8.0.0":
version: 8.0.0
resolution: "@testing-library/react-hooks@npm:8.0.0"
"@testing-library/react-hooks@npm:^8.0.1":
version: 8.0.1
resolution: "@testing-library/react-hooks@npm:8.0.1"
dependencies:
"@babel/runtime": ^7.12.5
react-error-boundary: ^3.1.0
Expand All @@ -4441,7 +4447,7 @@ __metadata:
optional: true
react-test-renderer:
optional: true
checksum: f45bd06601bf1d00e375c3d945b0e54b4d997b18402c45711deada7e8c4a8f569fe283973e6786c9ecd55e4bd01a43bd42546a2924453065880abf4b13dbafdb
checksum: 7fe44352e920deb5cb1876f80d64e48615232072c9d5382f1e0284b3aab46bb1c659a040b774c45cdf084a5257b8fe463f7e08695ad8480d8a15635d4d3d1f6d
languageName: node
linkType: hard

Expand Down Expand Up @@ -4470,12 +4476,12 @@ __metadata:
languageName: node
linkType: hard

"@testing-library/user-event@npm:^14.1.1":
version: 14.1.1
resolution: "@testing-library/user-event@npm:14.1.1"
"@testing-library/user-event@npm:^14.4.3":
version: 14.4.3
resolution: "@testing-library/user-event@npm:14.4.3"
peerDependencies:
"@testing-library/dom": ">=7.21.4"
checksum: dd02aecbde64002aa3c58392137672156101fc3bb821f43db99e3c652e6a6d34b3eb29b2524eb41ad2a317cfdff6ab2e88d7027605d88dccaacf4f07a08dc7a9
checksum: 852c48ea6db1c9471b18276617c84fec4320771e466cd58339a732ca3fd73ad35e5a43ae14f51af51a8d0a150dcf60fcaab049ef367871207bea8f92c4b8195e
languageName: node
linkType: hard

Expand Down Expand Up @@ -4694,7 +4700,7 @@ __metadata:
languageName: node
linkType: hard

"@types/jest@npm:*, @types/jest@npm:^27.5.0":
"@types/jest@npm:*":
version: 27.5.0
resolution: "@types/jest@npm:27.5.0"
dependencies:
Expand All @@ -4704,6 +4710,16 @@ __metadata:
languageName: node
linkType: hard

"@types/jest@npm:^27.5.2":
version: 27.5.2
resolution: "@types/jest@npm:27.5.2"
dependencies:
jest-matcher-utils: ^27.0.0
pretty-format: ^27.0.0
checksum: 7e11c6826aa429ad990dc262e4e4b54aa36573287fddf15773e4137f07d11d3105f0dd9f1baff73252160a057df23f5529bb83b1bf83cd3f45f9460a5ca5c22e
languageName: node
linkType: hard

"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9":
version: 7.0.9
resolution: "@types/json-schema@npm:7.0.9"
Expand Down Expand Up @@ -8172,17 +8188,6 @@ __metadata:
languageName: node
linkType: hard

"css@npm:^3.0.0":
version: 3.0.0
resolution: "css@npm:3.0.0"
dependencies:
inherits: ^2.0.4
source-map: ^0.6.1
source-map-resolve: ^0.6.0
checksum: 4273ac816ddf99b99acb9c1d1a27d86d266a533cc01118369d941d8e8a78277a83cad3315e267a398c509d930fbb86504e193ea1ebc620a4a4212e06fe76e8be
languageName: node
linkType: hard

"cssesc@npm:^3.0.0":
version: 3.0.0
resolution: "cssesc@npm:3.0.0"
Expand Down Expand Up @@ -17796,16 +17801,6 @@ __metadata:
languageName: node
linkType: hard

"source-map-resolve@npm:^0.6.0":
version: 0.6.0
resolution: "source-map-resolve@npm:0.6.0"
dependencies:
atob: ^2.1.2
decode-uri-component: ^0.2.0
checksum: fe503b9e5dac1c54be835282fcfec10879434e7b3ee08a9774f230299c724a8d403484d9531276d1670c87390e0e4d1d3f92b14cca6e4a2445ea3016b786ecd4
languageName: node
linkType: hard

"source-map-support@npm:^0.5.16, source-map-support@npm:^0.5.6, source-map-support@npm:~0.5.12, source-map-support@npm:~0.5.20":
version: 0.5.21
resolution: "source-map-support@npm:0.5.21"
Expand Down

0 comments on commit 3b19a89

Please sign in to comment.