This is an automated email from the ASF dual-hosted git repository.
russellspitzer pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg.git
The following commit(s) were added to refs/heads/main by this push:
new 8bcfa610a2 Data, Flink, Spark: Use TestHelpers for FormatVersion
(#13880)
8bcfa610a2 is described below
commit 8bcfa610a2a742ce66d480b87cbd583f27d555d5
Author: Russell Spitzer <[email protected]>
AuthorDate: Tue Sep 2 12:38:05 2025 -0500
Data, Flink, Spark: Use TestHelpers for FormatVersion (#13880)
---
.../java/org/apache/iceberg/io/TestDVWriters.java | 6 ++---
.../flink/actions/TestRewriteDataFilesAction.java | 4 ++--
.../iceberg/flink/sink/TestIcebergCommitter.java | 2 +-
.../flink/actions/TestRewriteDataFilesAction.java | 4 ++--
.../iceberg/flink/sink/TestIcebergCommitter.java | 2 +-
.../flink/actions/TestRewriteDataFilesAction.java | 4 ++--
.../iceberg/flink/sink/TestIcebergCommitter.java | 2 +-
.../actions/TestDeleteReachableFilesAction.java | 5 ++---
.../spark/actions/TestExpireSnapshotsAction.java | 5 ++---
.../actions/TestRemoveDanglingDeleteAction.java | 6 ++---
.../spark/actions/TestRewriteDataFilesAction.java | 5 ++---
.../spark/source/TestPositionDeletesReader.java | 4 ++--
.../spark/source/TestSparkMetadataColumns.java | 26 ++++++++--------------
.../spark/source/TestSparkReaderDeletes.java | 18 ++++++++-------
.../actions/TestDeleteReachableFilesAction.java | 5 ++---
.../spark/actions/TestExpireSnapshotsAction.java | 5 ++---
.../actions/TestRemoveDanglingDeleteAction.java | 6 ++---
.../spark/actions/TestRewriteDataFilesAction.java | 5 ++---
.../spark/source/TestPositionDeletesReader.java | 4 ++--
.../spark/source/TestSparkMetadataColumns.java | 26 ++++++++--------------
.../spark/source/TestSparkReaderDeletes.java | 18 ++++++++-------
.../actions/TestDeleteReachableFilesAction.java | 5 ++---
.../spark/actions/TestExpireSnapshotsAction.java | 5 ++---
.../actions/TestRemoveDanglingDeleteAction.java | 6 ++---
.../spark/actions/TestRewriteDataFilesAction.java | 5 ++---
.../spark/source/TestPositionDeletesReader.java | 4 ++--
.../spark/source/TestSparkMetadataColumns.java | 26 ++++++++--------------
.../spark/source/TestSparkReaderDeletes.java | 18 ++++++++-------
28 files changed, 102 insertions(+), 129 deletions(-)
diff --git a/data/src/test/java/org/apache/iceberg/io/TestDVWriters.java
b/data/src/test/java/org/apache/iceberg/io/TestDVWriters.java
index acda2c78c8..70330901f4 100644
--- a/data/src/test/java/org/apache/iceberg/io/TestDVWriters.java
+++ b/data/src/test/java/org/apache/iceberg/io/TestDVWriters.java
@@ -23,7 +23,6 @@ import static org.assertj.core.api.Assumptions.assumeThat;
import java.io.File;
import java.io.IOException;
-import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
@@ -38,6 +37,7 @@ import org.apache.iceberg.RowDelta;
import org.apache.iceberg.Snapshot;
import org.apache.iceberg.Table;
import org.apache.iceberg.TableProperties;
+import org.apache.iceberg.TestHelpers;
import org.apache.iceberg.data.BaseDeleteLoader;
import org.apache.iceberg.data.DeleteLoader;
import org.apache.iceberg.deletes.BaseDVFileWriter;
@@ -59,8 +59,8 @@ import org.junit.jupiter.api.extension.ExtendWith;
public abstract class TestDVWriters<T> extends WriterTestBase<T> {
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(new Object[] {2, 3});
+ protected static List<Integer> parameters() {
+ return TestHelpers.V2_AND_ABOVE;
}
private OutputFileFactory fileFactory = null;
diff --git
a/flink/v1.19/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
b/flink/v1.19/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
index 131d3bcbb0..b9c8ebbf17 100644
---
a/flink/v1.19/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
+++
b/flink/v1.19/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
@@ -26,7 +26,6 @@ import static org.assertj.core.api.Assumptions.assumeThat;
import java.io.File;
import java.io.IOException;
import java.nio.file.Path;
-import java.util.Arrays;
import java.util.Collection;
import java.util.List;
import java.util.Set;
@@ -49,6 +48,7 @@ import org.apache.iceberg.Parameters;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
import org.apache.iceberg.TableProperties;
+import org.apache.iceberg.TestHelpers;
import org.apache.iceberg.actions.RewriteDataFilesActionResult;
import org.apache.iceberg.catalog.Namespace;
import org.apache.iceberg.catalog.TableIdentifier;
@@ -99,7 +99,7 @@ public class TestRewriteDataFilesAction extends
CatalogTestBase {
for (FileFormat format :
new FileFormat[] {FileFormat.AVRO, FileFormat.ORC,
FileFormat.PARQUET}) {
for (Object[] catalogParams : CatalogTestBase.parameters()) {
- for (int version : Arrays.asList(2, 3)) {
+ for (int version : TestHelpers.V2_AND_ABOVE) {
String catalogName = (String) catalogParams[0];
Namespace baseNamespace = (Namespace) catalogParams[1];
parameters.add(new Object[] {catalogName, baseNamespace, format,
version});
diff --git
a/flink/v1.19/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
b/flink/v1.19/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
index ef1cbf8d34..584b9962ea 100644
---
a/flink/v1.19/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
+++
b/flink/v1.19/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
@@ -157,7 +157,7 @@ class TestIcebergCommitter extends TestBase {
protected static List<Object> parameters() {
List<Object> parameters = Lists.newArrayList();
for (Boolean isStreamingMode : new Boolean[] {true, false}) {
- for (int formatVersion : new int[] {1, 2}) {
+ for (int formatVersion : org.apache.iceberg.TestHelpers.ALL_VERSIONS) {
parameters.add(new Object[] {formatVersion, isStreamingMode,
SnapshotRef.MAIN_BRANCH});
parameters.add(new Object[] {formatVersion, isStreamingMode,
"test-branch"});
}
diff --git
a/flink/v1.20/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
b/flink/v1.20/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
index 131d3bcbb0..b9c8ebbf17 100644
---
a/flink/v1.20/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
+++
b/flink/v1.20/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
@@ -26,7 +26,6 @@ import static org.assertj.core.api.Assumptions.assumeThat;
import java.io.File;
import java.io.IOException;
import java.nio.file.Path;
-import java.util.Arrays;
import java.util.Collection;
import java.util.List;
import java.util.Set;
@@ -49,6 +48,7 @@ import org.apache.iceberg.Parameters;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
import org.apache.iceberg.TableProperties;
+import org.apache.iceberg.TestHelpers;
import org.apache.iceberg.actions.RewriteDataFilesActionResult;
import org.apache.iceberg.catalog.Namespace;
import org.apache.iceberg.catalog.TableIdentifier;
@@ -99,7 +99,7 @@ public class TestRewriteDataFilesAction extends
CatalogTestBase {
for (FileFormat format :
new FileFormat[] {FileFormat.AVRO, FileFormat.ORC,
FileFormat.PARQUET}) {
for (Object[] catalogParams : CatalogTestBase.parameters()) {
- for (int version : Arrays.asList(2, 3)) {
+ for (int version : TestHelpers.V2_AND_ABOVE) {
String catalogName = (String) catalogParams[0];
Namespace baseNamespace = (Namespace) catalogParams[1];
parameters.add(new Object[] {catalogName, baseNamespace, format,
version});
diff --git
a/flink/v1.20/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
b/flink/v1.20/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
index 392fc5823c..72427b6dce 100644
---
a/flink/v1.20/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
+++
b/flink/v1.20/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
@@ -157,7 +157,7 @@ class TestIcebergCommitter extends TestBase {
protected static List<Object> parameters() {
List<Object> parameters = Lists.newArrayList();
for (Boolean isStreamingMode : new Boolean[] {true, false}) {
- for (int formatVersion : new int[] {1, 2}) {
+ for (int formatVersion : org.apache.iceberg.TestHelpers.ALL_VERSIONS) {
parameters.add(new Object[] {formatVersion, isStreamingMode,
SnapshotRef.MAIN_BRANCH});
parameters.add(new Object[] {formatVersion, isStreamingMode,
"test-branch"});
}
diff --git
a/flink/v2.0/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
b/flink/v2.0/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
index 131d3bcbb0..b9c8ebbf17 100644
---
a/flink/v2.0/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
+++
b/flink/v2.0/flink/src/test/java/org/apache/iceberg/flink/actions/TestRewriteDataFilesAction.java
@@ -26,7 +26,6 @@ import static org.assertj.core.api.Assumptions.assumeThat;
import java.io.File;
import java.io.IOException;
import java.nio.file.Path;
-import java.util.Arrays;
import java.util.Collection;
import java.util.List;
import java.util.Set;
@@ -49,6 +48,7 @@ import org.apache.iceberg.Parameters;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
import org.apache.iceberg.TableProperties;
+import org.apache.iceberg.TestHelpers;
import org.apache.iceberg.actions.RewriteDataFilesActionResult;
import org.apache.iceberg.catalog.Namespace;
import org.apache.iceberg.catalog.TableIdentifier;
@@ -99,7 +99,7 @@ public class TestRewriteDataFilesAction extends
CatalogTestBase {
for (FileFormat format :
new FileFormat[] {FileFormat.AVRO, FileFormat.ORC,
FileFormat.PARQUET}) {
for (Object[] catalogParams : CatalogTestBase.parameters()) {
- for (int version : Arrays.asList(2, 3)) {
+ for (int version : TestHelpers.V2_AND_ABOVE) {
String catalogName = (String) catalogParams[0];
Namespace baseNamespace = (Namespace) catalogParams[1];
parameters.add(new Object[] {catalogName, baseNamespace, format,
version});
diff --git
a/flink/v2.0/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
b/flink/v2.0/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
index c37ef29a6e..76338a185a 100644
---
a/flink/v2.0/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
+++
b/flink/v2.0/flink/src/test/java/org/apache/iceberg/flink/sink/TestIcebergCommitter.java
@@ -157,7 +157,7 @@ class TestIcebergCommitter extends TestBase {
protected static List<Object> parameters() {
List<Object> parameters = Lists.newArrayList();
for (Boolean isStreamingMode : new Boolean[] {true, false}) {
- for (int formatVersion : new int[] {1, 2}) {
+ for (int formatVersion : org.apache.iceberg.TestHelpers.ALL_VERSIONS) {
parameters.add(new Object[] {formatVersion, isStreamingMode,
SnapshotRef.MAIN_BRANCH});
parameters.add(new Object[] {formatVersion, isStreamingMode,
"test-branch"});
}
diff --git
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
index 85fbf7152b..6ef1b7fd7f 100644
---
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
+++
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
@@ -23,7 +23,6 @@ import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
import java.io.File;
-import java.util.Arrays;
import java.util.List;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
@@ -121,8 +120,8 @@ public class TestDeleteReachableFilesAction extends
TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return TestHelpers.V2_AND_ABOVE;
}
private Table table;
diff --git
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
index d9df44774b..afbe747093 100644
---
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
+++
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
@@ -26,7 +26,6 @@ import static org.assertj.core.api.Assumptions.assumeThat;
import java.io.File;
import java.io.IOException;
import java.nio.file.Path;
-import java.util.Arrays;
import java.util.List;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
@@ -130,8 +129,8 @@ public class TestExpireSnapshotsAction extends TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return org.apache.iceberg.TestHelpers.V2_AND_ABOVE;
}
@TempDir private File tableDir;
diff --git
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
index fb07421fc5..7cd0042d8b 100644
---
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
+++
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
@@ -22,7 +22,6 @@ import static
org.apache.iceberg.types.Types.NestedField.optional;
import static org.assertj.core.api.Assertions.assertThat;
import java.io.File;
-import java.util.Arrays;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
@@ -39,6 +38,7 @@ import org.apache.iceberg.PartitionSpec;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
import org.apache.iceberg.TableProperties;
+import org.apache.iceberg.TestHelpers;
import org.apache.iceberg.actions.RemoveDanglingDeleteFiles;
import org.apache.iceberg.hadoop.HadoopTables;
import org.apache.iceberg.relocated.com.google.common.collect.ImmutableList;
@@ -207,8 +207,8 @@ public class TestRemoveDanglingDeleteAction extends
TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return TestHelpers.V2_AND_ABOVE;
}
private String tableLocation = null;
diff --git
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
index d2aee25070..f90cf3b693 100644
---
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
+++
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
@@ -39,7 +39,6 @@ import static org.mockito.Mockito.spy;
import java.io.File;
import java.io.IOException;
import java.io.UncheckedIOException;
-import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
@@ -154,8 +153,8 @@ public class TestRewriteDataFilesAction extends TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return org.apache.iceberg.TestHelpers.V2_AND_ABOVE;
}
private final FileRewriteCoordinator coordinator =
FileRewriteCoordinator.get();
diff --git
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
index d560b6d680..764e1c6c93 100644
---
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
+++
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
@@ -81,8 +81,8 @@ public class TestPositionDeletesReader extends TestBase {
private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return ImmutableList.of(2, 3);
+ protected static List<Integer> parameters() {
+ return TestHelpers.V2_AND_ABOVE;
}
@BeforeEach
diff --git
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
index 885c8776b3..341417ca6d 100644
---
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
+++
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
@@ -90,23 +90,15 @@ public class TestSparkMetadataColumns extends TestBase {
@Parameters(name = "fileFormat = {0}, vectorized = {1}, formatVersion = {2}")
public static Object[][] parameters() {
- return new Object[][] {
- {FileFormat.PARQUET, false, 1},
- {FileFormat.PARQUET, true, 1},
- {FileFormat.PARQUET, false, 2},
- {FileFormat.PARQUET, true, 2},
- {FileFormat.PARQUET, false, 3},
- {FileFormat.PARQUET, true, 3},
- {FileFormat.AVRO, false, 1},
- {FileFormat.AVRO, false, 2},
- {FileFormat.AVRO, false, 3},
- {FileFormat.ORC, false, 1},
- {FileFormat.ORC, true, 1},
- {FileFormat.ORC, false, 2},
- {FileFormat.ORC, true, 2},
- {FileFormat.ORC, false, 3},
- {FileFormat.ORC, true, 3},
- };
+ List<Object[]> parameters = Lists.newArrayList();
+ for (int version : TestHelpers.ALL_VERSIONS) {
+ parameters.add(new Object[] {FileFormat.PARQUET, false, version});
+ parameters.add(new Object[] {FileFormat.PARQUET, true, version});
+ parameters.add(new Object[] {FileFormat.AVRO, false, version});
+ parameters.add(new Object[] {FileFormat.ORC, false, version});
+ parameters.add(new Object[] {FileFormat.ORC, true, version});
+ }
+ return parameters.toArray(new Object[0][]);
}
@TempDir private Path temp;
diff --git
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
index 3a114a599d..16fa726032 100644
---
a/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
+++
b/spark/v3.4/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
@@ -107,14 +107,16 @@ public class TestSparkReaderDeletes extends
DeleteReadTests {
@Parameters(name = "fileFormat = {0}, formatVersion = {1}, vectorized = {2},
planningMode = {3}")
public static Object[][] parameters() {
- return new Object[][] {
- new Object[] {FileFormat.PARQUET, 2, false, PlanningMode.DISTRIBUTED},
- new Object[] {FileFormat.PARQUET, 2, true, PlanningMode.LOCAL},
- new Object[] {FileFormat.ORC, 2, false, PlanningMode.DISTRIBUTED},
- new Object[] {FileFormat.AVRO, 2, false, PlanningMode.LOCAL},
- new Object[] {FileFormat.PARQUET, 3, false, PlanningMode.DISTRIBUTED},
- new Object[] {FileFormat.PARQUET, 3, true, PlanningMode.LOCAL},
- };
+ List<Object[]> parameters = Lists.newArrayList();
+ for (int version : TestHelpers.V2_AND_ABOVE) {
+ parameters.add(new Object[] {FileFormat.PARQUET, version, false,
PlanningMode.DISTRIBUTED});
+ parameters.add(new Object[] {FileFormat.PARQUET, version, true,
PlanningMode.LOCAL});
+ if (version == 2) {
+ parameters.add(new Object[] {FileFormat.ORC, version, false,
PlanningMode.DISTRIBUTED});
+ parameters.add(new Object[] {FileFormat.AVRO, version, false,
PlanningMode.LOCAL});
+ }
+ }
+ return parameters.toArray(new Object[0][]);
}
@BeforeAll
diff --git
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
index 85fbf7152b..6ef1b7fd7f 100644
---
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
+++
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
@@ -23,7 +23,6 @@ import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
import java.io.File;
-import java.util.Arrays;
import java.util.List;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
@@ -121,8 +120,8 @@ public class TestDeleteReachableFilesAction extends
TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return TestHelpers.V2_AND_ABOVE;
}
private Table table;
diff --git
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
index 0668f9ffb9..7e07c66e06 100644
---
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
+++
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
@@ -26,7 +26,6 @@ import static org.assertj.core.api.Assumptions.assumeThat;
import java.io.File;
import java.io.IOException;
import java.nio.file.Path;
-import java.util.Arrays;
import java.util.List;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
@@ -130,8 +129,8 @@ public class TestExpireSnapshotsAction extends TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return org.apache.iceberg.TestHelpers.V2_AND_ABOVE;
}
@TempDir private File tableDir;
diff --git
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
index 56800a26dc..76084c2b94 100644
---
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
+++
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
@@ -23,7 +23,6 @@ import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assumptions.assumeThat;
import java.io.File;
-import java.util.Arrays;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
@@ -41,6 +40,7 @@ import org.apache.iceberg.PartitionSpec;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
import org.apache.iceberg.TableProperties;
+import org.apache.iceberg.TestHelpers;
import org.apache.iceberg.actions.RemoveDanglingDeleteFiles;
import org.apache.iceberg.hadoop.HadoopTables;
import org.apache.iceberg.relocated.com.google.common.collect.ImmutableList;
@@ -214,8 +214,8 @@ public class TestRemoveDanglingDeleteAction extends
TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return TestHelpers.V2_AND_ABOVE;
}
private String tableLocation = null;
diff --git
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
index d2aee25070..f90cf3b693 100644
---
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
+++
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
@@ -39,7 +39,6 @@ import static org.mockito.Mockito.spy;
import java.io.File;
import java.io.IOException;
import java.io.UncheckedIOException;
-import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
@@ -154,8 +153,8 @@ public class TestRewriteDataFilesAction extends TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return org.apache.iceberg.TestHelpers.V2_AND_ABOVE;
}
private final FileRewriteCoordinator coordinator =
FileRewriteCoordinator.get();
diff --git
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
index d560b6d680..764e1c6c93 100644
---
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
+++
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
@@ -81,8 +81,8 @@ public class TestPositionDeletesReader extends TestBase {
private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return ImmutableList.of(2, 3);
+ protected static List<Integer> parameters() {
+ return TestHelpers.V2_AND_ABOVE;
}
@BeforeEach
diff --git
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
index 4378e6e1a3..1eb6ea0dcc 100644
---
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
+++
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
@@ -89,23 +89,15 @@ public class TestSparkMetadataColumns extends TestBase {
@Parameters(name = "fileFormat = {0}, vectorized = {1}, formatVersion = {2}")
public static Object[][] parameters() {
- return new Object[][] {
- {FileFormat.PARQUET, false, 1},
- {FileFormat.PARQUET, true, 1},
- {FileFormat.PARQUET, false, 2},
- {FileFormat.PARQUET, true, 2},
- {FileFormat.PARQUET, false, 3},
- {FileFormat.PARQUET, true, 3},
- {FileFormat.AVRO, false, 1},
- {FileFormat.AVRO, false, 2},
- {FileFormat.AVRO, false, 3},
- {FileFormat.ORC, false, 1},
- {FileFormat.ORC, true, 1},
- {FileFormat.ORC, false, 2},
- {FileFormat.ORC, true, 2},
- {FileFormat.ORC, false, 3},
- {FileFormat.ORC, true, 3},
- };
+ List<Object[]> parameters = Lists.newArrayList();
+ for (int version : TestHelpers.ALL_VERSIONS) {
+ parameters.add(new Object[] {FileFormat.PARQUET, false, version});
+ parameters.add(new Object[] {FileFormat.PARQUET, true, version});
+ parameters.add(new Object[] {FileFormat.AVRO, false, version});
+ parameters.add(new Object[] {FileFormat.ORC, false, version});
+ parameters.add(new Object[] {FileFormat.ORC, true, version});
+ }
+ return parameters.toArray(new Object[0][]);
}
@TempDir private Path temp;
diff --git
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
index cda11a6403..42699f4662 100644
---
a/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
+++
b/spark/v3.5/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
@@ -113,14 +113,16 @@ public class TestSparkReaderDeletes extends
DeleteReadTests {
@Parameters(name = "fileFormat = {0}, formatVersion = {1}, vectorized = {2},
planningMode = {3}")
public static Object[][] parameters() {
- return new Object[][] {
- new Object[] {FileFormat.PARQUET, 2, false, PlanningMode.DISTRIBUTED},
- new Object[] {FileFormat.PARQUET, 2, true, PlanningMode.LOCAL},
- new Object[] {FileFormat.ORC, 2, false, PlanningMode.DISTRIBUTED},
- new Object[] {FileFormat.AVRO, 2, false, PlanningMode.LOCAL},
- new Object[] {FileFormat.PARQUET, 3, false, PlanningMode.DISTRIBUTED},
- new Object[] {FileFormat.PARQUET, 3, true, PlanningMode.LOCAL},
- };
+ List<Object[]> parameters = Lists.newArrayList();
+ for (int version : TestHelpers.V2_AND_ABOVE) {
+ parameters.add(new Object[] {FileFormat.PARQUET, version, false,
PlanningMode.DISTRIBUTED});
+ parameters.add(new Object[] {FileFormat.PARQUET, version, true,
PlanningMode.LOCAL});
+ if (version == 2) {
+ parameters.add(new Object[] {FileFormat.ORC, version, false,
PlanningMode.DISTRIBUTED});
+ parameters.add(new Object[] {FileFormat.AVRO, version, false,
PlanningMode.LOCAL});
+ }
+ }
+ return parameters.toArray(new Object[0][]);
}
@BeforeAll
diff --git
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
index 85fbf7152b..1bd26f7aa1 100644
---
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
+++
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestDeleteReachableFilesAction.java
@@ -23,7 +23,6 @@ import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
import java.io.File;
-import java.util.Arrays;
import java.util.List;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
@@ -121,8 +120,8 @@ public class TestDeleteReachableFilesAction extends
TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return org.apache.iceberg.TestHelpers.V2_AND_ABOVE;
}
private Table table;
diff --git
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
index 0668f9ffb9..7e07c66e06 100644
---
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
+++
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestExpireSnapshotsAction.java
@@ -26,7 +26,6 @@ import static org.assertj.core.api.Assumptions.assumeThat;
import java.io.File;
import java.io.IOException;
import java.nio.file.Path;
-import java.util.Arrays;
import java.util.List;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
@@ -130,8 +129,8 @@ public class TestExpireSnapshotsAction extends TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return org.apache.iceberg.TestHelpers.V2_AND_ABOVE;
}
@TempDir private File tableDir;
diff --git
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
index 56800a26dc..76084c2b94 100644
---
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
+++
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestRemoveDanglingDeleteAction.java
@@ -23,7 +23,6 @@ import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assumptions.assumeThat;
import java.io.File;
-import java.util.Arrays;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
@@ -41,6 +40,7 @@ import org.apache.iceberg.PartitionSpec;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
import org.apache.iceberg.TableProperties;
+import org.apache.iceberg.TestHelpers;
import org.apache.iceberg.actions.RemoveDanglingDeleteFiles;
import org.apache.iceberg.hadoop.HadoopTables;
import org.apache.iceberg.relocated.com.google.common.collect.ImmutableList;
@@ -214,8 +214,8 @@ public class TestRemoveDanglingDeleteAction extends
TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return TestHelpers.V2_AND_ABOVE;
}
private String tableLocation = null;
diff --git
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
index aadbe2aa85..8bdab42e91 100644
---
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
+++
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/actions/TestRewriteDataFilesAction.java
@@ -39,7 +39,6 @@ import static org.mockito.Mockito.spy;
import java.io.File;
import java.io.IOException;
import java.io.UncheckedIOException;
-import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
@@ -154,8 +153,8 @@ public class TestRewriteDataFilesAction extends TestBase {
@Parameter private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return Arrays.asList(2, 3);
+ protected static List<Integer> parameters() {
+ return org.apache.iceberg.TestHelpers.V2_AND_ABOVE;
}
private final FileRewriteCoordinator coordinator =
FileRewriteCoordinator.get();
diff --git
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
index d560b6d680..c0db51ec8c 100644
---
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
+++
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestPositionDeletesReader.java
@@ -81,8 +81,8 @@ public class TestPositionDeletesReader extends TestBase {
private int formatVersion;
@Parameters(name = "formatVersion = {0}")
- protected static List<Object> parameters() {
- return ImmutableList.of(2, 3);
+ protected static List<Integer> parameters() {
+ return org.apache.iceberg.TestHelpers.V2_AND_ABOVE;
}
@BeforeEach
diff --git
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
index 1d11d0e6f1..68f6f17aae 100644
---
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
+++
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkMetadataColumns.java
@@ -90,23 +90,15 @@ public class TestSparkMetadataColumns extends TestBase {
@Parameters(name = "fileFormat = {0}, vectorized = {1}, formatVersion = {2}")
public static Object[][] parameters() {
- return new Object[][] {
- {FileFormat.PARQUET, false, 1},
- {FileFormat.PARQUET, true, 1},
- {FileFormat.PARQUET, false, 2},
- {FileFormat.PARQUET, true, 2},
- {FileFormat.PARQUET, false, 3},
- {FileFormat.PARQUET, true, 3},
- {FileFormat.AVRO, false, 1},
- {FileFormat.AVRO, false, 2},
- {FileFormat.AVRO, false, 3},
- {FileFormat.ORC, false, 1},
- {FileFormat.ORC, true, 1},
- {FileFormat.ORC, false, 2},
- {FileFormat.ORC, true, 2},
- {FileFormat.ORC, false, 3},
- {FileFormat.ORC, true, 3},
- };
+ List<Object[]> parameters = Lists.newArrayList();
+ for (int version : TestHelpers.ALL_VERSIONS) {
+ parameters.add(new Object[] {FileFormat.PARQUET, false, version});
+ parameters.add(new Object[] {FileFormat.PARQUET, true, version});
+ parameters.add(new Object[] {FileFormat.AVRO, false, version});
+ parameters.add(new Object[] {FileFormat.ORC, false, version});
+ parameters.add(new Object[] {FileFormat.ORC, true, version});
+ }
+ return parameters.toArray(new Object[0][]);
}
@TempDir private Path temp;
diff --git
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
index cda11a6403..42699f4662 100644
---
a/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
+++
b/spark/v4.0/spark/src/test/java/org/apache/iceberg/spark/source/TestSparkReaderDeletes.java
@@ -113,14 +113,16 @@ public class TestSparkReaderDeletes extends
DeleteReadTests {
@Parameters(name = "fileFormat = {0}, formatVersion = {1}, vectorized = {2},
planningMode = {3}")
public static Object[][] parameters() {
- return new Object[][] {
- new Object[] {FileFormat.PARQUET, 2, false, PlanningMode.DISTRIBUTED},
- new Object[] {FileFormat.PARQUET, 2, true, PlanningMode.LOCAL},
- new Object[] {FileFormat.ORC, 2, false, PlanningMode.DISTRIBUTED},
- new Object[] {FileFormat.AVRO, 2, false, PlanningMode.LOCAL},
- new Object[] {FileFormat.PARQUET, 3, false, PlanningMode.DISTRIBUTED},
- new Object[] {FileFormat.PARQUET, 3, true, PlanningMode.LOCAL},
- };
+ List<Object[]> parameters = Lists.newArrayList();
+ for (int version : TestHelpers.V2_AND_ABOVE) {
+ parameters.add(new Object[] {FileFormat.PARQUET, version, false,
PlanningMode.DISTRIBUTED});
+ parameters.add(new Object[] {FileFormat.PARQUET, version, true,
PlanningMode.LOCAL});
+ if (version == 2) {
+ parameters.add(new Object[] {FileFormat.ORC, version, false,
PlanningMode.DISTRIBUTED});
+ parameters.add(new Object[] {FileFormat.AVRO, version, false,
PlanningMode.LOCAL});
+ }
+ }
+ return parameters.toArray(new Object[0][]);
}
@BeforeAll