@@ -2124,6 +2124,11 @@ def test_table_identifier_in_commit_table_request(
21242124
21252125
21262126def test_register_view_200 (rest_mock : Mocker , example_view_metadata_rest_json : dict [str , Any ]) -> None :
2127+ rest_mock .head (
2128+ f"{ TEST_URI } v1/namespaces/default/tables/registered_view" ,
2129+ status_code = 404 ,
2130+ request_headers = TEST_HEADERS ,
2131+ )
21272132 rest_mock .post (
21282133 f"{ TEST_URI } v1/namespaces/default/register-view" ,
21292134 json = example_view_metadata_rest_json ,
@@ -2138,11 +2143,10 @@ def test_register_view_200(rest_mock: Mocker, example_view_metadata_rest_json: d
21382143 identifier = ("default" , "registered_view" ),
21392144 metadata = ViewMetadata (** example_view_metadata_rest_json ["metadata" ]),
21402145 )
2141- assert actual .metadata .model_dump () == expected .metadata .model_dump ()
2142- assert actual .name () == expected .name ()
2146+ assert actual == expected
21432147
21442148
2145- def test_register_view_409 (rest_mock : Mocker ) -> None :
2149+ def test_register_view_409_view (rest_mock : Mocker ) -> None :
21462150 rest_mock .post (
21472151 f"{ TEST_URI } v1/namespaces/default/register-view" ,
21482152 json = {
@@ -2164,6 +2168,21 @@ def test_register_view_409(rest_mock: Mocker) -> None:
21642168 assert "View already exists" in str (e .value )
21652169
21662170
2171+ def test_register_view_409_table (rest_mock : Mocker ) -> None :
2172+ rest_mock .post (
2173+ f"{ TEST_URI } v1/namespaces/default/views/registered_view" ,
2174+ status_code = 204 ,
2175+ request_headers = TEST_HEADERS ,
2176+ )
2177+
2178+ catalog = RestCatalog ("rest" , uri = TEST_URI , token = TEST_TOKEN )
2179+ with pytest .raises (TableAlreadyExistsError ) as e :
2180+ catalog .register_view (
2181+ identifier = ("default" , "registered_view" ), metadata_location = "s3://warehouse/database/view/metadata.json"
2182+ )
2183+ assert "Table already exists" in str (e .value )
2184+
2185+
21672186def test_drop_view_invalid_namespace (rest_mock : Mocker ) -> None :
21682187 view = "view"
21692188 with pytest .raises (NoSuchIdentifierError ) as e :
0 commit comments