implemented unescapeString
This commit is contained in:
@@ -31,6 +31,7 @@ spec :: Spec
|
||||
spec = describe "Network.GemServ" $ do
|
||||
encodeRequestSpec
|
||||
escapeStringSpec
|
||||
unescapeStringSpec
|
||||
|
||||
encodeRequestSpec :: Spec
|
||||
encodeRequestSpec = describe "encodeRequest" $ mapM_
|
||||
@@ -76,4 +77,21 @@ escapeStringSpec = describe "escapeString" $ mapM_
|
||||
, ( "foo:/?=&#%", "foo%3a%2f%3f%3d%26%23%25" )
|
||||
]
|
||||
|
||||
unescapeStringSpec :: Spec
|
||||
unescapeStringSpec = describe "unescapeString" $ mapM_
|
||||
( \(input, expected) -> context (show input) $
|
||||
it ("should be " ++ show expected) $
|
||||
unescapeString input `shouldBe` expected
|
||||
)
|
||||
|
||||
-- input, expected
|
||||
[ ( "foo", Just "foo" )
|
||||
, ( "foo%20bar", Just "foo bar" )
|
||||
, ( "foo%7x", Just "foo%7x" )
|
||||
, ( "foo%a", Just "foo%a" )
|
||||
, ( "foo%", Just "foo%" )
|
||||
, ( "foo%c3%a9", Just "foo\xe9" )
|
||||
, ( "foo%ff", Nothing )
|
||||
]
|
||||
|
||||
--jl
|
||||
|
||||
Reference in New Issue
Block a user