42 lines
725 B
Haskell
42 lines
725 B
Haskell
module Main where
|
|
|
|
import Test.HUnit
|
|
import Gemini
|
|
|
|
regex_10 = TestCase (assertEqual
|
|
"ensure sanitization works"
|
|
"gemini://perso.pw/main.gmi/passwd"
|
|
(sanitize_uri "gemini://perso.pw/../../../main.gmi/../../passwd"))
|
|
|
|
mime_1 = TestCase (assertEqual
|
|
"gmi files should be text/gemini"
|
|
"text/gemini"
|
|
(get_mime "main.gmi"))
|
|
|
|
mime_2 = TestCase (assertEqual
|
|
"markdown file"
|
|
"text/plain"
|
|
(get_mime "file.txt"))
|
|
|
|
mime_3 = TestCase (assertEqual
|
|
"jpeg file"
|
|
"image/jpeg"
|
|
(get_mime "picture.jpg"))
|
|
|
|
mime_4 = TestCase (assertEqual
|
|
"png file"
|
|
"image/png"
|
|
(get_mime "picture.png"))
|
|
|
|
tests = TestList
|
|
[ regex_10
|
|
, mime_1
|
|
, mime_2
|
|
, mime_3
|
|
, mime_4
|
|
]
|
|
|
|
main :: IO Counts
|
|
main = do
|
|
runTestTT tests
|