dev.metalisp.sbt/tests/accordion.lisp

30 lines
1.6 KiB
Common Lisp
Raw Normal View History

2024-04-21 11:40:50 +02:00
(defpackage dev.metalisp.sbt/tests/accordion
2023-07-22 19:08:42 +02:00
(:use
:cl
2024-04-21 11:40:50 +02:00
:dev.metalisp.sbt/accordion
2024-03-30 09:17:04 +01:00
:rove))
2023-07-22 19:08:42 +02:00
2024-04-21 11:40:50 +02:00
(in-package :dev.metalisp.sbt/tests/accordion)
2023-07-22 19:08:42 +02:00
(deftest test-accordion-correct-classes
(let ((result (with-output-to-string (spinneret:*html*) (accordion (:id "accordionExample" :flush t) "Accordion Item #1" "Accordion Content #1" "Accordion Item #2" "Accordion Content #2" "Accordion Item #3" "Accordion Content #3"))))
2024-02-01 10:06:30 +01:00
(testing "Generates correct HTML for accordion"
(ok (search "class=accordion" result))
(ok (search "class=accordion-item" result))
(ok (search "class=accordion-header" result))
(ok (search "class=accordion-button" result)))))
(deftest test-accordion-correct-id
(let ((result (with-output-to-string (spinneret:*html*) (accordion (:id "accordionExample" :flush t) "Accordion Item #1" "Accordion Content #1" "Accordion Item #2" "Accordion Content #2" "Accordion Item #3" "Accordion Content #3"))))
(testing "Generates correct HTML for accordion"
(ok (search "id=accordionExample" result))
(ok (search "id=collapse-accordionExample-1" result))
(ok (search "id=collapse-accordionExample-2" result)))))
(deftest test-accordion-correct-aria
(let ((result (with-output-to-string (spinneret:*html*) (accordion (:id "accordionExample" :flush t) "Accordion Item #1" "Accordion Content #1" "Accordion Item #2" "Accordion Content #2" "Accordion Item #3" "Accordion Content #3"))))
(testing "Generates correct HTML for accordion"
(ok (search "aria-expanded=true" result))
(ok (search "aria-expanded=false" result))
(ok (search "aria-controls=collapse-accordionExample-1" result)))))