nastra commented on code in PR #13400:
URL: https://github.com/apache/iceberg/pull/13400#discussion_r2538818456


##########
core/src/test/java/org/apache/iceberg/rest/TestRESTCatalog.java:
##########
@@ -247,6 +273,57 @@ public static <T> T roundTripSerialize(T payload, String 
description) {
     return null;
   }
 
+  /** Configurable planning behavior for tests. Replaces magic table 
name-based behavior routing. */
+  static class TestPlanningBehavior implements 
RESTCatalogAdapter.PlanningBehavior {
+    private boolean asyncPlanning;
+    private int tasksPerPage;
+
+    static Builder builder() {
+      return new Builder();
+    }
+
+    @Override
+    public boolean shouldPlanTableScanAsync(TableScan tableScan) {
+      return asyncPlanning;
+    }
+
+    @Override
+    public int numberFileScanTasksPerPlanTask() {
+      return tasksPerPage;
+    }
+
+    static class Builder {
+      private TestPlanningBehavior behavior = new TestPlanningBehavior();
+
+      Builder asyncPlanning(boolean async) {
+        behavior.asyncPlanning = async;
+        return this;
+      }
+
+      Builder tasksPerPage(int tasks) {
+        behavior.tasksPerPage = tasks;
+        return this;
+      }
+
+      // Convenience methods for common test scenarios
+      Builder synchronousWithAllTasks() {

Review Comment:
   should this be called `synchronous()` to align with `asynchronous()`?



-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to