cases-0.1.4.3: api-tests/Main.hs
module Main (main) where
import qualified Cases
import Test.Hspec
import Prelude
main :: IO ()
main = hspec do
it "spinalizeCamelCase" do
shouldBe "abc-def" $ Cases.spinalize "abcDef"
shouldBe "abc-def" $ Cases.spinalize "abcDEF"
shouldBe "my-html-processor" $ Cases.spinalize "myHTMLProcessor"
it "spinalizeSymbols" do
shouldBe "abc-def" $ Cases.spinalize "abc_def"
shouldBe "abc-def" $ Cases.spinalize "abc-def"
shouldBe "abc-def" $ Cases.spinalize "abc/def"
shouldBe "abc-def" $ Cases.spinalize "abc,def"
shouldBe "abc-def" $ Cases.spinalize "abc.def"
shouldBe "abc-def" $ Cases.spinalize "abc:def"
it "spinalizeMultipleDelimiters" do
shouldBe "abc-def" $ Cases.spinalize "abc_-:,/def"
shouldBe "abc-def" $ Cases.spinalize "abc /-def"
it "spinalizeSpaces" do
shouldBe "abc-def" $ Cases.spinalize "abc def"
shouldBe "abc-def" $ Cases.spinalize "abc\ndef"
shouldBe "abc-def" $ Cases.spinalize "abc\rdef"
shouldBe "abc-def" $ Cases.spinalize "abc\r\n\rdef"
shouldBe "abc-def" $ Cases.spinalize "abc\tdef"
shouldBe "abc-def" $ Cases.spinalize "abc def"
it "spinalizeTrimming" do
shouldBe "abc-def" $ Cases.spinalize " abc def "
shouldBe "abc-def" $ Cases.spinalize "/abc/def/"
it "spinalizeNumbers" do
shouldBe "abc-12" $ Cases.spinalize "abc12"
it "spinalizeUnicode" do
shouldBe "ёжик-лижет-мёд" $ Cases.spinalize "Ёжик лижет мёд."
it "snakify" do
shouldBe "ёжик_лижет_мёд" $ Cases.snakify "Ёжик лижет мёд."
it "camelize" do
shouldBe "abcDef" $ Cases.camelize "abc-def"
shouldBe "AbcDef" $ Cases.camelize "Abc-def"
shouldBe "parseDbmXml" $ Cases.camelize "parse DBM XML"