elm-pages-v3-beta/examples/docs/tests/TableOfContentsTests.elm

38 lines
1.6 KiB
Elm
Raw Normal View History

module TableOfContentsTests exposing (..)
2021-05-25 06:46:18 +03:00
import Expect
import Markdown.Block exposing (..)
import TableOfContents exposing (Entry(..))
import Test exposing (..)
suite : Test
suite =
describe "table of contents"
[ test "flat" <|
\() ->
TableOfContents.buildToc
[ Heading H2 [ Text "Top-Level Item 1" ]
, Heading H2 [ Text "Top-Level Item 2" ]
, Heading H2 [ Text "Top-Level Item 3" ]
]
|> Expect.equal
[ Entry { anchorId = "top-level-item-1", level = 2, name = "Top-Level Item 1" } []
, Entry { anchorId = "top-level-item-2", level = 2, name = "Top-Level Item 2" } []
, Entry { anchorId = "top-level-item-3", level = 2, name = "Top-Level Item 3" } []
]
, test "nested" <|
\() ->
TableOfContents.buildToc
[ Heading H2 [ Text "Top-Level Item 1" ]
, Heading H3 [ Text "Nested under 1" ]
, Heading H2 [ Text "Top-Level Item 3" ]
]
|> Expect.equal
[ Entry { anchorId = "top-level-item-1", level = 2, name = "Top-Level Item 1" }
[ Entry { anchorId = "nested-under-1", level = 3, name = "Nested under 1" } []
]
, Entry { anchorId = "top-level-item-3", level = 2, name = "Top-Level Item 3" } []
]
]