Fix parsing of ESLint reports in jest-junit format

The [ESLint junit formatter](https://www.npmjs.com/package/eslint-junit)
does not include a total time attribute for the root `<testsuites>`
element.
This commit is contained in:
Philipp Jardas 2021-08-06 14:05:34 +02:00 committed by Jozef Izso
parent 9557e57e83
commit 45526f79fd
6 changed files with 65 additions and 2 deletions

View file

@ -105,4 +105,24 @@ describe('jest-junit tests', () => {
fs.mkdirSync(path.dirname(outputPath), {recursive: true})
fs.writeFileSync(outputPath, report)
})
it('parsing ESLint report without timing information works - PR #134', async () => {
const fixturePath = path.join(__dirname, 'fixtures', 'jest-junit-eslint.xml')
const outputPath = path.join(__dirname, '__outputs__', 'jest-junit-eslint.md')
const filePath = normalizeFilePath(path.relative(__dirname, fixturePath))
const fileContent = fs.readFileSync(fixturePath, {encoding: 'utf8'})
const opts: ParseOptions = {
parseErrors: true,
trackedFiles: ['test.js']
}
const parser = new JestJunitParser(opts)
const result = await parser.parse(filePath, fileContent)
expect(result).toMatchSnapshot()
const report = getReport([result])
fs.mkdirSync(path.dirname(outputPath), {recursive: true})
fs.writeFileSync(outputPath, report)
})
})