aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/gleam/uri_test.gleam30
1 files changed, 30 insertions, 0 deletions
diff --git a/test/gleam/uri_test.gleam b/test/gleam/uri_test.gleam
index 49b4c02..9f102e0 100644
--- a/test/gleam/uri_test.gleam
+++ b/test/gleam/uri_test.gleam
@@ -101,3 +101,33 @@ pub fn parse_segments_test() {
should.equal(uri.path_segments("../bar"), ["bar"])
should.equal(uri.path_segments("/foo/../bar"), ["bar"])
}
+
+pub fn origin_test() {
+ let Ok(parsed) = uri.parse("http://example.test/path?foo#bar")
+ uri.origin(parsed)
+ |> should.equal(Ok("http://example.test"))
+
+ let Ok(parsed) = uri.parse("http://example.test:8080")
+ uri.origin(parsed)
+ |> should.equal(Ok("http://example.test:8080"))
+
+ let Ok(parsed) = uri.parse("https://example.test")
+ uri.origin(parsed)
+ |> should.equal(Ok("https://example.test"))
+
+ let Ok(parsed) = uri.parse("http:///path")
+ uri.origin(parsed)
+ |> should.equal(Ok("http://"))
+
+ let Ok(parsed) = uri.parse("http://")
+ uri.origin(parsed)
+ |> should.equal(Ok("http://"))
+
+ let Ok(parsed) = uri.parse("/path")
+ uri.origin(parsed)
+ |> should.equal(Error(Nil))
+
+ let Ok(parsed) = uri.parse("file:///dev/null")
+ uri.origin(parsed)
+ |> should.equal(Error(Nil))
+}