mirror of
https://github.com/theoludwig/markdownlint-rule-relative-links.git
synced 2024-12-08 00:45:32 +01:00
47 lines
1.4 KiB
JavaScript
47 lines
1.4 KiB
JavaScript
const test = require("node:test")
|
|
const assert = require("node:assert/strict")
|
|
|
|
const { markdownlint } = require("markdownlint").promises
|
|
|
|
const relativeLinks = require("../src/index.js")
|
|
|
|
test("ensure the rule validate correctly", async () => {
|
|
const lintResults = await markdownlint({
|
|
files: ["test/fixtures/Valid.md", "test/fixtures/Invalid.md"],
|
|
config: {
|
|
default: false,
|
|
"relative-links": true,
|
|
},
|
|
customRules: [relativeLinks],
|
|
})
|
|
assert.equal(lintResults["test/fixtures/Valid.md"].length, 0)
|
|
assert.equal(lintResults["test/fixtures/Invalid.md"].length, 3)
|
|
|
|
assert.equal(
|
|
lintResults["test/fixtures/Invalid.md"][0]?.ruleDescription,
|
|
"Relative links should be valid",
|
|
)
|
|
assert.equal(
|
|
lintResults["test/fixtures/Invalid.md"][0]?.errorDetail,
|
|
'Link "./basic.test.js" should exist in the file system',
|
|
)
|
|
|
|
assert.equal(
|
|
lintResults["test/fixtures/Invalid.md"][1]?.ruleDescription,
|
|
"Relative links should be valid",
|
|
)
|
|
assert.equal(
|
|
lintResults["test/fixtures/Invalid.md"][1]?.errorDetail,
|
|
'Link "../image.png" should exist in the file system',
|
|
)
|
|
|
|
assert.equal(
|
|
lintResults["test/fixtures/Invalid.md"][2]?.ruleDescription,
|
|
"Relative links should be valid",
|
|
)
|
|
assert.equal(
|
|
lintResults["test/fixtures/Invalid.md"][2]?.errorDetail,
|
|
'Link "./Valid.md#not-existing-heading" should have a valid fragment',
|
|
)
|
|
})
|