(defpackage ml-sbt/tests/card (:use :cl :ml-sbt/card :rove)) (in-package :ml-sbt/tests/card) (deftest test-title (let ((result (spinneret:with-html-string (title "My Title")))) (testing "Testing title macro" (ok (string= "
Some card text here" result))))) (deftest test-link (let ((result (spinneret:with-html-string (link (:href "https://example.com") "Example link")))) (testing "Testing link macro" (ok (string= "Example link" result))))) (deftest test-header (let ((result (spinneret:with-html-string (header "My Card Header")))) (testing "Testing header macro" (ok (search "class=header" result)) (ok (search "My Card Header" result))))) (deftest test-img (let ((result (spinneret:with-html-string (img (:src "https://example.com/image.jpg" :alt "An example image"))))) (testing "Testing img macro" (ok (search "src=https://example.com/image.jpg" result)) (ok (search "alt=\"An example image\"" result)) (ok (search "class=card-img-top" result))))) (deftest test-body (let ((result (spinneret:with-html-string (body (title "My Title") (text "Some card text here"))))) (testing "Testing body macro" (ok (search "class=card-body" result)) (ok (search "class=card-title" result)) (ok (search "class=card-text" result)) (ok (search "Some card text here" result)))))