import Data.String.Utils (split)
import Network.URI (
URI(..),
+ URIAuth(..),
parseAbsoluteURI,
parseURIReference,
relativeTo,
- uriRegName,
+ uriRegName
)
import Test.HUnit (Assertion, assertEqual)
import Test.Framework (Test, testGroup)
make_absolute_uri relative_uri =
relativeTo relative_uri base_uri
where
- base_uri = URI { uriScheme = "https://",
- uriAuthority = "lwn.net",
+ base_auth = URIAuth { uriUserInfo = "",
+ uriRegName = "lwn.net",
+ uriPort = "" }
+ base_uri = URI { uriScheme = "https:",
+ uriAuthority = Just base_auth,
uriPath = "/",
uriQuery = "",
uriFragment = "" }
let abs_result = make_absolute_uri relative_uri in
case abs_result of
Nothing -> Nothing
- Just abs_uri -> show abs_uri
+ Just abs_uri -> Just $ show abs_uri
where
- parse_result = parseURIReference url
+ parse_result = parseURIReference relative_url