Change Log Report

Total number of changed sets: 1

Changes between 2023-11-22 and 2023-12-23

Total commits: 3
Total number of files changed: 4

Timestamp Author Details
2023-12-05 16:11:09 Jegors Čemisovs <jegors_cemisovs@epam.com> epam-ai-dial/epam-ai-flipflop/src/test/groovy/epam/flipflop/FlipFlopPredicateAiSpec.groovy v 42c31319f6178f8820a68671fd012839cb3a0f48

Update FlipFlopPredicate test to use Object

The FlipFlopPredicate test in FlipFlopPredicateAiSpec.groovy was updated to utilize Object instead of Boolean. This modification allows a more diverse range of inputs for testing. The test method has been updated to reflect this change. Additionally, an 'and' clause was added in the 'given' section to improve readability.
2023-12-03 20:57:26 Jegors Čemisovs <jegors_cemisovs@epam.com> epam-ai-dial/epam-ai-flipflop/src/main/java/epam/flipflop/FlipFlopPredicate.java v ec0a974ee3eef20b00d77aea533b29350988c418
epam-ai-dial/epam-ai-flipflop/src/test/groovy/epam/flipflop/FlipFlopPredicateAiSpec.groovy v ec0a974ee3eef20b00d77aea533b29350988c418

Revamp FlipFlopPredicate and adjust test files

Refactored FlipFlopPredicate class for clarity and efficiency. Introduced NPE checks for input predicates. Renamed variables for better understanding of their purposes. Streamlined test method in FlipFlopPredicateAiSpec. Minor text adjustment in LegalAgePredicateSpec.

The changes are made to improve readability, maintainability and to ensure safety from NullPointerExceptions by requiring non-null values for input predicates.
2023-12-03 20:10:59 Jegors Čemisovs <jegors_cemisovs@epam.com> epam-ai-dial/epam-ai-flipflop/pom.xml v ea4316eff58f044ab258e698f0a282ba2e571811
epam-ai-dial/epam-ai-flipflop/src/main/java/epam/flipflop/FlipFlopPredicate.java v ea4316eff58f044ab258e698f0a282ba2e571811
epam-ai-dial/epam-ai-flipflop/src/test/java/epam/flipflop/FlipFlopPredicateAiTest.java v ea4316eff58f044ab258e698f0a282ba2e571811

Update FlipFlopPredicate and LegalAgePredicate

Extended FlipFlopPredicate tests and functionality to meet the modified specification where it returns true while the state has been changed from active to inactive on the input satisfying the end condition.

Added tests and implementation for LegalAgePredicate which determines if a person of a given birthdate has reached legal age. Implementation and tests are provided with two Predicate constructors allowing to use different Clock for date mocking in tests.

Added a detailed dialogue transcript explaining the reason behind all decisions and clarifications asked during the task implementation.