Try alternative jest transform
This commit is contained in:
parent
4386b5c960
commit
9449ae4314
@ -1,27 +1,28 @@
|
|||||||
const aliases = require('./aliases.config');
|
const aliases = require("./aliases.config");
|
||||||
const path = require('path');
|
const path = require("path");
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
// https://babeljs.io/docs/en/options#babelrcroots
|
// https://babeljs.io/docs/en/options#babelrcroots
|
||||||
presets: [
|
presets: [
|
||||||
[
|
[
|
||||||
'@babel/preset-env',
|
"@babel/preset-env",
|
||||||
{
|
{
|
||||||
targets: {
|
targets: {
|
||||||
ie: '11',
|
ie: "11"
|
||||||
},
|
}
|
||||||
},
|
}
|
||||||
],
|
],
|
||||||
'@babel/preset-react',
|
"@babel/preset-react"
|
||||||
],
|
],
|
||||||
|
babelrcRoots: ["./platform/*", "./extensions/*"],
|
||||||
plugins: [
|
plugins: [
|
||||||
'@babel/plugin-proposal-class-properties',
|
"@babel/plugin-proposal-class-properties",
|
||||||
'@babel/plugin-proposal-object-rest-spread',
|
"@babel/plugin-proposal-object-rest-spread",
|
||||||
'@babel/plugin-syntax-dynamic-import',
|
"@babel/plugin-syntax-dynamic-import",
|
||||||
'@babel/plugin-transform-regenerator',
|
"@babel/plugin-transform-regenerator",
|
||||||
'@babel/plugin-transform-runtime',
|
"@babel/plugin-transform-runtime",
|
||||||
[
|
[
|
||||||
'module-resolver',
|
"module-resolver",
|
||||||
{
|
{
|
||||||
// https://github.com/tleunen/babel-plugin-module-resolver/issues/338
|
// https://github.com/tleunen/babel-plugin-module-resolver/issues/338
|
||||||
// There seem to be a bug with module-resolver with a mono-repo setup:
|
// There seem to be a bug with module-resolver with a mono-repo setup:
|
||||||
@ -31,18 +32,18 @@ module.exports = {
|
|||||||
// This will return undefined if aliases has no key for the sourcePath,
|
// This will return undefined if aliases has no key for the sourcePath,
|
||||||
// in which case module-resolver will fallback on its default behaviour.
|
// in which case module-resolver will fallback on its default behaviour.
|
||||||
return aliases[sourcePath];
|
return aliases[sourcePath];
|
||||||
},
|
}
|
||||||
},
|
}
|
||||||
],
|
]
|
||||||
],
|
],
|
||||||
env: {
|
env: {
|
||||||
debug: {
|
debug: {
|
||||||
sourceMaps: 'inline',
|
sourceMaps: "inline",
|
||||||
retainLines: true,
|
retainLines: true
|
||||||
},
|
},
|
||||||
build: {
|
build: {
|
||||||
ignore: ['**/*.test.jsx', '**/*.test.js', '__snapshots__', '__tests__'],
|
ignore: ["**/*.test.jsx", "**/*.test.js", "__snapshots__", "__tests__"]
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
ignore: ['node_modules'],
|
ignore: ["node_modules"]
|
||||||
};
|
};
|
||||||
|
|||||||
39
platform/viewer/.gitattributes
vendored
39
platform/viewer/.gitattributes
vendored
@ -1,39 +0,0 @@
|
|||||||
# These settings are for any web project
|
|
||||||
|
|
||||||
# Handle line endings automatically for files detected as text
|
|
||||||
# and leave all files detected as binary untouched.
|
|
||||||
* text=auto
|
|
||||||
|
|
||||||
# Force the following filetypes to have unix eols, so Windows does not break them
|
|
||||||
*.* text eol=lf
|
|
||||||
|
|
||||||
# Windows forced line-endings
|
|
||||||
/.idea/* text eol=crlf
|
|
||||||
|
|
||||||
#
|
|
||||||
## These files are binary and should be left untouched
|
|
||||||
#
|
|
||||||
|
|
||||||
# (binary is a macro for -text -diff)
|
|
||||||
*.png binary
|
|
||||||
*.jpg binary
|
|
||||||
*.jpeg binary
|
|
||||||
*.gif binary
|
|
||||||
*.ico binary
|
|
||||||
*.mov binary
|
|
||||||
*.mp4 binary
|
|
||||||
*.mp3 binary
|
|
||||||
*.flv binary
|
|
||||||
*.fla binary
|
|
||||||
*.swf binary
|
|
||||||
*.gz binary
|
|
||||||
*.zip binary
|
|
||||||
*.7z binary
|
|
||||||
*.ttf binary
|
|
||||||
*.eot binary
|
|
||||||
*.woff binary
|
|
||||||
*.pyc binary
|
|
||||||
*.pdf binary
|
|
||||||
*.ez binary
|
|
||||||
*.bz2 binary
|
|
||||||
*.swp binary
|
|
||||||
@ -1,45 +0,0 @@
|
|||||||
{
|
|
||||||
"requireCurlyBraces": {
|
|
||||||
"keywords": [ "if", "else", "for", "while", "do" ],
|
|
||||||
"allExcept" : ["return" , "continue", "break"]
|
|
||||||
},
|
|
||||||
"requireSpaceAfterKeywords": [ "if", "else", "for", "while", "do", "switch", "return" ],
|
|
||||||
"requireSpacesInFunctionExpression": {
|
|
||||||
"beforeOpeningCurlyBrace": true
|
|
||||||
},
|
|
||||||
"disallowSpacesInFunctionExpression": {
|
|
||||||
"beforeOpeningRoundBrace": true
|
|
||||||
},
|
|
||||||
"disallowSpacesInsideParentheses": true,
|
|
||||||
"disallowKeywordsOnNewLine": ["else"],
|
|
||||||
"disallowNewlineBeforeBlockStatements": true,
|
|
||||||
"requirePaddingNewLinesAfterUseStrict": true,
|
|
||||||
"requirePaddingNewLinesAfterBlocks": {
|
|
||||||
"allExcept": ["inCallExpressions", "inArrayExpressions", "inProperties"]
|
|
||||||
},
|
|
||||||
"requireObjectKeysOnNewLine": true,
|
|
||||||
"requireSemicolons": true,
|
|
||||||
"requireSpaceAfterBinaryOperators": true,
|
|
||||||
"requireSpaceAfterComma": true,
|
|
||||||
"requireSpaceBeforeObjectValues": true,
|
|
||||||
"requireSpacesInsideObjectBrackets": "all",
|
|
||||||
"requireLineBreakAfterVariableAssignment": true,
|
|
||||||
"requireSpaceBeforeBinaryOperators": ["+", "-", "/", "*", "=", "==", "===", "!=", "!=="],
|
|
||||||
"disallowSpaceAfterPrefixUnaryOperators": ["++", "--", "+", "-"],
|
|
||||||
"disallowSpaceBeforePostfixUnaryOperators": ["++", "--"],
|
|
||||||
"disallowKeywords": [ "with" ],
|
|
||||||
"disallowMultipleLineBreaks": true,
|
|
||||||
"requireLineFeedAtFileEnd": true,
|
|
||||||
"disallowSpaceAfterObjectKeys": true,
|
|
||||||
"disallowQuotedKeysInObjects": true,
|
|
||||||
"disallowMultipleSpaces": true,
|
|
||||||
"disallowVar": true,
|
|
||||||
"validateLineBreaks": "LF",
|
|
||||||
"validateIndentation": 4,
|
|
||||||
"validateQuoteMarks": {
|
|
||||||
"mark": "'",
|
|
||||||
"escape": true
|
|
||||||
},
|
|
||||||
"validateParameterSeparator": ", ",
|
|
||||||
"requireDollarBeforejQueryAssignment": true
|
|
||||||
}
|
|
||||||
@ -1,93 +0,0 @@
|
|||||||
{
|
|
||||||
// JSHint Default Configuration File (as on JSHint website)
|
|
||||||
// See http://jshint.com/docs/ for more details
|
|
||||||
|
|
||||||
"maxerr": 50, // {int} Maximum error before stopping
|
|
||||||
|
|
||||||
// Enforcing
|
|
||||||
"bitwise": true, // true: Prohibit bitwise operators (&, |, ^, etc.)
|
|
||||||
"camelcase": false, // true: Identifiers must be in camelCase
|
|
||||||
"curly": false, // true: Require {} for every new block or scope
|
|
||||||
"eqeqeq": true, // true: Require triple equals (===) for comparison
|
|
||||||
"forin": true, // true: Require filtering for..in loops with obj.hasOwnProperty()
|
|
||||||
"freeze": true, // true: prohibits overwriting prototypes of native objects such as Array, Date etc.
|
|
||||||
"immed": false, // true: Require immediate invocations to be wrapped in parens e.g. `(function () { } ());`
|
|
||||||
"latedef": false, // true: Require variables/functions to be defined before being used
|
|
||||||
"newcap": false, // true: Require capitalization of all constructor functions e.g. `new F()`
|
|
||||||
"noarg": true, // true: Prohibit use of `arguments.caller` and `arguments.callee`
|
|
||||||
"noempty": true, // true: Prohibit use of empty blocks
|
|
||||||
"nonbsp": true, // true: Prohibit "non-breaking whitespace" characters.
|
|
||||||
"nonew": false, // true: Prohibit use of constructors for side-effects (without assignment)
|
|
||||||
"plusplus": false, // true: Prohibit use of `++` and `--`
|
|
||||||
"quotmark": false, // Quotation mark consistency:
|
|
||||||
// false : do nothing (default)
|
|
||||||
// true : ensure whatever is used is consistent
|
|
||||||
// "single" : require single quotes
|
|
||||||
// "double" : require double quotes
|
|
||||||
"undef": true, // true: Require all non-global variables to be declared (prevents global leaks)
|
|
||||||
"unused": "vars", // Unused variables:
|
|
||||||
// true : all variables, last function parameter
|
|
||||||
// "vars" : all variables only
|
|
||||||
// "strict" : all variables, all function parameters
|
|
||||||
"strict": false, // true: Requires all functions run in ES5 Strict Mode
|
|
||||||
"maxparams": false, // {int} Max number of formal params allowed per function
|
|
||||||
"maxdepth": false, // {int} Max depth of nested blocks (within functions)
|
|
||||||
"maxstatements": false, // {int} Max number statements per function
|
|
||||||
"maxcomplexity": false, // {int} Max cyclomatic complexity per function
|
|
||||||
"maxlen": false, // {int} Max number of characters per line
|
|
||||||
"varstmt": false, // true: Disallow any var statements. Only `let` and `const` are allowed.
|
|
||||||
|
|
||||||
// Relaxing
|
|
||||||
"asi": false, // true: Tolerate Automatic Semicolon Insertion (no semicolons)
|
|
||||||
"boss": false, // true: Tolerate assignments where comparisons would be expected
|
|
||||||
"debug": false, // true: Allow debugger statements e.g. browser breakpoints.
|
|
||||||
"eqnull": false, // true: Tolerate use of `== null`
|
|
||||||
"es5": true, // true: Allow ES5 syntax (ex: getters and setters)
|
|
||||||
"esnext": true, // true: Allow ES.next (ES6) syntax (ex: `const`)
|
|
||||||
"moz": false, // true: Allow Mozilla specific syntax (extends and overrides esnext features)
|
|
||||||
// (ex: `for each`, multiple try/catch, function expression…)
|
|
||||||
"evil": false, // true: Tolerate use of `eval` and `new Function()`
|
|
||||||
"expr": false, // true: Tolerate `ExpressionStatement` as Programs
|
|
||||||
"funcscope": false, // true: Tolerate defining variables inside control statements
|
|
||||||
"globalstrict": false, // true: Allow global "use strict" (also enables 'strict')
|
|
||||||
"iterator": false, // true: Tolerate using the `__iterator__` property
|
|
||||||
"lastsemic": false, // true: Tolerate omitting a semicolon for the last statement of a 1-line block
|
|
||||||
"laxbreak": false, // true: Tolerate possibly unsafe line breakings
|
|
||||||
"laxcomma": false, // true: Tolerate comma-first style coding
|
|
||||||
"loopfunc": false, // true: Tolerate functions being defined in loops
|
|
||||||
"multistr": false, // true: Tolerate multi-line strings
|
|
||||||
"noyield": false, // true: Tolerate generator functions with no yield statement in them.
|
|
||||||
"notypeof": false, // true: Tolerate invalid typeof operator values
|
|
||||||
"proto": false, // true: Tolerate using the `__proto__` property
|
|
||||||
"scripturl": false, // true: Tolerate script-targeted URLs
|
|
||||||
"shadow": false, // true: Allows re-define variables later in code e.g. `var x=1; x=2;`
|
|
||||||
"sub": false, // true: Tolerate using `[]` notation when it can still be expressed in dot notation
|
|
||||||
"supernew": false, // true: Tolerate `new function () { ... };` and `new Object;`
|
|
||||||
"validthis": false, // true: Tolerate using this in a non-constructor function
|
|
||||||
|
|
||||||
// Environments
|
|
||||||
"browser": true, // Web Browser (window, document, etc)
|
|
||||||
"browserify": false, // Browserify (node.js code in the browser)
|
|
||||||
"couch": false, // CouchDB
|
|
||||||
"devel": false, // Development/debugging (alert, confirm, etc)
|
|
||||||
"dojo": false, // Dojo Toolkit
|
|
||||||
"jasmine": false, // Jasmine
|
|
||||||
"jquery": true, // jQuery
|
|
||||||
"mocha": false, // Mocha
|
|
||||||
"mootools": false, // MooTools
|
|
||||||
"node": false, // Node.js
|
|
||||||
"nonstandard": false, // Widely adopted globals (escape, unescape, etc)
|
|
||||||
"phantom": false, // PhantomJS
|
|
||||||
"prototypejs": false, // Prototype and Scriptaculous
|
|
||||||
"qunit": false, // QUnit
|
|
||||||
"rhino": false, // Rhino
|
|
||||||
"shelljs": false, // ShellJS
|
|
||||||
"typed": false, // Globals for typed array constructions
|
|
||||||
"worker": false, // Web Workers
|
|
||||||
"wsh": false, // Windows Scripting Host
|
|
||||||
"yui": false, // Yahoo User Interface
|
|
||||||
"globals": {
|
|
||||||
"require": true,
|
|
||||||
"Package": true // Meteor Package definition
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -11,6 +11,9 @@ module.exports = {
|
|||||||
],
|
],
|
||||||
reporters: ["default", "jest-junit"],
|
reporters: ["default", "jest-junit"],
|
||||||
//
|
//
|
||||||
|
transform: {
|
||||||
|
"^.+\\.js$": path.resolve(__dirname, "./jestBabelTransform.js")
|
||||||
|
},
|
||||||
moduleNameMapper: {
|
moduleNameMapper: {
|
||||||
"\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$":
|
"\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$":
|
||||||
"<rootDir>/src/__mocks__/fileMock.js",
|
"<rootDir>/src/__mocks__/fileMock.js",
|
||||||
|
|||||||
5
platform/viewer/jestBabelTransform.js
Normal file
5
platform/viewer/jestBabelTransform.js
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
const babelJest = require("babel-jest");
|
||||||
|
|
||||||
|
module.exports = babelJest.createTransformer({
|
||||||
|
rootMode: "upward"
|
||||||
|
});
|
||||||
Loading…
Reference in New Issue
Block a user