mirror of
https://github.com/DavidAnson/markdownlint.git
synced 2025-12-17 14:30:12 +01:00
Add simple in-process test reporter for tape output.
This commit is contained in:
parent
3c100a21ff
commit
6d9cbfe7be
3 changed files with 49 additions and 0 deletions
|
|
@ -6,6 +6,7 @@ const fs = require("fs");
|
||||||
const path = require("path");
|
const path = require("path");
|
||||||
const glob = require("glob");
|
const glob = require("glob");
|
||||||
const tape = require("tape");
|
const tape = require("tape");
|
||||||
|
require("./tape-reporter");
|
||||||
const markdownlint = require("../lib/markdownlint");
|
const markdownlint = require("../lib/markdownlint");
|
||||||
const { utf8Encoding } = require("../helpers");
|
const { utf8Encoding } = require("../helpers");
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ const pluginKatex = require("markdown-it-katex");
|
||||||
const pluginSub = require("markdown-it-sub");
|
const pluginSub = require("markdown-it-sub");
|
||||||
const pluginSup = require("markdown-it-sup");
|
const pluginSup = require("markdown-it-sup");
|
||||||
const tape = require("tape");
|
const tape = require("tape");
|
||||||
|
require("./tape-reporter");
|
||||||
const tv4 = require("tv4");
|
const tv4 = require("tv4");
|
||||||
const packageJson = require("../package.json");
|
const packageJson = require("../package.json");
|
||||||
const markdownlint = require("../lib/markdownlint");
|
const markdownlint = require("../lib/markdownlint");
|
||||||
|
|
|
||||||
47
test/tape-reporter.js
Normal file
47
test/tape-reporter.js
Normal file
|
|
@ -0,0 +1,47 @@
|
||||||
|
// @ts-check
|
||||||
|
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
const tape = require("tape");
|
||||||
|
const { EOL } = require("os");
|
||||||
|
const { inspect } = require("util");
|
||||||
|
const { stdout, stderr } = process;
|
||||||
|
const inspectOptions = {
|
||||||
|
"compact": true,
|
||||||
|
"breakLength": Infinity
|
||||||
|
};
|
||||||
|
|
||||||
|
let tests = 0;
|
||||||
|
let assertions = 0;
|
||||||
|
let failures = 0;
|
||||||
|
|
||||||
|
tape
|
||||||
|
.createStream({ "objectMode": true })
|
||||||
|
.on("data", (data) => {
|
||||||
|
if (data.type === "test") {
|
||||||
|
tests++;
|
||||||
|
stdout.write(`${data.name}${EOL}`);
|
||||||
|
} else if (data.id !== undefined) {
|
||||||
|
assertions++;
|
||||||
|
if (!data.ok) {
|
||||||
|
failures++;
|
||||||
|
stderr.write([
|
||||||
|
` ${data.file}`,
|
||||||
|
` Message: ${data.name}`,
|
||||||
|
` Operator: ${data.operator}`,
|
||||||
|
` Expected: ${inspect(data.expected, inspectOptions)}`,
|
||||||
|
` Actual: ${inspect(data.actual, inspectOptions)}`,
|
||||||
|
""
|
||||||
|
].join(EOL));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.on("close", () => {
|
||||||
|
stdout.write([
|
||||||
|
"",
|
||||||
|
`Tests: ${tests}`,
|
||||||
|
`Asserts: ${assertions}`,
|
||||||
|
`Failures: ${failures}`,
|
||||||
|
""
|
||||||
|
].join(EOL));
|
||||||
|
});
|
||||||
Loading…
Add table
Add a link
Reference in a new issue