From fce1c8d2a4bf257ef2c140a7a668af6275a64364 Mon Sep 17 00:00:00 2001 From: Arian van Putten Date: Tue, 6 Oct 2015 14:32:25 +0200 Subject: [PATCH] WIP: Work on fixing servant-client tests --- .../test/Servant/Common/BaseUrlSpec.hs | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/servant-client/test/Servant/Common/BaseUrlSpec.hs b/servant-client/test/Servant/Common/BaseUrlSpec.hs index 43782a90..dc396f23 100644 --- a/servant-client/test/Servant/Common/BaseUrlSpec.hs +++ b/servant-client/test/Servant/Common/BaseUrlSpec.hs @@ -30,32 +30,33 @@ spec = do describe "parseBaseUrl" $ do it "is total" $ do property $ \ string -> - deepseq (fmap show (parseBaseUrl string)) True + deepseq (fmap show (parseBaseUrl string :: Maybe BaseUrl)) True it "is the inverse of showBaseUrl" $ do property $ \ baseUrl -> counterexample (showBaseUrl baseUrl) $ - parseBaseUrl (showBaseUrl baseUrl) === - Right baseUrl + (parseBaseUrl (showBaseUrl baseUrl) :: Maybe BaseUrl) === + Just baseUrl context "trailing slashes" $ do it "allows trailing slashes" $ do - parseBaseUrl "foo.com/" `shouldBe` Right (BaseUrl Http "foo.com" 80 "") + (parseBaseUrl "foo.com/" :: Maybe BaseUrl)`shouldBe` Just (BaseUrl Http "foo.com" 80 "") + it "allows trailing slashes in paths" $ do - parseBaseUrl "foo.com/api/" `shouldBe` Right (BaseUrl Http "foo.com" 80 "api") + (parseBaseUrl "foo.com/api/" :: Maybe BaseUrl) `shouldBe` Just (BaseUrl Http "foo.com" 80 "api") context "urls without scheme" $ do it "assumes http" $ do - parseBaseUrl "foo.com" `shouldBe` Right (BaseUrl Http "foo.com" 80 "") + (parseBaseUrl "foo.com" :: Maybe BaseUrl) `shouldBe` Just (BaseUrl Http "foo.com" 80 "") it "allows port numbers" $ do - parseBaseUrl "foo.com:8080" `shouldBe` Right (BaseUrl Http "foo.com" 8080 "") + (parseBaseUrl "foo.com:8080" :: Maybe BaseUrl) `shouldBe` Just (BaseUrl Http "foo.com" 8080 "") it "can parse paths" $ do - parseBaseUrl "http://foo.com/api" `shouldBe` Right (BaseUrl Http "foo.com" 80 "api") + (parseBaseUrl "http://foo.com/api" :: Maybe BaseUrl) `shouldBe` Just (BaseUrl Http "foo.com" 80 "api") it "rejects ftp urls" $ do - parseBaseUrl "ftp://foo.com" `shouldSatisfy` isLeft + (parseBaseUrl "ftp://foo.com" :: Maybe BaseUrl) `shouldBe` Nothing instance Arbitrary BaseUrl where arbitrary = BaseUrl <$>