Skip to content

Conversation

@lm-sousa
Copy link
Member

@lm-sousa lm-sousa commented Sep 3, 2025

NOT TO BE MERGED. FOR REVIEW PURPOSES ONLY. THIS IS PART OF A STACKED DIFF.

joaobispo and others added 30 commits May 6, 2025 16:00
- Removed Eclipse project files (.classpath and .project) from LogbackPlus, MvelPlus, SlackPlus, SymjaPlus, XStreamPlus, Z3Helper, jOptions, tdrcLibrary, and SpecsUtils.
- Added Gradle build files (build.gradle and settings.gradle) for MvelPlus, SlackPlus, Z3Helper, and tdrcLibrary.
- Updated dependencies in build.gradle files to include necessary libraries.
- Cleaned up ivy.xml files in multiple projects, removing unnecessary dependencies and files.
- Adjusted project settings to align with Gradle conventions and improve build process.
- Gradle wasn't configured to see the existing tests.
- Updated the config to run them.
- Moved existing tests into 'legacy-tests'.
- Fixed a few bugs in the tests themselves.
- Modernized the legacy test suite to use Junit5.
- Updated various classes to replace usages of SpecsFactory methods for creating collections (e.g., newArrayList, newHashMap) with standard Java collections (e.g., ArrayList, HashMap).
- Improved code readability and reduced dependency on SpecsFactory for collection instantiation.
- Minor corrections in comments and log messages for clarity.
- Added JUnit Pioneer dependency for test retries in build.gradle files for SpecsUtils, SymjaPlus, jOptions, and tdrcLibrary.
- Updated various test classes to use @RetryingTest(5) for performance tests to enhance reliability during test execution.
Fix null handling in setChildren() and improve detach() safety; add convenience methods for child retrieval
Enhance null handling and improve logging behavior across multiple classes

- Added null checks in LogSourceInfo and LoggerWrapper to prevent NullPointerExceptions.
- Updated StringLogger to create a defensive copy of the tags set.
- Improved StringHandler and TextAreaHandler to handle null records gracefully.
- Adjusted tests to reflect new null handling behavior and ensure proper functionality.
Enhance null validation in EnumHelper and EnumHelperWithValue constructors; remove deprecated code and improve exception handling in tests
Enhance thread safety in Graph and GraphNode classes; add tests for concurrent modifications
@lm-sousa lm-sousa requested a review from Copilot September 3, 2025 17:07
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR implements comprehensive test coverage for the JavaGenerator library, adding thorough test suites for multiple bug reports and library refactoring from Eclipse/Ivy to Gradle build system. The changes focus on improving build infrastructure, documenting discovered bugs through dedicated bug report files, and establishing extensive test coverage for utility classes and type system components.

Key changes include:

  • Migration from Eclipse/Ivy build system to Gradle with standardized build configurations
  • Addition of comprehensive bug documentation across 10 phases (5.6-6.6) covering various framework components
  • Implementation of extensive test suites for core JavaGenerator classes including utilities, types, and statements

Reviewed Changes

Copilot reviewed 154 out of 674 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
SpecsUtils/BUGS_*.md Bug report documentation for multiple testing phases covering Provider, Utilities, Events, Swing, Jobs frameworks
JavaGenerator/test/ Comprehensive test suites for Utils, UniqueList, CompilationUnit, and type system classes
*/build.gradle Gradle build configurations replacing Ivy dependencies
*/settings.gradle Gradle project settings with inter-project dependencies
README.md Updated documentation for Gradle-based build system and project structure
Comments suppressed due to low confidence (1)

JavaGenerator/test/org/specs/generators/java/types/PrimitiveTest.java:1

  • The test method is missing the @ParameterizedTest annotation despite using @valuesource on line 114. This will cause the test to fail to execute properly as it expects a parameter but isn't configured as a parameterized test.
package org.specs.generators.java.types;

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants