mirror of
https://github.com/theoludwig/html-w3c-validator.git
synced 2024-12-08 00:45:37 +01:00
fix: only show error messages related to configured severities
This commit is contained in:
parent
284b9fb057
commit
e3cd809e56
@ -176,6 +176,13 @@ export class HTMLValidatorCommand extends Command {
|
|||||||
results.push({ data, isSuccess: false })
|
results.push({ data, isSuccess: false })
|
||||||
const messagesTable: string[][] = []
|
const messagesTable: string[][] = []
|
||||||
for (const message of result.messages) {
|
for (const message of result.messages) {
|
||||||
|
if (
|
||||||
|
!severities.includes(message.type as Severity) &&
|
||||||
|
!severities.includes(message.subType as Severity)
|
||||||
|
) {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
const row: string[] = []
|
const row: string[] = []
|
||||||
if (message.type === 'info') {
|
if (message.type === 'info') {
|
||||||
if (message.subType === 'warning') {
|
if (message.subType === 'warning') {
|
||||||
|
@ -374,4 +374,43 @@ await test('html-w3c-validator', async (t) => {
|
|||||||
errors.join('\n')
|
errors.join('\n')
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
await t.test('fails with invalid W3C HTML', async () => {
|
||||||
|
const workingDirectory = path.join(FIXTURES_PATH, 'error-invalid-w3c-html')
|
||||||
|
const errors: string[] = []
|
||||||
|
sinon.stub(console, 'error').value((error: string) => {
|
||||||
|
errors.push(error)
|
||||||
|
})
|
||||||
|
const consoleErrorSpy = sinon.spy(console, 'error')
|
||||||
|
const stream = new PassThrough()
|
||||||
|
const exitCode = await cli.run(
|
||||||
|
[`--current-working-directory=${workingDirectory}`],
|
||||||
|
{
|
||||||
|
stdin: process.stdin,
|
||||||
|
stdout: stream,
|
||||||
|
stderr: stream
|
||||||
|
}
|
||||||
|
)
|
||||||
|
stream.end()
|
||||||
|
assert.strictEqual(exitCode, 1)
|
||||||
|
const messagesTable = [
|
||||||
|
[
|
||||||
|
chalk.yellow('warning'),
|
||||||
|
'Consider adding a “lang” attribute to the “html” start tag to declare the language of this document.',
|
||||||
|
'line: 2, column: 16-6'
|
||||||
|
]
|
||||||
|
]
|
||||||
|
assert.strictEqual(
|
||||||
|
consoleErrorSpy.calledWith(
|
||||||
|
chalk.bold.red('Error:') + ' HTML validation (W3C) failed!'
|
||||||
|
),
|
||||||
|
true,
|
||||||
|
errors.join('\n')
|
||||||
|
)
|
||||||
|
assert.strictEqual(
|
||||||
|
consoleErrorSpy.calledWith(table(messagesTable)),
|
||||||
|
true,
|
||||||
|
errors.join('\n')
|
||||||
|
)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"files": ["./build/index.html", "./build/about.html"]
|
||||||
|
}
|
@ -0,0 +1,9 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<title>About</title>
|
||||||
|
</head>
|
||||||
|
<body></body>
|
||||||
|
</html>
|
@ -0,0 +1,9 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<title>Home</title>
|
||||||
|
</head>
|
||||||
|
<body></body>
|
||||||
|
</html>
|
Loading…
Reference in New Issue
Block a user