diff --git a/.github/workflows/cov packages.yml b/.github/workflows/cov packages.yml index 8949a203e..3790806ab 100644 --- a/.github/workflows/cov packages.yml +++ b/.github/workflows/cov packages.yml @@ -24,4 +24,40 @@ jobs: with: working-directory: packages/designer test-script: npm test -- --jest-ci --jest-json --jest-coverage --jest-testLocationInResults --jest-outputFile=report.json + skip-step: install + cov-renderer-core: + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v2 + + - uses: actions/setup-node@v2 + with: + node-version: '14' + + - name: install + run: npm i && npm run setup:skip-build + + - uses: ArtiomTr/jest-coverage-report-action@v2 + with: + working-directory: packages/renderer-core + test-script: npm test -- --jest-ci --jest-json --jest-coverage --jest-testLocationInResults --jest-outputFile=report.json + skip-step: install + cov-react-simulator-renderer: + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v2 + + - uses: actions/setup-node@v2 + with: + node-version: '14' + + - name: install + run: npm i && npm run setup:skip-build + + - uses: ArtiomTr/jest-coverage-report-action@v2 + with: + working-directory: packages/react-simulator-renderer + test-script: npm test -- --jest-ci --jest-json --jest-coverage --jest-testLocationInResults --jest-outputFile=report.json skip-step: install \ No newline at end of file diff --git a/packages/react-renderer/jest.config.js b/packages/react-renderer/jest.config.js index 00bf21f6d..74fdef175 100644 --- a/packages/react-renderer/jest.config.js +++ b/packages/react-renderer/jest.config.js @@ -1,15 +1,32 @@ -module.exports = { +const fs = require('fs'); +const { join } = require('path'); +const esModules = ['zen-logger'].join('|'); +const pkgNames = fs.readdirSync(join('..')).filter(pkgName => !pkgName.startsWith('.')); + +const jestConfig = { // transform: { // '^.+\\.[jt]sx?$': 'babel-jest', // // '^.+\\.(ts|tsx)$': 'ts-jest', // // '^.+\\.(js|jsx)$': 'babel-jest', // }, + // testMatch: ['**/document/node/node.test.ts'], + // testMatch: ['**/designer/builtin-hotkey.test.ts'], + // testMatch: ['**/plugin/plugin-manager.test.ts'], // testMatch: ['(/tests?/.*(test))\\.[jt]s$'], + transformIgnorePatterns: [ + `/node_modules/(?!${esModules})/`, + ], moduleFileExtensions: ['ts', 'tsx', 'js', 'json'], collectCoverage: true, collectCoverageFrom: [ - 'src/**/*.{ts,tsx}', + 'src/**/*.ts', + '!src/**/*.d.ts', '!**/node_modules/**', - '!**/vendor/**', ], }; + +// 只对本仓库内的 pkg 做 mapping +jestConfig.moduleNameMapper = {}; +jestConfig.moduleNameMapper[`^@alilc/lowcode\\-(${pkgNames.join('|')})$`] = '/../$1/src'; + +module.exports = jestConfig; \ No newline at end of file diff --git a/packages/react-simulator-renderer/jest.config.js b/packages/react-simulator-renderer/jest.config.js index 7955f92bd..28b46c249 100644 --- a/packages/react-simulator-renderer/jest.config.js +++ b/packages/react-simulator-renderer/jest.config.js @@ -18,7 +18,7 @@ const jestConfig = { ], setupFiles: ['./test/utils/host.ts'], moduleFileExtensions: ['ts', 'tsx', 'js', 'json'], - collectCoverage: false, + collectCoverage: true, collectCoverageFrom: [ 'src/**/*.ts', '!src/**/*.d.ts', diff --git a/packages/renderer-core/jest.config.js b/packages/renderer-core/jest.config.js index 6fce0fb84..4c28c1044 100644 --- a/packages/renderer-core/jest.config.js +++ b/packages/renderer-core/jest.config.js @@ -16,7 +16,7 @@ const jestConfig = { ], setupFiles: ['./tests/fixtures/unhandled-rejection.ts'], moduleFileExtensions: ['ts', 'tsx', 'js', 'json'], - collectCoverage: false, + collectCoverage: true, collectCoverageFrom: [ 'src/**/*.ts', '!src/**/*.d.ts',