mirror of
https://github.com/dorny/test-reporter.git
synced 2026-02-03 19:55:22 -08:00
Compare commits
22 Commits
v2.1.1
...
feature/60
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4344e43b30 | ||
|
|
8a2a2093e5 | ||
|
|
4277f239de | ||
|
|
aaa58cbe8b | ||
|
|
34d8269ede | ||
|
|
fd1c798d8d | ||
|
|
2211cf1035 | ||
|
|
be3721d54a | ||
|
|
d171d89cd4 | ||
|
|
661decd3af | ||
|
|
bd9e36bf0c | ||
|
|
9642942c97 | ||
|
|
aa953f36f9 | ||
|
|
f686ce916a | ||
|
|
b14337a039 | ||
|
|
ec1e910416 | ||
|
|
353a438514 | ||
|
|
9c4a54379f | ||
|
|
07e5c648b5 | ||
|
|
4d84da17a1 | ||
|
|
1c33c4c823 | ||
|
|
eea8b67eb1 |
@@ -1,4 +0,0 @@
|
|||||||
dist/
|
|
||||||
lib/
|
|
||||||
node_modules/
|
|
||||||
jest.config.js
|
|
||||||
4
.github/workflows/check-dist.yml
vendored
4
.github/workflows/check-dist.yml
vendored
@@ -21,10 +21,10 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
|
|
||||||
- name: Set Node.js
|
- name: Set Node.js
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v5
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
|
|
||||||
|
|||||||
4
.github/workflows/ci.yml
vendored
4
.github/workflows/ci.yml
vendored
@@ -13,8 +13,8 @@ jobs:
|
|||||||
name: Build & Test
|
name: Build & Test
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
- uses: actions/setup-node@v4
|
- uses: actions/setup-node@v5
|
||||||
with:
|
with:
|
||||||
node-version-file: '.nvmrc'
|
node-version-file: '.nvmrc'
|
||||||
- run: npm ci
|
- run: npm ci
|
||||||
|
|||||||
2
.github/workflows/manual-run.yml
vendored
2
.github/workflows/manual-run.yml
vendored
@@ -8,7 +8,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
- run: npm ci
|
- run: npm ci
|
||||||
- run: npm run build
|
- run: npm run build
|
||||||
- run: npm test
|
- run: npm test
|
||||||
|
|||||||
2
.github/workflows/test-report.yml
vendored
2
.github/workflows/test-report.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
|||||||
name: Workflow test
|
name: Workflow test
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
- uses: ./
|
- uses: ./
|
||||||
with:
|
with:
|
||||||
artifact: test-results
|
artifact: test-results
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
||||||
|
|
||||||
exports[`dart-json tests matches report snapshot 1`] = `
|
exports[`dart-json tests matches report snapshot 1`] = `
|
||||||
TestRunResult {
|
TestRunResult {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
||||||
|
|
||||||
exports[`dotnet-nunit tests report from ./reports/dotnet test results matches snapshot 1`] = `
|
exports[`dotnet-nunit tests report from ./reports/dotnet test results matches snapshot 1`] = `
|
||||||
TestRunResult {
|
TestRunResult {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
||||||
|
|
||||||
exports[`dotnet-trx tests matches dotnet-trx report snapshot 1`] = `
|
exports[`dotnet-trx tests matches dotnet-trx report snapshot 1`] = `
|
||||||
TestRunResult {
|
TestRunResult {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
||||||
|
|
||||||
exports[`golang-json tests report from ./reports/dotnet test results matches snapshot 1`] = `
|
exports[`golang-json tests report from ./reports/dotnet test results matches snapshot 1`] = `
|
||||||
TestRunResult {
|
TestRunResult {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
||||||
|
|
||||||
exports[`java-junit tests report from apache/pulsar single suite test results matches snapshot 1`] = `
|
exports[`java-junit tests report from apache/pulsar single suite test results matches snapshot 1`] = `
|
||||||
TestRunResult {
|
TestRunResult {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
||||||
|
|
||||||
exports[`jest-junit tests parsing ESLint report without timing information works - PR #134 1`] = `
|
exports[`jest-junit tests parsing ESLint report without timing information works - PR #134 1`] = `
|
||||||
TestRunResult {
|
TestRunResult {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
||||||
|
|
||||||
exports[`mocha-json tests report from ./reports/mocha-json test results matches snapshot 1`] = `
|
exports[`mocha-json tests report from ./reports/mocha-json test results matches snapshot 1`] = `
|
||||||
TestRunResult {
|
TestRunResult {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
||||||
|
|
||||||
exports[`rspec-json tests report from ./reports/rspec-json test results matches snapshot 1`] = `
|
exports[`rspec-json tests report from ./reports/rspec-json test results matches snapshot 1`] = `
|
||||||
TestRunResult {
|
TestRunResult {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
||||||
|
|
||||||
exports[`swift-xunit tests report from swift test results matches snapshot 1`] = `
|
exports[`swift-xunit tests report from swift test results matches snapshot 1`] = `
|
||||||
TestRunResult {
|
TestRunResult {
|
||||||
|
|||||||
@@ -32,6 +32,6 @@ describe('parseNetDuration', () => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
it('throws when string has invalid format', () => {
|
it('throws when string has invalid format', () => {
|
||||||
expect(() => parseNetDuration('12:34:56 not a duration')).toThrowError(/^Invalid format/)
|
expect(() => parseNetDuration('12:34:56 not a duration')).toThrow(/^Invalid format/)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -68,6 +68,10 @@ inputs:
|
|||||||
working-directory:
|
working-directory:
|
||||||
description: Relative path under $GITHUB_WORKSPACE where the repository was checked out
|
description: Relative path under $GITHUB_WORKSPACE where the repository was checked out
|
||||||
required: false
|
required: false
|
||||||
|
report-title:
|
||||||
|
description: Title for the test report summary
|
||||||
|
required: false
|
||||||
|
default: ''
|
||||||
only-summary:
|
only-summary:
|
||||||
description: |
|
description: |
|
||||||
Allows you to generate only the summary.
|
Allows you to generate only the summary.
|
||||||
|
|||||||
5
dist/index.js
generated
vendored
5
dist/index.js
generated
vendored
@@ -837,12 +837,12 @@ class DotnetNunitParser {
|
|||||||
.map(suite => suite.$.name)
|
.map(suite => suite.$.name)
|
||||||
.join('.');
|
.join('.');
|
||||||
const groupName = suitesWithoutTheories[suitesWithoutTheories.length - 1].$.name;
|
const groupName = suitesWithoutTheories[suitesWithoutTheories.length - 1].$.name;
|
||||||
let existingSuite = result.find(existingSuite => existingSuite.name === suiteName);
|
let existingSuite = result.find(suite => suite.name === suiteName);
|
||||||
if (existingSuite === undefined) {
|
if (existingSuite === undefined) {
|
||||||
existingSuite = new test_results_1.TestSuiteResult(suiteName, []);
|
existingSuite = new test_results_1.TestSuiteResult(suiteName, []);
|
||||||
result.push(existingSuite);
|
result.push(existingSuite);
|
||||||
}
|
}
|
||||||
let existingGroup = existingSuite.groups.find(existingGroup => existingGroup.name === groupName);
|
let existingGroup = existingSuite.groups.find(group => group.name === groupName);
|
||||||
if (existingGroup === undefined) {
|
if (existingGroup === undefined) {
|
||||||
existingGroup = new test_results_1.TestGroupResult(groupName, []);
|
existingGroup = new test_results_1.TestGroupResult(groupName, []);
|
||||||
existingSuite.groups.push(existingGroup);
|
existingSuite.groups.push(existingGroup);
|
||||||
@@ -27847,6 +27847,7 @@ module.exports = {
|
|||||||
|
|
||||||
// Replace globs with equivalent patterns to reduce parsing time.
|
// Replace globs with equivalent patterns to reduce parsing time.
|
||||||
REPLACEMENTS: {
|
REPLACEMENTS: {
|
||||||
|
__proto__: null,
|
||||||
'***': '*',
|
'***': '*',
|
||||||
'**/**': '**',
|
'**/**': '**',
|
||||||
'**/**/**': '**'
|
'**/**/**': '**'
|
||||||
|
|||||||
52
eslint.config.mjs
Normal file
52
eslint.config.mjs
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
import github from 'eslint-plugin-github'
|
||||||
|
import prettier from 'eslint-plugin-prettier'
|
||||||
|
import jest from 'eslint-plugin-jest'
|
||||||
|
|
||||||
|
export default [
|
||||||
|
github.getFlatConfigs().recommended,
|
||||||
|
...github.getFlatConfigs().typescript,
|
||||||
|
{
|
||||||
|
files: ['src/**/*.ts'],
|
||||||
|
plugins: {
|
||||||
|
prettier,
|
||||||
|
},
|
||||||
|
rules: {
|
||||||
|
'no-shadow': 'off',
|
||||||
|
'import/no-namespace': 'off',
|
||||||
|
'i18n-text/no-en': 'off',
|
||||||
|
'prefer-template': 'off',
|
||||||
|
'prettier/prettier': 'error',
|
||||||
|
"@typescript-eslint/array-type": ['error', {default: 'array'}],
|
||||||
|
'@typescript-eslint/no-unused-vars': ['error', {varsIgnorePattern: '^_'}],
|
||||||
|
'@typescript-eslint/no-shadow': ['error'],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
files: ['__tests__/**/*.test.ts'],
|
||||||
|
...jest.configs['flat/recommended'],
|
||||||
|
plugins: {
|
||||||
|
jest,
|
||||||
|
},
|
||||||
|
languageOptions: {
|
||||||
|
globals: jest.environments.globals.globals,
|
||||||
|
},
|
||||||
|
rules: {
|
||||||
|
'i18n-text/no-en': 'off',
|
||||||
|
'import/no-namespace': 'off',
|
||||||
|
"@typescript-eslint/array-type": ['error', {default: 'array'}],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ignores: [
|
||||||
|
'dist/**',
|
||||||
|
'lib/**',
|
||||||
|
'node_modules/**',
|
||||||
|
'__tests__/__snapshots__/**',
|
||||||
|
'__tests__/__results__/**',
|
||||||
|
'assets/**',
|
||||||
|
'reports/**',
|
||||||
|
'eslint.config.mjs',
|
||||||
|
'jest.config.js',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
]
|
||||||
4876
package-lock.json
generated
4876
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
31
package.json
31
package.json
@@ -8,7 +8,7 @@
|
|||||||
"build": "tsc",
|
"build": "tsc",
|
||||||
"format": "prettier --write **/*.ts",
|
"format": "prettier --write **/*.ts",
|
||||||
"format-check": "prettier --check **/*.ts",
|
"format-check": "prettier --check **/*.ts",
|
||||||
"lint": "eslint src/**/*.ts",
|
"lint": "eslint",
|
||||||
"package": "ncc build --license licenses.txt && eolConverter lf 'dist/*'",
|
"package": "ncc build --license licenses.txt && eolConverter lf 'dist/*'",
|
||||||
"version": "npm run build && npm run package && git add dist/*",
|
"version": "npm run build && npm run package && git add dist/*",
|
||||||
"test": "jest --ci --reporters=default --reporters=jest-junit",
|
"test": "jest --ci --reporters=default --reporters=jest-junit",
|
||||||
@@ -42,33 +42,32 @@
|
|||||||
"adm-zip": "^0.5.16",
|
"adm-zip": "^0.5.16",
|
||||||
"fast-glob": "^3.3.3",
|
"fast-glob": "^3.3.3",
|
||||||
"got": "^11.8.6",
|
"got": "^11.8.6",
|
||||||
"picomatch": "^4.0.2",
|
"picomatch": "^4.0.3",
|
||||||
"xml2js": "^0.6.2"
|
"xml2js": "^0.6.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@octokit/webhooks-types": "^7.6.1",
|
"@octokit/webhooks-types": "^7.6.1",
|
||||||
"@types/adm-zip": "^0.5.7",
|
"@types/adm-zip": "^0.5.7",
|
||||||
"@types/jest": "^29.5.14",
|
"@types/jest": "^30.0.0",
|
||||||
"@types/node": "^20.19.2",
|
"@types/node": "^20.19.13",
|
||||||
"@types/picomatch": "^2.3.4",
|
"@types/picomatch": "^4.0.2",
|
||||||
"@types/xml2js": "^0.4.14",
|
"@types/xml2js": "^0.4.14",
|
||||||
"@typescript-eslint/eslint-plugin": "^7.18.0",
|
"@typescript-eslint/eslint-plugin": "^8.43.0",
|
||||||
"@typescript-eslint/parser": "^7.18.0",
|
"@typescript-eslint/parser": "^8.43.0",
|
||||||
"@vercel/ncc": "^0.38.3",
|
"@vercel/ncc": "^0.38.3",
|
||||||
"eol-converter-cli": "^1.1.0",
|
"eol-converter-cli": "^1.1.0",
|
||||||
"eslint": "^8.57.1",
|
"eslint": "^9.35.0",
|
||||||
"eslint-import-resolver-typescript": "^3.10.1",
|
"eslint-import-resolver-typescript": "^4.4.4",
|
||||||
"eslint-plugin-github": "^4.10.2",
|
"eslint-plugin-github": "^6.0.0",
|
||||||
"eslint-plugin-import": "^2.32.0",
|
"eslint-plugin-import": "^2.32.0",
|
||||||
"eslint-plugin-jest": "^28.14.0",
|
"eslint-plugin-jest": "^29.0.1",
|
||||||
"eslint-plugin-prettier": "^5.5.1",
|
"eslint-plugin-prettier": "^5.5.4",
|
||||||
"jest": "^29.7.0",
|
"jest": "^30.1.3",
|
||||||
"jest-circus": "^29.7.0",
|
|
||||||
"jest-junit": "^16.0.0",
|
"jest-junit": "^16.0.0",
|
||||||
"js-yaml": "^4.1.0",
|
"js-yaml": "^4.1.0",
|
||||||
"prettier": "^3.6.2",
|
"prettier": "^3.6.2",
|
||||||
"ts-jest": "^29.4.0",
|
"ts-jest": "^29.4.1",
|
||||||
"typescript": "^5.8.3"
|
"typescript": "^5.9.2"
|
||||||
},
|
},
|
||||||
"jest-junit": {
|
"jest-junit": {
|
||||||
"suiteName": "jest tests",
|
"suiteName": "jest tests",
|
||||||
|
|||||||
@@ -77,13 +77,13 @@ export class DotnetNunitParser implements TestParser {
|
|||||||
.join('.')
|
.join('.')
|
||||||
const groupName = suitesWithoutTheories[suitesWithoutTheories.length - 1].$.name
|
const groupName = suitesWithoutTheories[suitesWithoutTheories.length - 1].$.name
|
||||||
|
|
||||||
let existingSuite = result.find(existingSuite => existingSuite.name === suiteName)
|
let existingSuite = result.find(suite => suite.name === suiteName)
|
||||||
if (existingSuite === undefined) {
|
if (existingSuite === undefined) {
|
||||||
existingSuite = new TestSuiteResult(suiteName, [])
|
existingSuite = new TestSuiteResult(suiteName, [])
|
||||||
result.push(existingSuite)
|
result.push(existingSuite)
|
||||||
}
|
}
|
||||||
|
|
||||||
let existingGroup = existingSuite.groups.find(existingGroup => existingGroup.name === groupName)
|
let existingGroup = existingSuite.groups.find(group => group.name === groupName)
|
||||||
if (existingGroup === undefined) {
|
if (existingGroup === undefined) {
|
||||||
existingGroup = new TestGroupResult(groupName, [])
|
existingGroup = new TestGroupResult(groupName, [])
|
||||||
existingSuite.groups.push(existingGroup)
|
existingSuite.groups.push(existingGroup)
|
||||||
|
|||||||
Reference in New Issue
Block a user