Current section

Files

Jump to
nldoc_validation lib nldoc validation rules heading_level_valid.ex
Raw

lib/nldoc/validation/rules/heading_level_valid.ex

defmodule NLdoc.Validation.Rules.HeadingLevelValid do
@moduledoc """
This rule validates that a heading's level is valid according to the HTML spec (i.e. between 1 and 6).
"""
alias NLdoc.Spec.Heading
alias NLdoc.Validation.Severity
use NLdoc.Validation.Rule,
severity: Severity.error(),
rule: "invalid-heading-level",
ruleset: "https://html.spec.whatwg.org/",
ruleset_version: "5",
validates: [Heading]
@impl true
def valid?(%Heading{level: level}, _),
do: level >= 1 and level <= 6
end