mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-07 14:05:44 +01:00
jest configuration for ui-packages
This commit is contained in:
11
package.json
11
package.json
@@ -6,6 +6,7 @@
|
||||
],
|
||||
"scripts": {
|
||||
"build": "webpack --mode=development --config=scm-ui/scripts/webpack.config.js",
|
||||
"test": "jest --config=scm-ui/scripts/jest.config.js",
|
||||
"serve": "webpack-dev-server --mode=development --config=scm-ui/scripts/webpack.config.js"
|
||||
},
|
||||
"devDependencies": {
|
||||
@@ -14,13 +15,17 @@
|
||||
"@babel/preset-env": "^7.6.2",
|
||||
"@babel/preset-flow": "^7.0.0",
|
||||
"@babel/preset-react": "^7.0.0",
|
||||
"babel-jest": "^24.9.0",
|
||||
"babel-loader": "^8.0.6",
|
||||
"cache-loader": "^4.1.0",
|
||||
"css-loader": "^3.2.0",
|
||||
"file-loader": "^4.2.0",
|
||||
"flow-mono-cli": "^1.5.0",
|
||||
"jest": "^24.9.0",
|
||||
"jest-junit": "^8.0.0",
|
||||
"mustache": "^3.1.0",
|
||||
"node-sass": "^4.12.0",
|
||||
"prettier": "^1.18.2",
|
||||
"sass-loader": "^8.0.0",
|
||||
"script-loader": "^0.7.2",
|
||||
"speed-measure-webpack-plugin": "^1.3.1",
|
||||
@@ -30,5 +35,9 @@
|
||||
"webpack": "^4.41.0",
|
||||
"webpack-cli": "^3.3.9",
|
||||
"webpack-dev-server": "^3.8.2"
|
||||
}
|
||||
},
|
||||
"resolutions": {
|
||||
"babel-core": "7.0.0-bridge.0"
|
||||
},
|
||||
"dependencies": {}
|
||||
}
|
||||
|
||||
@@ -8,5 +8,10 @@
|
||||
"devDependencies": {
|
||||
"flow-bin": "^0.109.0",
|
||||
"flow-typed": "^2.6.1"
|
||||
},
|
||||
"jest": {
|
||||
"transform": {
|
||||
"^.+\\.js$": "../../scm-ui/scripts/babelMonoRepoTransformer.js"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,7 +12,8 @@ import RepositoryConfig from "./RepositoryConfig";
|
||||
|
||||
// repository
|
||||
|
||||
const gitPredicate = (props: Object) => {
|
||||
// @visibleForTesting
|
||||
export const gitPredicate = (props: Object) => {
|
||||
return props.repository && props.repository.type === "git";
|
||||
};
|
||||
|
||||
|
||||
15
scm-plugins/scm-git-plugin/src/main/js/index.test.js
Normal file
15
scm-plugins/scm-git-plugin/src/main/js/index.test.js
Normal file
@@ -0,0 +1,15 @@
|
||||
// @flow
|
||||
import { gitPredicate } from "./index";
|
||||
|
||||
describe("test gi predicate", () => {
|
||||
it("should return false", () => {
|
||||
expect(gitPredicate()).toBe(false);
|
||||
expect(gitPredicate({})).toBe(false);
|
||||
expect(gitPredicate({ repository: {} })).toBe(false);
|
||||
expect(gitPredicate({ repository: { type: "hg" } })).toBe(false);
|
||||
});
|
||||
|
||||
it("should return true", () => {
|
||||
expect(gitPredicate({ repository: { type: "fir" } })).toBe(true);
|
||||
});
|
||||
});
|
||||
12
scm-ui/scripts/babelMonoRepoTransformer.js
Normal file
12
scm-ui/scripts/babelMonoRepoTransformer.js
Normal file
@@ -0,0 +1,12 @@
|
||||
/**
|
||||
* Read and use .babelrc from packages
|
||||
*/
|
||||
const { join, resolve } = require("path");
|
||||
const { createTransformer } = require("babel-jest");
|
||||
|
||||
const packagePath = resolve(__dirname, "../");
|
||||
const packageGlob = join(packagePath, "*");
|
||||
|
||||
module.exports = createTransformer({
|
||||
babelrcRoots: packageGlob
|
||||
});
|
||||
18
scm-ui/scripts/jest.config.js
Normal file
18
scm-ui/scripts/jest.config.js
Normal file
@@ -0,0 +1,18 @@
|
||||
const path = require("path");
|
||||
const rootDir = path.resolve(__dirname, "..");
|
||||
const reportDirectory = path.join(rootDir, "target", "jest-reports");
|
||||
|
||||
module.exports = {
|
||||
rootDir,
|
||||
transform: { "^.+\\.js$": "./scripts/babelMonoRepoTransformer.js" },
|
||||
collectCoverage: true,
|
||||
coverageDirectory: path.join(reportDirectory, "coverage"),
|
||||
coveragePathIgnorePatterns: ["src/tests/.*"],
|
||||
reporters: [
|
||||
"default",
|
||||
[
|
||||
"jest-junit",
|
||||
{ outputDirectory: reportDirectory, outputName: "TEST-all.xml" }
|
||||
]
|
||||
]
|
||||
};
|
||||
@@ -21,7 +21,6 @@
|
||||
"fetch-mock": "^7.2.5",
|
||||
"flow-bin": "^0.109.0",
|
||||
"flow-typed": "^2.5.1",
|
||||
"jest": "^23.5.0",
|
||||
"raf": "^3.4.0",
|
||||
"react-router-enzyme-context": "^1.2.0"
|
||||
},
|
||||
@@ -43,5 +42,10 @@
|
||||
},
|
||||
"resolutions": {
|
||||
"gitdiff-parser": "https://github.com/cloudogu/gitdiff-parser#3a72da4a8e3d9bfb4b9e01a43e85628c19f26cc4"
|
||||
},
|
||||
"jest": {
|
||||
"transform": {
|
||||
"^.+\\.js$": "../scripts/babelMonoRepoTransformer.js"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
"private": true,
|
||||
"main": "dist/ui-webapp.js",
|
||||
"dependencies": {
|
||||
"@babel/polyfill": "^7.0.0",
|
||||
"@fortawesome/fontawesome-free": "^5.3.1",
|
||||
"@scm-manager/ui-components": "2.0.0-SNAPSHOT",
|
||||
"@scm-manager/ui-extensions": "^0.1.2",
|
||||
@@ -63,7 +62,6 @@
|
||||
"fetch-mock": "^6.5.0",
|
||||
"flow-bin": "^0.109.0",
|
||||
"flow-typed": "^2.6.1",
|
||||
"jest": "^23.5.0",
|
||||
"node-sass": "^4.9.3",
|
||||
"node-sass-chokidar": "^1.3.0",
|
||||
"npm-run-all": "^4.1.3",
|
||||
@@ -73,5 +71,10 @@
|
||||
"react-test-renderer": "^16.4.1",
|
||||
"redux-mock-store": "^1.5.3",
|
||||
"systemjs": "0.21.6"
|
||||
},
|
||||
"jest": {
|
||||
"transform": {
|
||||
"^.+\\.js$": "../scripts/babelMonoRepoTransformer.js"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user