File tree Expand file tree Collapse file tree 5 files changed +121
-1
lines changed
packages/react-library-scripts Expand file tree Collapse file tree 5 files changed +121
-1
lines changed Original file line number Diff line number Diff line change 1+ "use strict" ;
2+
3+ const babelJest = require ( "babel-jest" ) ;
4+
5+ module . exports = babelJest . createTransformer ( {
6+ presets : [
7+ [ require . resolve ( "@babel/preset-env" ) , { modules : "commonjs" } ] ,
8+ [ require . resolve ( "@babel/preset-react" ) , { absoluteRuntime : false } ]
9+ ] ,
10+ plugins : [
11+ require . resolve ( "@babel/plugin-proposal-class-properties" ) ,
12+ require . resolve ( "@babel/plugin-transform-runtime" )
13+ ] ,
14+ babelrc : false ,
15+ configFile : false
16+ } ) ;
Original file line number Diff line number Diff line change 1+ // Copied from Create React APP
2+
3+ "use strict" ;
4+
5+ // This is a custom Jest transformer turning style imports into empty objects.
6+ // http://facebook.github.io/jest/docs/en/webpack.html
7+
8+ module . exports = {
9+ process ( ) {
10+ return "module.exports = {};" ;
11+ } ,
12+ getCacheKey ( ) {
13+ // The output is always the same.
14+ return "cssTransform" ;
15+ }
16+ } ;
Original file line number Diff line number Diff line change 1+ // Copied from Create React APP
2+
3+ "use strict" ;
4+
5+ const path = require ( "path" ) ;
6+ const camelcase = require ( "camelcase" ) ;
7+
8+ // This is a custom Jest transformer turning file imports into filenames.
9+ // http://facebook.github.io/jest/docs/en/webpack.html
10+
11+ module . exports = {
12+ process ( src , filename ) {
13+ const assetFilename = JSON . stringify ( path . basename ( filename ) ) ;
14+
15+ if ( filename . match ( / \. s v g $ / ) ) {
16+ // Based on how SVGR generates a component name:
17+ // https://github.com/smooth-code/svgr/blob/01b194cf967347d43d4cbe6b434404731b87cf27/packages/core/src/state.js#L6
18+ const pascalCaseFileName = camelcase ( path . parse ( filename ) . name , {
19+ pascalCase : true
20+ } ) ;
21+ const componentName = `Svg${ pascalCaseFileName } ` ;
22+ return `const React = require('react');
23+ module.exports = {
24+ __esModule: true,
25+ default: ${ assetFilename } ,
26+ ReactComponent: React.forwardRef(function ${ componentName } (props, ref) {
27+ return {
28+ $$typeof: Symbol.for('react.element'),
29+ type: 'svg',
30+ ref: ref,
31+ key: null,
32+ props: Object.assign({}, props, {
33+ children: ${ assetFilename }
34+ })
35+ };
36+ }),
37+ };` ;
38+ }
39+
40+ return `module.exports = ${ assetFilename } ;` ;
41+ }
42+ } ;
Original file line number Diff line number Diff line change 1+ "use strict" ;
2+
3+ const jestConfig = {
4+ collectCoverageFrom : [ "<rootDir>/src/lib/**/*.{js,jsx}" ] ,
5+ testPathIgnorePatterns : [ "/node_modules/" , "/dist/" ] ,
6+ transform : {
7+ "^.+\\.(js|jsx|ts|tsx)$" : `${ __dirname } /jest/babelTransform.js` ,
8+ "^.+\\.css$" : `${ __dirname } /jest/cssTransform.js` ,
9+ "^(?!.*\\.(js|jsx|ts|tsx|css|json)$)" : `${ __dirname } /jest/fileTransform.js`
10+ } ,
11+ transformIgnorePatterns : [
12+ "[/\\\\]node_modules[/\\\\].+\\.(js|jsx|ts|tsx)$" ,
13+ "^.+\\.module\\.(css|sass|scss)$"
14+ ] ,
15+ coverageThreshold : {
16+ global : {
17+ statements : 85 ,
18+ branches : 85 ,
19+ lines : 85 ,
20+ functions : 85
21+ }
22+ }
23+ } ;
24+
25+ module . exports = jestConfig ;
Original file line number Diff line number Diff line change 11"use strict" ;
22
3- console . log ( "test" ) ;
3+ process . env . BABEL_ENV = "test" ;
4+ process . env . NODE_ENV = "test" ;
5+ process . env . PUBLIC_URL = "" ;
6+
7+ const jest = require ( "jest" ) ;
8+ const fs = require ( "fs" ) ;
9+ let jestConfig = require ( "../configs/jestConfig" ) ;
10+
11+ const packageJson = JSON . parse ( fs . readFileSync ( "./package.json" ) ) ;
12+
13+ if ( fs . existsSync ( "./src/setupTest.js" ) ) {
14+ jestConfig . setupFilesAfterEnv = [ "<rootDir>/src/setupTest.js" ] ;
15+ }
16+
17+ if ( packageJson . jest ) {
18+ jestConfig = { ...jestConfig , ...packageJson . jest } ;
19+ }
20+
21+ args . unshift ( "--ci" ) ;
22+ args . unshift ( "--config" , JSON . stringify ( jestConfig ) ) ;
23+
24+ jest . run ( process . argv . slice ( 2 ) ) ;
You can’t perform that action at this time.
0 commit comments