Standardize integration test naming with ITest suffix#8328
Conversation
Co-authored-by: pethers <[email protected]>
Co-authored-by: pethers <[email protected]>
|
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
There was a problem hiding this comment.
Pull request overview
This pull request standardizes integration test naming by renaming 30 test classes to use the ITest suffix, aligning with the Maven exclusion pattern (-Dtest='!**ITest*') already configured in build.xml. This enables unit test runs to exclude infrastructure-dependent tests (those requiring database access, external APIs, or Spring context), improving CI/CD pipeline performance.
Changes:
- Renamed 7 external service integration tests (WorldBank API: 4, ESV: 2, Val: 1) from
*Test.javato*ITest.java - Renamed 23 system integration tests (Admin UI: 5, User UI: 18) from
*Test.javato*ITest.java - Updated all class references in
IntegrationTestSuite.javato import the renamed test classes - Added comprehensive documentation in
UnitTestPlan.mdexplaining naming conventions, characteristics, and build integration - Added test naming conventions to
CONTRIBUTING.mdto guide future contributors
Reviewed changes
Copilot reviewed 33 out of 33 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
service.external.worldbank/src/test/java/.../WorldbankTopicApiImplITest.java |
Renamed WorldBank topic API test from *Test to *ITest |
service.external.worldbank/src/test/java/.../WorldbankIndicatorApiImplITest.java |
Renamed WorldBank indicator API test from *Test to *ITest |
service.external.worldbank/src/test/java/.../WorldbankDataApiImplITest.java |
Renamed WorldBank data API test from *Test to *ITest |
service.external.worldbank/src/test/java/.../WorldbankCountryApiImplITest.java |
Renamed WorldBank country API test from *Test to *ITest |
service.external.val/src/test/java/.../ValApiITest.java |
Renamed Val API test from *Test to *ITest |
service.external.esv/src/test/java/.../EsvGovernmentOperationsExcelReaderITest.java |
Renamed ESV operations reader test from *Test to *ITest |
service.external.esv/src/test/java/.../EsvGovernmentBodyOperationOutcomeReaderITest.java |
Renamed ESV body outcome reader test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/politician/UserPoliticianRankingITest.java |
Renamed politician ranking UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/politician/UserPoliticianITest.java |
Renamed politician UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/party/UserPartyRankingITest.java |
Renamed party ranking UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/party/UserPartyITest.java |
Renamed party UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/parliament/UserParliamentITest.java |
Renamed parliament UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/ministry/UserMinistryRankingITest.java |
Renamed ministry ranking UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/ministry/UserMinistryITest.java |
Renamed ministry UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/home/UserHomeITest.java |
Renamed home UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/governmentbody/UserGovernmentBodyRankingITest.java |
Renamed government body ranking UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/governmentbody/UserGovernmentBodyITest.java |
Renamed government body UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/documents/UserDocumentsITest.java |
Renamed documents UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/document/UserDocumentITest.java |
Renamed document UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/docsearch/UserDocumentSearchITest.java |
Renamed document search UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/country/UserCountryITest.java |
Renamed country UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/common/UserCommonITest.java |
Renamed common UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/committee/UserCommitteeRankingITest.java |
Renamed committee ranking UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/committee/UserCommitteeITest.java |
Renamed committee UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../user/ballot/UserBallotITest.java |
Renamed ballot UI test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../admin/security/AdminSecurityITest.java |
Renamed admin security test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../admin/operations/AdminOperationsITest.java |
Renamed admin operations test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../admin/data/AdminDataQualityITest.java |
Renamed admin data quality test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../admin/data/AdminDataITest.java |
Renamed admin data test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../admin/configuration/AdminConfigurationITest.java |
Renamed admin configuration test from *Test to *ITest |
citizen-intelligence-agency/src/test/java/.../IntegrationTestSuite.java |
Updated all test class imports to reference renamed *ITest classes |
UnitTestPlan.md |
Added comprehensive section documenting naming conventions, characteristics, and Maven exclusion patterns |
CONTRIBUTING.md |
Added test naming conventions section to guide contributors |
Comments suppressed due to low confidence (5)
citizen-intelligence-agency/src/test/java/com/hack23/cia/systemintegrationtest/user/party/UserPartyITest.java:12
- The JavaDoc comment incorrectly states "The Class UserPartyRankingITest" but the actual class name is "UserPartyITest". The JavaDoc should be updated to match the actual class name.
citizen-intelligence-agency/src/test/java/com/hack23/cia/systemintegrationtest/user/committee/UserCommitteeITest.java:13 - The JavaDoc comment incorrectly states "The Class UserBallotITest" but the actual class name is "UserCommitteeITest". The JavaDoc should be updated to match the actual class name.
citizen-intelligence-agency/src/test/java/com/hack23/cia/systemintegrationtest/user/country/UserCountryITest.java:12 - The JavaDoc comment incorrectly states "The Class UserCommonITest" but the actual class name is "UserCountryITest". The JavaDoc should be updated to match the actual class name.
citizen-intelligence-agency/src/test/java/com/hack23/cia/systemintegrationtest/user/document/UserDocumentITest.java:12 - The JavaDoc comment incorrectly states "The Class UserDocumentsITest" (plural) but the actual class name is "UserDocumentITest" (singular). The JavaDoc should be updated to match the actual class name.
citizen-intelligence-agency/src/test/java/com/hack23/cia/systemintegrationtest/admin/security/AdminSecurityITest.java:13 - The JavaDoc comment incorrectly states "The Class UserHomeITest" but the actual class name is "AdminSecurityITest". The JavaDoc should be updated to match the actual class name.



Description
Renamed 30 integration tests to use
ITestsuffix, aligning with Maven exclusion pattern already configured inbuild.xml. This enables unit test runs to exclude tests requiring database access, external APIs, or Spring context, improving CI/CD pipeline speed.Changes:
Distribution after standardization:
*ITest.java) - require infrastructure*Test.java) - pure unit tests with mocksExample:
Build exclusion pattern (unchanged):
-Dtest='!**ITest*,!**DocumentationTest*'Type of Change
Primary Changes
Technical Changes
Impact Analysis
Technical Impact
Testing
Documentation
Checklist
Additional Notes
Naming Convention:
*Test.java: Unit tests with mocks, no DB/API/Spring, <1s execution*ITest.java: Integration tests requiring database, external APIs, or Spring contextVerification:
mvn test -Dtest='!**ITest*'runs 108 tests)Security Considerations
Release Notes
Standardized integration test naming with
ITestsuffix for 30 test files. Unit test runs now properly exclude infrastructure-dependent tests, improving CI/CD performance. No functional changes to test behavior.Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
api.worldbank.org/usr/lib/jvm/temurin-25-jdk-amd64/bin/java /usr/lib/jvm/temurin-25-jdk-amd64/bin/java -javaagent:/home/REDACTED/.m2/repository/org/jacoco/org.jacoco.agent/0.8.14/org.jacoco.agent-0.8.14-runtime.jar=destfile=/home/REDACTED/work/cia/cia/service.external.worldbank/target/jacoco.exec,append=true,includes=**/hack23/**,excludes=**/*.jar -XX:+EnableDynamicAgentLoading --enable-native-access=ALL-UNNAMED --add-exports java.base/sun.nio.ch=ALL-UNNAMED --add-exports java.base/jdk.internal.ref=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED -jar /home/REDACTED/work/cia/cia/service.external.worldbank/target/surefire/surefirebooter-20260203163335749_3.jar /home/REDACTED/work/cia/cia/service.external.worldbank/target/surefire 2026-02-03T16-33-35_665-jvmRun1 surefire-20260203163335749_1tmp surefire_0-20260203163335749_2tmp(dns block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.