I have forked your project and experienced a few problems with the existing unit tests.
I would have expected every unit test to pass without any failures.
Unfortunately this is not the case, I will go into further details in the description below.
My Setup
Windows
IntelliJ IDEA 2023.2.2. (Ultimate Edition) Build #IU-232.9921.47
JDK 21
JUnit 'archunit-junit4' version 0.22.0 from the pom.xml
Customer-Core
26 tests executed
18 tests passed
8 tests failed
All tests in the class CustomerInformationHolderTests failed due to an IllegalStateException. The error messages says: "Failed to load ApplicationContext". I assume there is a Spring Configuratin missing for the test setup.
Customer-Management-Backend
10 tests executed
9 tests passed
1 test failed
The test layer_dependencies_are_respected in the class ArchitectureTests failed due to an AssertionError. It seems like there is a violation in the architecture principle.
I assume the test is failing because the package 'com.lakesidemutual.customermanagement.application' is not existing and thus empty.
Customer-Self-Service-Backend
12 tests executed
11 tests passed
1 test failed
The test rest_controllers_should_be_suffixed in the class ArchitectureTests failed due to an AssertionError. It seems like the class InsuranceQuoteRequestCoordinator does not apply to the given rules. The class should end with a suffix 'Controller', 'DataHolder' or 'InformationHolder'.
Policy-Management-Backend
19 tests executed
18 tests passed
1 test failed
The test rest_controllers_should_be_suffixed in the class ArchitectureTests failed due to an AssertionError. It seems like the class InsuranceQuoteRequestProcessingResource does not apply to the given rules. The class should end with a suffix 'Controller', 'DataHolder' or 'InformationHolder'.
Additionally I would expect the class RiskComputationService to fail in the same test case as well.
Further Enhancements
I would like to suggest to enhance the existing test setup. It seems like the current test setup is only testing the architectural setup. It would be a great improvement if also the functionality would be tested. Adding unit tests would make refactorings or changes to the existing application easier due to the possibility for regression testing.
Thanks a lot for the effort on your end. In case of further questions please do not hesitate to contact me.
Kind regards
Jan
Dear LakesideMutual team
I have forked your project and experienced a few problems with the existing unit tests. I would have expected every unit test to pass without any failures. Unfortunately this is not the case, I will go into further details in the description below.
My Setup
Customer-Core
All tests in the class CustomerInformationHolderTests failed due to an IllegalStateException. The error messages says: "Failed to load ApplicationContext". I assume there is a Spring Configuratin missing for the test setup.
Customer-Management-Backend
The test layer_dependencies_are_respected in the class ArchitectureTests failed due to an AssertionError. It seems like there is a violation in the architecture principle. I assume the test is failing because the package 'com.lakesidemutual.customermanagement.application' is not existing and thus empty.
Customer-Self-Service-Backend
The test rest_controllers_should_be_suffixed in the class ArchitectureTests failed due to an AssertionError. It seems like the class InsuranceQuoteRequestCoordinator does not apply to the given rules. The class should end with a suffix 'Controller', 'DataHolder' or 'InformationHolder'.
Policy-Management-Backend
The test rest_controllers_should_be_suffixed in the class ArchitectureTests failed due to an AssertionError. It seems like the class InsuranceQuoteRequestProcessingResource does not apply to the given rules. The class should end with a suffix 'Controller', 'DataHolder' or 'InformationHolder'. Additionally I would expect the class RiskComputationService to fail in the same test case as well.
Further Enhancements I would like to suggest to enhance the existing test setup. It seems like the current test setup is only testing the architectural setup. It would be a great improvement if also the functionality would be tested. Adding unit tests would make refactorings or changes to the existing application easier due to the possibility for regression testing.
Thanks a lot for the effort on your end. In case of further questions please do not hesitate to contact me. Kind regards Jan