def test_buildup(): foo = URI() # DEVIATION: lurid refuses to magically change relative paths to absolute foo.path_string = "/path" foo.parse_authority(b"auth") assert str(foo) == b"//auth/path" # TODO: $foo = URI->new("", "http:"); foo = URI() foo.query = "query" foo.parse_authority(b"auth") assert str(foo) == b"//auth?query" foo.path_string = "/path" assert str(foo) == b"//auth/path?query" foo = URI.parse(b"") assert foo.path_string == "" foo.parse_path(b"foo") assert foo.path_string == "foo" assert str(foo) == b"foo" foo.parse_path(b"bar") assert foo.path_string == "bar" assert foo.opaque == "bar" assert str(foo) == b"bar" foo.parse_opaque(b"foo") assert foo.path_string == "foo" assert foo.opaque == "foo" assert str(foo) == b"foo" foo.parse_path(b"") assert str(foo) == b"" assert foo.query == None foo.query = "q" assert str(foo) == b"?q"