gabotechs opened a new pull request, #88: URL: https://github.com/apache/datafusion-iceberg/pull/88
Stacked on #87. `integration_datafusion_test.rs` had become a catch-all. This moves each of its tests to a file for what it tests, and builds their tables with `FixtureCatalog` from the test tools instead of hand-assembling a `MemoryCatalog`, namespace, and `TableCreation` in every test. | Test | Now in | |---|---| | `test_table_projection` | `projection_pushdown.rs` | | `test_table_predict_pushdown` | `filter_pushdown.rs` | | `test_metadata_table` | `metadata_tables.rs`, which is `metadata_projection.rs` renamed to cover both of its tests | | the 3 provider tests | `catalog_provider.rs` | | the 3 insert tests | `insert_into.rs` | | `test_plan_nodes_are_inspectable` | `plan_nodes.rs` | | `test_scan_after_schema_evolution_reads_provider_columns` | `schema_evolution.rs` | There's no shared test module. `display_schema()` joins the test tools, next to `data_file_name()`, since three files snapshot schemas with it. The rest is inlined: tests of the catalog provider register it in their own `SessionContext`, which is the API under test, and the few helpers used more than once in a file stay local to it. The insert tests still write their data with `INSERT`, since the write path is what they test; only their empty tables come from the test tools. The old helpers dropped each `TempDir` right after taking its path, so every run left about ten directories of tables behind in the system temp dir. `FixtureCatalog` owns its directory, so the tests now clean up after themselves. Assertions and snapshots are unchanged. `AGENTS.md` and `README.md` point at the new files. 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- 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]
