gh-yzou commented on code in PR #1126:
URL: https://github.com/apache/polaris/pull/1126#discussion_r2013152907


##########
quarkus/service/src/intTest/java/org/apache/polaris/service/quarkus/it/QuarkusRestCatalogViewFileIT.java:
##########
@@ -20,20 +20,37 @@
 
 import io.quarkus.test.junit.QuarkusIntegrationTest;
 import java.lang.reflect.Field;
+import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.Paths;
 import org.apache.iceberg.view.ViewCatalogTests;
 import 
org.apache.polaris.service.it.test.PolarisRestCatalogViewFileIntegrationTest;
 import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.extension.AnnotatedElementContext;
+import org.junit.jupiter.api.extension.ExtensionContext;
 import org.junit.jupiter.api.io.TempDir;
+import org.junit.jupiter.api.io.TempDirFactory;
 
 @QuarkusIntegrationTest
 public class QuarkusRestCatalogViewFileIT extends 
PolarisRestCatalogViewFileIntegrationTest {
 
   @BeforeEach
-  public void setUpTempDir(@TempDir Path tempDir) throws Exception {
+  public void setUpTempDir(@TempDir(factory = CustomTempDirFactory.class) Path 
tempDir)
+      throws Exception {
     // see https://github.com/quarkusio/quarkus/issues/13261
     Field field = ViewCatalogTests.class.getDeclaredField("tempDir");
     field.setAccessible(true);
     field.set(this, tempDir);
   }
+
+  private static class CustomTempDirFactory implements TempDirFactory {
+    @Override
+    public Path createTempDirectory(
+        AnnotatedElementContext elementContext, ExtensionContext 
extensionContext)
+        throws Exception {
+      Path basePath = Paths.get(BASE_LOCATION.replaceFirst("file://", ""));

Review Comment:
   I see. Thanks a lot for dig into this! If the behavior of Polaris and 
Iceberg is designed to be diverged, i think it actually make sense for the test 
to start diverge. I think one better way to do this is probably mark this test 
point as expected to fail, for example 
   ```
   @override
   @Test(expected = IllegalArgumentException.class)
   public void createViewWithCustomMetadataLocation(xxx) {
      super()
   }
   ```
   Then we will add another test point to test our own behavior, in that case, 
we are both watching for the upstream changes, and also testing our own 
behavior. 
   
   However, i would suggest to just skip the test in the current pr for now, 
and open an follow up pr to just do the fix for this, then we can get people to 
just look into this part without complicate the current PR too much. WDYT ? cc 
@flyrain @dimas-b 



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to