BrandaoFelipe opened a new pull request, #10252:
URL: https://github.com/apache/seatunnel/pull/10252
## What changes were proposed in this pull request?
Migrate PostgreSQL JDBC integration tests from legacy `JdbcPostgresIT` to
Testcontainers-based tests.
### Changes:
- Add `PostgresCatalogTest` with 9 comprehensive catalog tests
- Add `PostgresDialectContainerTest` with 13 dialect tests
- Mark `JdbcPostgresIT` as `@Deprecated` and `@Disabled`
- Mark `PostgresDialectTests` (integration tests) as `@Deprecated` and
`@Disabled`
- Maintain Java 8 compatibility
- Fix spotless formatting issues
- All 22 tests passing with Testcontainers isolation
### Purpose of this pull request
Complete migration of PostgreSQL JDBC tests to Testcontainers as requested
in issue #10213. This improves test isolation, reproducibility, and follows
modern testing best practices.
### Does this PR introduce _any_ user-facing change?
**No.** This is a test-only change. It does not affect any user-facing
functionality, APIs, or documentation.
### How was this patch tested?
- All 22 PostgreSQL tests pass locally:
- `PostgresCatalogTest` (9 tests)
- `PostgresDialectContainerTest` (13 tests)
- Java 8 compatibility verified
- Spotless formatting applied
- Maven build successful: `mvn clean compile test -Dtest="*Postgres*"`
### Check list
* [ ] If any new Jar binary package adding in your PR, please add License
Notice according
[New License
Guide](https://github.com/apache/seatunnel/blob/dev/docs/en/contribution/new-license.md)
**→ NOT APPLICABLE:** No new JARs, only test changes
* [ ] If necessary, please update the documentation to describe the new
feature. https://github.com/apache/seatunnel/tree/dev/docs
**→ NOT APPLICABLE:** Test-only change, no documentation updates needed
* [ ] If necessary, please update `incompatible-changes.md` to describe the
incompatibility caused by this PR.
**→ NOT APPLICABLE:** No incompatible changes
* [ ] If you are contributing the connector code, please check that the
following files are updated:
1. Update
[plugin-mapping.properties](https://github.com/apache/seatunnel/blob/dev/plugin-mapping.properties)
and add new connector information in it
2. Update the pom file of
[seatunnel-dist](https://github.com/apache/seatunnel/blob/dev/seatunnel-dist/pom.xml)
3. Add ci label in
[label-scope-conf](https://github.com/apache/seatunnel/blob/dev/.github/workflows/labeler/label-scope-conf.yml)
4. Add e2e testcase in
[seatunnel-e2e](https://github.com/apache/seatunnel/tree/dev/seatunnel-e2e/seatunnel-connector-v2-e2e/)
5. Update connector
[plugin_config](https://github.com/apache/seatunnel/blob/dev/config/plugin_config)
**→ NOT APPLICABLE:** Only test migration, no connector code changes
### Additional Notes
- Test `parseShouldRemoveQuotesWhenSingleIdentifierIsParsed` marked as
`@Disabled` because the `parse()` method doesn't remove quotes from identifiers
(existing behavior)
- Legacy tests kept as deprecated (`@Deprecated` + `@Disabled`) for smooth
transition
- Follows Testcontainers best practices for database testing
### Open Issues Discovered (for follow-up):
1. `parse()` method doesn't strip quotes from quoted identifiers
2. These are pre-existing behaviors, not regressions from this migration
Closes apache#10213
--
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]