Skip to content

Commit

Permalink
Fix JUnit message / type fields. (#48)
Browse files Browse the repository at this point in the history
The message and type attributes never worked because they were expected to be nodes rather than attributes.

Note: in some cases it might have previously looked like it worked because when 'message' is not provided the annotation defaults to the first line of 'details' which in some cases happens to be the error.
  • Loading branch information
AnthonyBarbier committed Apr 2, 2024
1 parent ffcf2ef commit d7e5937
Show file tree
Hide file tree
Showing 5 changed files with 24 additions and 8 deletions.
4 changes: 2 additions & 2 deletions __tests__/__snapshots__/java-junit.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ at java.lang.Thread.run(Thread.java:748)
",
"line": 29,
"message": undefined,
"message": "java.lang.AssertionError: expected [1.2.1] but found [1.2.0]",
"path": "pulsar-common/src/test/java/org/apache/pulsar/AddMissingPatchVersionTest.java",
},
"name": "testVersionStrings",
Expand Down Expand Up @@ -100,7 +100,7 @@ at java.lang.Thread.run(Thread.java:748)
",
"line": 29,
"message": undefined,
"message": "java.lang.AssertionError: expected [1.2.1] but found [1.2.0]",
"path": "pulsar-common/src/test/java/org/apache/pulsar/AddMissingPatchVersionTest.java",
},
"name": "testVersionStrings",
Expand Down
11 changes: 9 additions & 2 deletions dist/index.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dist/index.js.map

Large diffs are not rendered by default.

9 changes: 8 additions & 1 deletion src/parsers/java-junit/java-junit-parser.ts
Original file line number Diff line number Diff line change
Expand Up @@ -133,11 +133,18 @@ export class JavaJunitParser implements TestParser {
line = src.line
}

let message
if(typeof failure === 'object') {
message = failure.$.message
if(failure.$?.type) {
message = failure.$.type + ": "+ message
}
}
return {
path: filePath,
line,
details,
message: typeof failure === 'object' ? failure.message : undefined
message
}
}

Expand Down
6 changes: 4 additions & 2 deletions src/parsers/java-junit/java-junit-types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,8 @@ export interface TestCase {

export interface Failure {
_?: string
type: string
message: string
$: {
type?: string
message: string
}
}

0 comments on commit d7e5937

Please sign in to comment.