mirror of
https://github.com/badges/shields.git
synced 2025-04-18 19:44:04 +03:00
48 lines
1.1 KiB
JavaScript
48 lines
1.1 KiB
JavaScript
import fs from 'fs'
|
|
|
|
let data
|
|
let title
|
|
|
|
try {
|
|
if (process.argv.length < 4) {
|
|
throw new Error()
|
|
}
|
|
title = process.argv[2]
|
|
data = JSON.parse(fs.readFileSync(process.argv[3]))
|
|
} catch (e) {
|
|
process.stdout.write('failed to write summary\n')
|
|
process.exit(1)
|
|
}
|
|
|
|
process.stdout.write(`# ${title}\n\n`)
|
|
|
|
if (data.stats.passes > 0) {
|
|
process.stdout.write(`✔ ${data.stats.passes} passed\n`)
|
|
}
|
|
if (data.stats.failures > 0) {
|
|
process.stdout.write(`✖ ${data.stats.failures} failed\n`)
|
|
}
|
|
if (data.stats.pending > 0) {
|
|
process.stdout.write(`● ${data.stats.pending} pending\n`)
|
|
}
|
|
process.stdout.write('\n')
|
|
|
|
if (data.stats.failures > 0) {
|
|
process.stdout.write('## Failures\n\n')
|
|
for (const test of data.failures) {
|
|
if (test.err && Object.keys(test.err).length > 0) {
|
|
process.stdout.write(`${test.fullTitle}\n\n`)
|
|
process.stdout.write('```\n')
|
|
process.stdout.write(`${test.err.stack}\n`)
|
|
process.stdout.write('```\n\n')
|
|
}
|
|
}
|
|
}
|
|
|
|
if (data.stats.pending > 0) {
|
|
process.stdout.write('## Pending\n\n')
|
|
for (const test of data.pending) {
|
|
process.stdout.write(`${test.fullTitle}\n\n`)
|
|
}
|
|
}
|