2023-08-10 18:21:00 +02:00
|
|
|
(defpackage cl-sbt/tests/form
|
|
|
|
(:use
|
|
|
|
:cl
|
|
|
|
:cl-sbt
|
|
|
|
:rove)
|
|
|
|
(:import-from
|
|
|
|
:cl-sbt/form
|
2023-08-10 21:07:32 +02:00
|
|
|
:ctrl))
|
2023-08-10 18:21:00 +02:00
|
|
|
|
|
|
|
(in-package :cl-sbt/tests/form)
|
|
|
|
|
|
|
|
(deftest test-simple-form-control
|
2023-08-10 21:07:32 +02:00
|
|
|
(let ((result (spinneret:with-html-string (ctrl (:id "exampleFormControlInput1" :label "Email address" :type "email" :placeholder "name@example.com")))))
|
2023-08-10 18:21:00 +02:00
|
|
|
(testing "Generates correct HTML for a simple form"
|
|
|
|
(ok (search "for=exampleFormControlInput1" result))
|
|
|
|
(ok (search "class=form-label" result))
|
|
|
|
(ok (search "type=email" result))
|
|
|
|
(ok (search "class=form-control" result))
|
|
|
|
(ok (search "id=exampleFormControlInput1" result))
|
|
|
|
(ok (search "placeholder=name@example.com" result)))))
|
|
|
|
|
|
|
|
(deftest test-simple-form-control-2
|
2023-08-10 21:07:32 +02:00
|
|
|
(let ((result (spinneret:with-html-string (ctrl
|
2023-08-10 18:21:00 +02:00
|
|
|
(:id "exampleFormControlInput1"
|
|
|
|
:label "Email address"
|
|
|
|
:type "email"
|
|
|
|
:placeholder "name@example.com")
|
|
|
|
(:id "form1"
|
|
|
|
:label "Another Form"
|
|
|
|
:type "email"
|
|
|
|
:placeholder "name@example.com")))))
|
|
|
|
(testing "Generates correct HTML for a simple form with more than one entries"
|
|
|
|
(ok (search "for=exampleFormControlInput1" result))
|
|
|
|
(ok (search "class=form-label" result))
|
|
|
|
(ok (search "type=email" result))
|
|
|
|
(ok (search "class=form-control" result))
|
|
|
|
(ok (search "id=exampleFormControlInput1" result))
|
|
|
|
(ok (search "placeholder=name@example.com" result))
|
|
|
|
(ok (search "for=form1" result))
|
|
|
|
(ok (search "Another Form" result)))))
|