test: migrate second extensions-contrib batch to JUnit 5 - #19915
test: migrate second extensions-contrib batch to JUnit 5#19915FrankChen021 wants to merge 4 commits into
Conversation
| mover.move(new DataSegment( | ||
| "test", | ||
| Intervals.of("2013-01-01/2013-01-02"), | ||
| "1", | ||
| ImmutableMap.of( | ||
| "key", | ||
| "baseKey/test/2013-01-01T00:00:00.000Z_2013-01-02T00:00:00.000Z/1/0/index.zip", | ||
| "bucket", | ||
| "DOES NOT EXIST" | ||
| ), | ||
| ImmutableList.of("dim1", "dim1"), | ||
| ImmutableList.of("metric1", "metric2"), | ||
| NoneShardSpec.instance(), | ||
| 0, | ||
| 1 | ||
| ), ImmutableMap.of("bucket", "DOES NOT EXIST", "baseKey", "baseKey2")); |
There was a problem hiding this comment.
Thanks for flagging this. This call predates the JUnit 5 migration; the PR only moved it into an assertThrows lambda. Migrating the deprecated DataSegment constructor to a builder is outside this PR’s scope, so I’m intentionally leaving it unchanged.
| Assertions.assertEquals(150000, config.getMaxRowsInMemory()); | ||
| Assertions.assertEquals(5_000_000, config.getMaxRowsPerSegment().intValue()); | ||
| Assertions.assertEquals(new Period("PT10M"), config.getIntermediatePersistPeriod()); | ||
| Assertions.assertEquals(0, config.getMaxPendingPersists()); |
There was a problem hiding this comment.
Thanks for flagging this. This call predates the JUnit 5 migration; this PR only changes Assert to Assertions here. Deprecated API cleanup is outside this PR’s scope, so I’m intentionally leaving it unchanged.
| Assertions.assertEquals(100, config.getMaxRowsInMemory()); | ||
| Assertions.assertEquals(100, config.getMaxRowsPerSegment().intValue()); | ||
| Assertions.assertEquals(new Period("PT1H"), config.getIntermediatePersistPeriod()); | ||
| Assertions.assertEquals(100, config.getMaxPendingPersists()); |
There was a problem hiding this comment.
Thanks for flagging this. This call predates the JUnit 5 migration; this PR only changes Assert to Assertions here. Deprecated API cleanup is outside this PR’s scope, so I’m intentionally leaving it unchanged.
| Assertions.assertEquals(150000, config.getMaxRowsInMemory()); | ||
| Assertions.assertEquals(5_000_000, config.getMaxRowsPerSegment().intValue()); | ||
| Assertions.assertEquals(new Period("PT10M"), config.getIntermediatePersistPeriod()); | ||
| Assertions.assertEquals(0, config.getMaxPendingPersists()); |
There was a problem hiding this comment.
Thanks for flagging this. This call predates the JUnit 5 migration; this PR only changes Assert to Assertions here. Deprecated API cleanup is outside this PR’s scope, so I’m intentionally leaving it unchanged.
| Assertions.assertEquals(100, config.getMaxRowsInMemory()); | ||
| Assertions.assertEquals(100, config.getMaxRowsPerSegment().intValue()); | ||
| Assertions.assertEquals(new Period("PT1H"), config.getIntermediatePersistPeriod()); | ||
| Assertions.assertEquals(100, config.getMaxPendingPersists()); |
There was a problem hiding this comment.
Thanks for flagging this. This call predates the JUnit 5 migration; this PR only changes Assert to Assertions here. Deprecated API cleanup is outside this PR’s scope, so I’m intentionally leaving it unchanged.
There was a problem hiding this comment.
Pull request overview
This PR continues the extensions-contrib JUnit 4 → JUnit 5 migration (part of #13948) by updating tests and module POMs in moving-average-query, aliyun-oss-extensions, rabbit-stream-indexing-service, and opentsdb-emitter to use JUnit Jupiter APIs and removing direct JUnit 4/Hamcrest dependencies from those modules.
Changes:
- Migrated JUnit 4 annotations/assertions/runners/rules to JUnit Jupiter equivalents across the four contrib modules.
- Updated module POMs to depend on JUnit Jupiter artifacts and removed direct
junit:junit/ Hamcrest dependencies where no longer needed. - Refactored
MovingAverageQueryTestto use JUnit 5 parameterized tests and to avoid loading the JUnit-4-basedQueryStackTestsfixture.
Reviewed changes
Copilot reviewed 53 out of 53 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| extensions-contrib/rabbit-stream-indexing-service/src/test/java/org/apache/druid/indexing/rabbitstream/supervisor/RabbitStreamSupervisorTuningConfigTest.java | Switch assertions to Jupiter and remove JUnit4 rule usage. |
| extensions-contrib/rabbit-stream-indexing-service/src/test/java/org/apache/druid/indexing/rabbitstream/supervisor/RabbitStreamSupervisorTest.java | Migrate lifecycle annotations and assertions to JUnit 5. |
| extensions-contrib/rabbit-stream-indexing-service/src/test/java/org/apache/druid/indexing/rabbitstream/supervisor/RabbitStreamSupervisorIOConfigTest.java | Replace ExpectedException rule + Hamcrest matchers with assertThrows/Jupiter assertions. |
| extensions-contrib/rabbit-stream-indexing-service/src/test/java/org/apache/druid/indexing/rabbitstream/RabbitStreamRecordSupplierTest.java | Replace JUnit4 lifecycle/Assert APIs with Jupiter equivalents. |
| extensions-contrib/rabbit-stream-indexing-service/src/test/java/org/apache/druid/indexing/rabbitstream/RabbitStreamIndexTaskTuningConfigTest.java | Remove JUnit4 ExpectedException rule and migrate to Jupiter assertions. |
| extensions-contrib/rabbit-stream-indexing-service/src/test/java/org/apache/druid/indexing/rabbitstream/RabbitStreamIndexTaskIOConfigTest.java | Migrate JUnit 4 assertions to Jupiter assertions. |
| extensions-contrib/rabbit-stream-indexing-service/pom.xml | Add Jupiter deps; remove direct JUnit4 + Hamcrest test deps. |
| extensions-contrib/opentsdb-emitter/src/test/java/org/apache/druid/emitter/opentsdb/OpentsdbSenderTest.java | Migrate to Jupiter assertions. |
| extensions-contrib/opentsdb-emitter/src/test/java/org/apache/druid/emitter/opentsdb/OpentsdbEventTest.java | Migrate lifecycle + assertions to JUnit 5. |
| extensions-contrib/opentsdb-emitter/src/test/java/org/apache/druid/emitter/opentsdb/OpentsdbEmitterConfigTest.java | Migrate lifecycle + assertions to JUnit 5. |
| extensions-contrib/opentsdb-emitter/src/test/java/org/apache/druid/emitter/opentsdb/EventConverterTest.java | Migrate lifecycle + assertions to JUnit 5. |
| extensions-contrib/opentsdb-emitter/pom.xml | Add Jupiter deps; remove direct JUnit4 dependency. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/RowBucketIterableTest.java | Migrate JUnit4 annotations/assertions to Jupiter equivalents. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/PostAveragerAggregatorCalculatorTest.java | Migrate lifecycle + assertions to Jupiter equivalents. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/MovingAverageQueryTest.java | Replace JUnit4 parameterized runner with JUnit 5 parameterized test + local noop scheduler fixture. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/MovingAverageIterableTest.java | Remove Hamcrest usage and switch to Jupiter assertions. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/LongSumAveragerTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/LongSumAveragerFactoryTest.java | Replace Hamcrest type assertion with Assertions.assertInstanceOf. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/LongMinAveragerTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/LongMinAveragerFactoryTest.java | Replace Hamcrest type assertion with Assertions.assertInstanceOf. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/LongMeanNoNullAveragerTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/LongMeanNoNullAveragerFactoryTest.java | Replace Hamcrest type assertion with Assertions.assertInstanceOf. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/LongMeanAveragerTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/LongMeanAveragerFactoryTest.java | Replace Hamcrest type assertion with Assertions.assertInstanceOf. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/LongMaxAveragerTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/LongMaxAveragerFactoryTest.java | Replace Hamcrest type assertion with Assertions.assertInstanceOf. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/DoubleSumAveragerTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/DoubleSumAveragerFactoryTest.java | Replace Hamcrest type assertion with Assertions.assertInstanceOf. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/DoubleMinAveragerTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/DoubleMinAveragerFactoryTest.java | Replace Hamcrest type assertion with Assertions.assertInstanceOf. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/DoubleMeanNoNullAveragerTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/DoubleMeanNoNullAveragerFactoryTest.java | Replace Hamcrest type assertion with Assertions.assertInstanceOf. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/DoubleMeanAveragerWithPeriodTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/DoubleMeanAveragerTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/DoubleMeanAveragerFactoryTest.java | Replace Hamcrest type assertion with Assertions.assertInstanceOf. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/DoubleMaxAveragerTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/DoubleMaxAveragerFactoryTest.java | Replace Hamcrest type assertion with Assertions.assertInstanceOf. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/BaseAveragerTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/BaseAveragerFactoryTest.java | Migrate lifecycle + asserts to Jupiter. |
| extensions-contrib/moving-average-query/src/test/java/org/apache/druid/query/movingaverage/averagers/AveragerFactoryWrapperTest.java | Migrate JUnit4 asserts to Jupiter. |
| extensions-contrib/moving-average-query/pom.xml | Add Jupiter deps; remove direct JUnit4 + Hamcrest test deps. |
| extensions-contrib/aliyun-oss-extensions/src/test/java/org/apache/druid/storage/aliyun/OssTimestampVersionedDataFinderTest.java | Replace JUnit4 asserts with Jupiter asserts. |
| extensions-contrib/aliyun-oss-extensions/src/test/java/org/apache/druid/storage/aliyun/OssTaskLogsTest.java | Migrate off TemporaryFolder rule to @TempDir and switch to Jupiter assertions; migrate EasyMock runner to extension. |
| extensions-contrib/aliyun-oss-extensions/src/test/java/org/apache/druid/storage/aliyun/OssStorageDruidModuleTest.java | Migrate JUnit4 assertions to Jupiter. |
| extensions-contrib/aliyun-oss-extensions/src/test/java/org/apache/druid/storage/aliyun/OssObjectSummaryIteratorTest.java | Migrate JUnit4 assertions to Jupiter. |
| extensions-contrib/aliyun-oss-extensions/src/test/java/org/apache/druid/storage/aliyun/OssDataSegmentPusherTest.java | Replace TemporaryFolder rule with @TempDir and migrate assertions to Jupiter. |
| extensions-contrib/aliyun-oss-extensions/src/test/java/org/apache/druid/storage/aliyun/OssDataSegmentPusherConfigTest.java | Migrate JUnit4 assertions to Jupiter. |
| extensions-contrib/aliyun-oss-extensions/src/test/java/org/apache/druid/storage/aliyun/OssDataSegmentPullerTest.java | Replace TemporaryFolder rule with @TempDir and migrate assertions to Jupiter. |
| extensions-contrib/aliyun-oss-extensions/src/test/java/org/apache/druid/storage/aliyun/OssDataSegmentMoverTest.java | Replace expected= JUnit4 tests with assertThrows and migrate assertions to Jupiter. |
| extensions-contrib/aliyun-oss-extensions/src/test/java/org/apache/druid/storage/aliyun/OssDataSegmentKillerTest.java | Migrate EasyMock runner to JUnit 5 extension and convert assertions to Jupiter. |
| extensions-contrib/aliyun-oss-extensions/src/test/java/org/apache/druid/storage/aliyun/OssDataSegmentArchiverTest.java | Migrate lifecycle + assertions to Jupiter. |
| extensions-contrib/aliyun-oss-extensions/src/test/java/org/apache/druid/data/input/aliyun/OssInputSourceTest.java | Replace TemporaryFolder/ExpectedException rules with @TempDir + assertThrows, migrate assertions to Jupiter, and add a small folder helper. |
| extensions-contrib/aliyun-oss-extensions/pom.xml | Add Jupiter deps; remove direct JUnit4 + Hamcrest deps. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
FrankChen021
left a comment
There was a problem hiding this comment.
I have reviewed the code for correctness, edge cases, concurrency, and integration risks; no issues found.
Reviewed 53 of 53 changed files.
This is an automated review by Codex GPT-5.6-Luna(max)
Part of #13948.
Summary
This PR migrates the second independent
extensions-contribbatch from JUnit 4 to JUnit 5:moving-average-queryaliyun-oss-extensionsrabbit-stream-indexing-serviceopentsdb-emitterThe module POMs remove JUnit 4 and Hamcrest test dependencies, and the test sources use Jupiter annotations, assertions, and parameterization.
MovingAverageQueryTestnow owns its small no-op scheduler fixture instead of loading the JUnit-4-basedQueryStackTestsclass.This branch is based directly on
master; it does not stack on #19908 and contains no shared SQL/processing fixture changes. It can be merged independently. The shared fixtures are intentionally owned only by #19908.Related migration PRs: #19908, #19875, #19876, #19877, #19878, #19879, #19880, #19881, and #19882.
Validation
test-compilepassed for all four modules and their required reactor dependencies.git diff --checkpassed.