test: add Parquet footer compatibility coverage

Signed-off-by: jeremyhi <fengjiachun@gmail.com>
This commit is contained in:
jeremyhi
2026-08-06 19:59:50 +08:00
parent 222bfb74aa
commit a6a679aa68
6 changed files with 128 additions and 1 deletions
+38
View File
@@ -37,6 +37,7 @@ from pathlib import Path
VERSION_RE = re.compile(r"v[0-9]+\.[0-9]+\.[0-9]+")
PARQUET_FOOTER_CASE_FILTER = "^parquet_copy_footer_compatibility$"
def parse_args() -> argparse.Namespace:
@@ -175,6 +176,22 @@ def run_for_version(
preserve_state=preserve_state,
)
parquet_base_command = [
*base_command,
"--topology",
"standalone",
"--test-filter",
PARQUET_FOOTER_CASE_FILTER,
"--expect-cases",
"1",
]
run_compat(
base_command=parquet_base_command,
preview_title=f"Preview {from_version} -> current (standalone Parquet footer)",
compatibility_title=f"Compatibility {from_version} -> current (standalone Parquet footer)",
preserve_state=preserve_state,
)
def run_downgrade_for_version(
*,
@@ -206,6 +223,27 @@ def run_downgrade_for_version(
preserve_state=preserve_state,
)
parquet_base_command = [
str(runner),
"compat",
"--from-bins-dir",
str(current_bins_dir),
"--to-version",
to_version,
"--topology",
"standalone",
"--test-filter",
PARQUET_FOOTER_CASE_FILTER,
"--expect-cases",
"1",
]
run_compat(
base_command=parquet_base_command,
preview_title=f"Preview current -> {to_version} (standalone Parquet footer)",
compatibility_title=f"Compatibility current -> {to_version} (standalone Parquet footer)",
preserve_state=preserve_state,
)
def main() -> int:
args = parse_args()