mirror of
https://github.com/DavidAnson/markdownlint.git
synced 2025-12-24 01:40:13 +01:00
Add MD043 required-headers "Required header structure" (fixes #22).
This commit is contained in:
parent
2612a96ae8
commit
c8ecec1953
26 changed files with 316 additions and 10 deletions
|
|
@ -1,4 +1,11 @@
|
|||
{
|
||||
"default": true,
|
||||
"MD041": true
|
||||
"MD041": true,
|
||||
"MD043": {
|
||||
"headers": [
|
||||
"## Header 1 {MD002} {MD041}",
|
||||
"#### Header 2 {MD001}",
|
||||
"# Broken"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
#### Header 2 {MD001}
|
||||
|
||||
# Header 3 {MD003} #
|
||||
# Header 3 {MD003} {MD043} #
|
||||
|
||||
* list
|
||||
+ list {MD004} {MD006} {MD007} {MD030}
|
||||
|
|
|
|||
|
|
@ -632,6 +632,44 @@ module.exports.customFrontMatter = function customFrontMatter(test) {
|
|||
});
|
||||
};
|
||||
|
||||
module.exports.readmeHeaders = function readmeHeaders(test) {
|
||||
test.expect(2);
|
||||
markdownlint({
|
||||
"files": "README.md",
|
||||
"config": {
|
||||
"default": false,
|
||||
"MD043": {
|
||||
"headers": [
|
||||
"# markdownlint",
|
||||
"## Install",
|
||||
"## Overview",
|
||||
"### Related",
|
||||
"## Demonstration",
|
||||
"## Rules / Aliases",
|
||||
"## Tags",
|
||||
"## Configuration",
|
||||
"## API",
|
||||
"### options",
|
||||
"#### options.files",
|
||||
"#### options.strings",
|
||||
"#### options.frontMatter",
|
||||
"#### options.config",
|
||||
"### callback",
|
||||
"### result",
|
||||
"## Usage",
|
||||
"## Browser",
|
||||
"## History"
|
||||
]
|
||||
}
|
||||
}
|
||||
}, function callback(err, result) {
|
||||
test.ifError(err);
|
||||
var expected = { "README.md": {} };
|
||||
test.deepEqual(result, expected, "Unexpected issues.");
|
||||
test.done();
|
||||
});
|
||||
};
|
||||
|
||||
module.exports.filesArrayNotModified = function filesArrayNotModified(test) {
|
||||
test.expect(2);
|
||||
var files = [
|
||||
|
|
@ -733,7 +771,7 @@ module.exports.missingStringValue = function missingStringValue(test) {
|
|||
};
|
||||
|
||||
module.exports.ruleNamesUpperCase = function ruleNamesUpperCase(test) {
|
||||
test.expect(38);
|
||||
test.expect(39);
|
||||
rules.forEach(function forRule(rule) {
|
||||
test.equal(rule.name, rule.name.toUpperCase(), "Rule name not upper-case.");
|
||||
});
|
||||
|
|
@ -741,7 +779,7 @@ module.exports.ruleNamesUpperCase = function ruleNamesUpperCase(test) {
|
|||
};
|
||||
|
||||
module.exports.uniqueAliases = function uniqueAliases(test) {
|
||||
test.expect(76);
|
||||
test.expect(78);
|
||||
var tags = [];
|
||||
rules.forEach(function forRule(rule) {
|
||||
Array.prototype.push.apply(tags, rule.tags);
|
||||
|
|
@ -758,7 +796,7 @@ module.exports.uniqueAliases = function uniqueAliases(test) {
|
|||
};
|
||||
|
||||
module.exports.readme = function readme(test) {
|
||||
test.expect(99);
|
||||
test.expect(101);
|
||||
var tagToRules = {};
|
||||
rules.forEach(function forRule(rule) {
|
||||
rule.tags.forEach(function forTag(tag) {
|
||||
|
|
@ -819,7 +857,7 @@ module.exports.readme = function readme(test) {
|
|||
};
|
||||
|
||||
module.exports.doc = function doc(test) {
|
||||
test.expect(281);
|
||||
test.expect(289);
|
||||
fs.readFile("doc/Rules.md", shared.utf8Encoding,
|
||||
function readFile(err, contents) {
|
||||
test.ifError(err);
|
||||
|
|
|
|||
6
test/required-headers-all-optional.json
Normal file
6
test/required-headers-all-optional.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"default": true,
|
||||
"MD043": {
|
||||
"headers": [ "*" ]
|
||||
}
|
||||
}
|
||||
11
test/required-headers-all-optional.md
Normal file
11
test/required-headers-all-optional.md
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
# One
|
||||
|
||||
## Two
|
||||
|
||||
### THREE
|
||||
|
||||
#### four
|
||||
|
||||
##### Five
|
||||
|
||||
###### SiX
|
||||
13
test/required-headers-all-present.json
Normal file
13
test/required-headers-all-present.json
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
"default": true,
|
||||
"MD043": {
|
||||
"headers": [
|
||||
"# One",
|
||||
"## Two",
|
||||
"### Three",
|
||||
"## Four",
|
||||
"## Five",
|
||||
"### Six"
|
||||
]
|
||||
}
|
||||
}
|
||||
11
test/required-headers-all-present.md
Normal file
11
test/required-headers-all-present.md
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
# One
|
||||
|
||||
## Two
|
||||
|
||||
### THREE
|
||||
|
||||
## four
|
||||
|
||||
## Five
|
||||
|
||||
### SiX
|
||||
10
test/required-headers-missing-first.json
Normal file
10
test/required-headers-missing-first.json
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"default": true,
|
||||
"MD043": {
|
||||
"headers": [
|
||||
"# One",
|
||||
"## Two",
|
||||
"### Three"
|
||||
]
|
||||
}
|
||||
}
|
||||
5
test/required-headers-missing-first.md
Normal file
5
test/required-headers-missing-first.md
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
text
|
||||
|
||||
## Two {MD002} {MD043}
|
||||
|
||||
### Three
|
||||
10
test/required-headers-missing-last.json
Normal file
10
test/required-headers-missing-last.json
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"default": true,
|
||||
"MD043": {
|
||||
"headers": [
|
||||
"# One",
|
||||
"## Two",
|
||||
"### Three"
|
||||
]
|
||||
}
|
||||
}
|
||||
7
test/required-headers-missing-last.md
Normal file
7
test/required-headers-missing-last.md
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
One
|
||||
===
|
||||
|
||||
Two
|
||||
---
|
||||
|
||||
{MD043}
|
||||
11
test/required-headers-missing-middle.json
Normal file
11
test/required-headers-missing-middle.json
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"default": true,
|
||||
"MD043": {
|
||||
"headers": [
|
||||
"# One",
|
||||
"## Two",
|
||||
"### Three",
|
||||
"#### Four"
|
||||
]
|
||||
}
|
||||
}
|
||||
5
test/required-headers-missing-middle.md
Normal file
5
test/required-headers-missing-middle.md
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
# One #
|
||||
|
||||
### Three {MD001} {MD043} ###
|
||||
|
||||
#### Four ####
|
||||
6
test/required-headers-none.json
Normal file
6
test/required-headers-none.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"default": true,
|
||||
"MD043": {
|
||||
"headers": []
|
||||
}
|
||||
}
|
||||
5
test/required-headers-none.md
Normal file
5
test/required-headers-none.md
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
# One {MD043}
|
||||
|
||||
## Two
|
||||
|
||||
### Three
|
||||
10
test/required-headers-optional-first.json
Normal file
10
test/required-headers-optional-first.json
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"default": true,
|
||||
"MD043": {
|
||||
"headers": [
|
||||
"*",
|
||||
"### Three",
|
||||
"#### Four"
|
||||
]
|
||||
}
|
||||
}
|
||||
7
test/required-headers-optional-first.md
Normal file
7
test/required-headers-optional-first.md
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# One
|
||||
|
||||
## Two
|
||||
|
||||
### Three
|
||||
|
||||
#### Four
|
||||
10
test/required-headers-optional-last.json
Normal file
10
test/required-headers-optional-last.json
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"default": true,
|
||||
"MD043": {
|
||||
"headers": [
|
||||
"# One",
|
||||
"## Two",
|
||||
"*"
|
||||
]
|
||||
}
|
||||
}
|
||||
7
test/required-headers-optional-last.md
Normal file
7
test/required-headers-optional-last.md
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# One
|
||||
|
||||
## Two
|
||||
|
||||
### Three
|
||||
|
||||
#### Four
|
||||
12
test/required-headers-optional-middle.json
Normal file
12
test/required-headers-optional-middle.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"default": true,
|
||||
"MD043": {
|
||||
"headers": [
|
||||
"# One",
|
||||
"*",
|
||||
"### Three",
|
||||
"*",
|
||||
"##### Five"
|
||||
]
|
||||
}
|
||||
}
|
||||
9
test/required-headers-optional-middle.md
Normal file
9
test/required-headers-optional-middle.md
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# One #
|
||||
|
||||
## Two ##
|
||||
|
||||
### Three ###
|
||||
|
||||
#### Four ####
|
||||
|
||||
##### Five #####
|
||||
11
test/required-headers-optional-redundant.json
Normal file
11
test/required-headers-optional-redundant.json
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{
|
||||
"default": true,
|
||||
"MD043": {
|
||||
"headers": [
|
||||
"# One",
|
||||
"*",
|
||||
"*",
|
||||
"#### Four"
|
||||
]
|
||||
}
|
||||
}
|
||||
7
test/required-headers-optional-redundant.md
Normal file
7
test/required-headers-optional-redundant.md
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# One
|
||||
|
||||
## Two
|
||||
|
||||
### Three
|
||||
|
||||
#### Four
|
||||
Loading…
Add table
Add a link
Reference in a new issue