Skip to content

Commit

Permalink
fix: unescape html characters (#37)
Browse files Browse the repository at this point in the history
  • Loading branch information
ASaiAnudeep committed Nov 11, 2023
1 parent e3c18be commit a44248f
Show file tree
Hide file tree
Showing 11 changed files with 39 additions and 19 deletions.
29 changes: 21 additions & 8 deletions package-lock.json

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

1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
"dependencies": {
"fast-xml-parser": "^4.3.2",
"globrex": "^0.1.2",
"html-escaper": "^3.0.3",
"totalist": "^3.0.0"
},
"devDependencies": {
Expand Down
3 changes: 3 additions & 0 deletions src/models/TestCase.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,10 @@ declare class TestCase {
stack_trace: string;
steps: TestStep[];
meta_data: Map<string,string>;

setFailure: SetFailureFunction
}
export type SetFailureFunction = (value: string) => string;

declare namespace TestCase { }

Expand Down
6 changes: 6 additions & 0 deletions src/models/TestCase.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
const { unescape } = require('html-escaper');

class TestCase {

constructor() {
Expand All @@ -15,6 +17,10 @@ class TestCase {
this.steps = [];
this.meta_data = new Map();
}

setFailure(value) {
this.failure = value ? unescape(value) : value;
}

}

Expand Down
5 changes: 1 addition & 4 deletions src/parsers/cucumber.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
/*
* Parser for both Mocha Json report and Mochawesome json
*/
const { resolveFilePath } = require('../helpers/helper');

const TestResult = require('../models/TestResult');
Expand Down Expand Up @@ -28,7 +25,7 @@ function getTestCase(rawCase) {
}
if (rawCase.state && rawCase.state === "failed") {
test_case.status = 'FAIL';
test_case.failure = rawCase.errorStack;
test_case.setFailure(rawCase.errorStack);
}
else {
test_case.status = 'PASS';
Expand Down
2 changes: 1 addition & 1 deletion src/parsers/junit.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ function getTestCase(rawCase, suiteProperties) {
}
if (rawCase.failure && rawCase.failure.length > 0) {
test_case.status = 'FAIL';
test_case.failure = rawCase.failure[0]["@_message"];
test_case.setFailure(rawCase.failure[0]["@_message"]);
} else {
test_case.status = 'PASS';
}
Expand Down
2 changes: 1 addition & 1 deletion src/parsers/mocha.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ function getTestCase(rawCase) {
}
else if (rawCase.state && rawCase.state === "failed") {
test_case.status = 'FAIL';
test_case.failure = rawCase.err["message"];
test_case.setFailure(rawCase.err["message"]);
}
else {
test_case.status = 'PASS';
Expand Down
2 changes: 1 addition & 1 deletion src/parsers/testng.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ function getTestCase(rawCase, testCaseToGroupMap) {
})
}
if (rawCase.exception) {
test_case.failure = rawCase.exception[0].message;
test_case.setFailure(rawCase.exception[0].message);
}
if (rawCase['@_retried'] === true) {
test_case.status = 'RETRY';
Expand Down
2 changes: 1 addition & 1 deletion src/parsers/xunit.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ function getTestCase(rawCase) {
}
else if (rawCase.failure && rawCase.failure.length > 0) {
test_case.status = 'FAIL';
test_case.failure = rawCase.failure[0]["message"];
test_case.setFailure(rawCase.failure[0]["message"]);
}
else {
test_case.status = 'PASS';
Expand Down
2 changes: 1 addition & 1 deletion tests/data/testng/single-suite-multiple-tests.xml
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@
</params>
<exception class="org.openqa.selenium.TimeoutException">
<message>
<![CDATA[Expected condition failed: : 95ddbda01ea4b3dbcb049e681a6...}]]>
<![CDATA[Expected condition failed: : &lt;95ddbda01ea4b3dbcb049e681a6&gt;]]>
</message>
<full-stacktrace>
<![CDATA[org.openqa.seleniumn(RemoteTestNGStarter.java:109)]]>
Expand Down
4 changes: 2 additions & 2 deletions tests/parser.testng.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ describe('Parser - TestNG', () => {
"skipped": 0,
"duration": 57111,
"status": "FAIL",
"failure": "Expected condition failed: : 95ddbda01ea4b3dbcb049e681a6...}",
"failure": "Expected condition failed: : <95ddbda01ea4b3dbcb049e681a6>",
"stack_trace": "",
"meta_data": new Map(),
"steps": []
Expand Down Expand Up @@ -788,7 +788,7 @@ describe('Parser - TestNG', () => {
"skipped": 0,
"duration": 57111,
"status": "FAIL",
"failure": "Expected condition failed: : 95ddbda01ea4b3dbcb049e681a6...}",
"failure": "Expected condition failed: : <95ddbda01ea4b3dbcb049e681a6>",
"stack_trace": "",
"meta_data": new Map(),
"steps": []
Expand Down

0 comments on commit a44248f

Please sign in to comment.