Compare commits

..

17 Commits

Author SHA1 Message Date
Jozef Izso
fd1c798d8d Upgrade actions/setup-node to v5
This action runs using NodeJS 24 and requires GitHub Runner v2.327.1 and newer
https://github.com/actions/setup-node/releases/tag/v5.0.0
2025-09-12 13:16:20 +02:00
Jozef Izso
2211cf1035 Upgrade actions/checkout to v5
This action runs using NodeJS 24 and requires GitHub Runner v2.327.1 and newer
https://github.com/actions/checkout/releases/tag/v5.0.0
2025-09-12 13:15:16 +02:00
Jozef Izso
be3721d54a Merge pull request #657 from dorny/feature/update_packages 2025-09-12 13:09:48 +02:00
Jozef Izso
d171d89cd4 Update dependencies to latest minor releases 2025-09-12 13:07:41 +02:00
Jozef Izso
661decd3af Upgrade jest to v30.1.3
https://github.com/jestjs/jest/releases/tag/v30.1.0
2025-09-12 13:03:19 +02:00
Jozef Izso
bd9e36bf0c Upgrade @types/picomatch to match the picomatch v4 used as main dependency 2025-09-12 13:00:45 +02:00
Jozef Izso
9642942c97 Upgrade @types/jest to match the jest v30 used as main dependency 2025-09-12 13:00:09 +02:00
Jozef Izso
aa953f36f9 Merge pull request #646 from dorny/dependabot/npm_and_yarn/typescript-5.9.2 2025-08-05 12:03:02 +02:00
dependabot[bot]
f686ce916a Bump typescript from 5.8.3 to 5.9.2
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.8.3 to 5.9.2.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.8.3...v5.9.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-version: 5.9.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-31 23:43:00 +00:00
Jozef Izso
b14337a039 Merge pull request #632 from dorny/feature/631_jest_v30 2025-07-14 16:09:03 +02:00
Jozef Izso
ec1e910416 Merge pull request #630 from dorny/chore/shadowed_variables 2025-07-14 16:08:51 +02:00
Jozef Izso
353a438514 Merge pull request #637 from dorny/bugfix/610-report-title-not-working 2025-07-14 16:08:33 +02:00
Jozef Izso
9c4a54379f Upgrade jest to v30
Update `jest` package to v30.0.4
2025-07-09 14:16:56 +02:00
Jozef Izso
07e5c648b5 Define the report-title attribute in action definition
Fixes missing attribute from PR #568
2025-07-09 14:04:01 +02:00
Jozef Izso
4d84da17a1 Upgrade jest to v30 2025-06-29 16:55:36 +02:00
Jozef Izso
1c33c4c823 Rebuild dist/ code 2025-06-29 16:26:12 +02:00
Jozef Izso
eea8b67eb1 Refactor variable names
Fixes error `no-shadow`: Disallow variable declarations from shadowing variables declared in the outer scope.
2025-06-29 16:22:07 +02:00
19 changed files with 1716 additions and 1356 deletions

View File

@@ -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'

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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 {

View File

@@ -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 {

View File

@@ -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 {

View File

@@ -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 {

View File

@@ -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 {

View File

@@ -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 {

View File

@@ -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 {

View File

@@ -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 {

View File

@@ -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 {

View File

@@ -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/)
}) })
}) })

View File

@@ -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
View File

@@ -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,
'***': '*', '***': '*',
'**/**': '**', '**/**': '**',
'**/**/**': '**' '**/**/**': '**'

3010
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -42,15 +42,15 @@
"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": "^7.18.0",
"@typescript-eslint/parser": "^7.18.0", "@typescript-eslint/parser": "^7.18.0",
@@ -61,14 +61,13 @@
"eslint-plugin-github": "^4.10.2", "eslint-plugin-github": "^4.10.2",
"eslint-plugin-import": "^2.32.0", "eslint-plugin-import": "^2.32.0",
"eslint-plugin-jest": "^28.14.0", "eslint-plugin-jest": "^28.14.0",
"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",

View File

@@ -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)