eric-maynard commented on code in PR #1417: URL: https://github.com/apache/polaris/pull/1417#discussion_r2080390398
########## integration-tests/src/main/java/org/apache/polaris/service/it/test/PolarisManagementServiceIntegrationTest.java: ########## @@ -2102,6 +2103,129 @@ public void testDropNamespaceStatus() { } } + @Test + public void testCreateAndUpdateCatalogRoleWithReservedProperties() { + String catalogName = client.newEntityName("mycatalog1"); + Catalog catalog = + PolarisCatalog.builder() + .setType(Catalog.TypeEnum.INTERNAL) + .setName(catalogName) + .setProperties(new CatalogProperties("s3://required/base/location")) + .setStorageConfigInfo( + new AwsStorageConfigInfo( + "arn:aws:iam::012345678901:role/jdoe", StorageConfigInfo.StorageTypeEnum.S3)) + .build(); + managementApi.createCatalog(catalog); + + CatalogRole badCatalogRole = + new CatalogRole("mycatalogrole", Map.of("polaris.reserved", "foo"), 0L, 0L, 1); + try (Response response = + managementApi + .request("v1/catalogs/{cat}/catalog-roles", Map.of("cat", catalogName)) + .post(Entity.json(new CreateCatalogRoleRequest(badCatalogRole)))) { + assertThat(response) + .returns(Response.Status.BAD_REQUEST.getStatusCode(), Response::getStatus); + } + + CatalogRole okCatalogRole = new CatalogRole("mycatalogrole", Map.of("foo", "bar"), 0L, 0L, 1); + try (Response response = + managementApi + .request("v1/catalogs/{cat}/catalog-roles", Map.of("cat", catalogName)) Review Comment: The reason I didn't do this is that the methods in e.g. `ManagementApi` have `assertThat(response.getStatus()).isEqualTo(CREATED.getStatusCode())` baked into them. The standard in this test and elsewhere seems to be that if you expect a different status code, you don't use a helper method. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@polaris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org