Add MD033 with tests, rename test file.

This commit is contained in:
David Anson 2015-04-13 08:47:15 -07:00
parent 1da7064094
commit 495fbac6fd
9 changed files with 49 additions and 5 deletions

View file

@ -63,6 +63,7 @@ cases come directly from that project.
* **MD030** - Spaces after list markers * **MD030** - Spaces after list markers
* **MD031** - Fenced code blocks should be surrounded by blank lines * **MD031** - Fenced code blocks should be surrounded by blank lines
* **MD032** - Lists should be surrounded by blank lines * **MD032** - Lists should be surrounded by blank lines
* **MD033** - Inline HTML
See [Rules.md](doc/Rules.md) for more details. See [Rules.md](doc/Rules.md) for more details.

View file

@ -682,3 +682,19 @@ items with hanging indents are okay:
* This is * This is
okay okay
## MD033 - Inline HTML
Tags: html
This rule is triggered whenever raw HTML is used in a markdown document:
<h1>Inline HTML header</h1>
To fix this, use 'pure' markdown instead of including raw HTML:
# Markdown header
Rationale: Raw HTML is allowed in markdown, but this rule is included for
those who want their documents to only include "pure" markdown, or for those
who are rendering markdown documents in something other than HTML.

View file

@ -1,7 +1,7 @@
"use strict"; "use strict";
var fs = require("fs"); var fs = require("fs");
var md = require("markdown-it")(); var md = require("markdown-it")({ "html": true });
var rules = require("./rules"); var rules = require("./rules");
var shared = require("./shared"); var shared = require("./shared");

View file

@ -607,5 +607,17 @@ module.exports = [
prevLine = line; prevLine = line;
}); });
} }
},
{
"name": "MD033",
"desc": "Inline HTML",
"tags": [ "html" ],
"func": function MD033(params, errors) {
filterTokens(params.tokens, "html_inline", "html_block")
.forEach(function forToken(token) {
errors.push(token.lineNumber);
});
}
} }
]; ];

View file

@ -14,5 +14,6 @@
"MD030": { "MD030": {
"ul_multi": 3, "ul_multi": 3,
"ol_multi": 2 "ol_multi": 2
} },
"MD033": false
} }

View file

@ -5,5 +5,6 @@
"whitespace": false, "whitespace": false,
"line_length": false, "line_length": false,
"MD006": false, "MD006": false,
"MD007": false "MD007": false,
"MD033": false
} }

13
test/inline_html.md Normal file
View file

@ -0,0 +1,13 @@
# Regular header
<h1>Inline HTML Header {MD033}</h1>
<p>More inline HTML {MD033}
but this time on multiple lines
</p>
<h1>This shouldn't trigger as it's inside a code block</h1>
```text
<p>Neither should this as it's also in a code block</p>
```

View file

@ -498,7 +498,7 @@ module.exports.badFileSync = function badFileSync(test) {
}; };
module.exports.readme = function readme(test) { module.exports.readme = function readme(test) {
test.expect(143); test.expect(144);
fs.readFile("README.md", shared.utf8Encoding, fs.readFile("README.md", shared.utf8Encoding,
function readFile(err, contents) { function readFile(err, contents) {
test.ifError(err); test.ifError(err);
@ -555,7 +555,7 @@ module.exports.readme = function readme(test) {
}; };
module.exports.doc = function doc(test) { module.exports.doc = function doc(test) {
test.expect(87); test.expect(90);
fs.readFile("doc/Rules.md", shared.utf8Encoding, fs.readFile("doc/Rules.md", shared.utf8Encoding,
function readFile(err, contents) { function readFile(err, contents) {
test.ifError(err); test.ifError(err);