sjhajharia opened a new pull request, #22339:
URL: https://github.com/apache/kafka/pull/22339
### What
Split
clients/src/test/java/org/apache/kafka/clients/admin/KafkaAdminClientTest.java
(11,770 lines, 274 tests, 80 helpers) into one abstract base + 7 cohesive test
classes:
- KafkaAdminClientTestBase.java: Abstract base -- all 79 helpers + constants
- KafkaAdminClientTest.java: Lifecycle, cluster, features, raft, quorum,
broker unregister, telemetry, ListConfigResources, top-level timeouts
- KafkaAdminClientTopicTest.java: Topics, partitions, replicas, log dirs,
offsets, records, reassignments, leader election
- KafkaAdminClientConsumerGroupTest.java: Consumer + classic groups (list /
describe / delete / offsets / alter / remove-members)
- KafkaAdminClientStreamsGroupTest.java: Streams Group tests
- KafkaAdminClientShareGroupTest.java: Share Group Tests
- KafkaAdminClientConfigTest.java: ACLs, configs, SCRAM credentials, client
quotas
- KafkaAdminClientTransactionTest.java: Transactions + producer fencing
### Why
The original file had grown to ~3× the size of the next-largest test in the
clients module. Every new KIP that adds an Admin API extends it further (recent
additions: share groups, streams groups). The size hurt:
- IDE indexing and incremental compile were slow on this single file.
- Selective re-runs (--tests "*ShareGroup*") had to scan the whole file.
- A contributor working on one Admin API had to scroll through hundreds of
unrelated tests.
- 307 imports — most tests only needed a fraction.
```
KafkaAdminClientTest: 74 tests
KafkaAdminClientTopicTest: 62 tests
KafkaAdminClientConsumerGroupTest: 68 tests
KafkaAdminClientStreamsGroupTest: 29 tests
KafkaAdminClientShareGroupTest: 22 tests
KafkaAdminClientConfigTest: 19 tests
KafkaAdminClientTransactionTest: 13 tests
```
--
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]