mango
mango copied to clipboard
Removed assertion roulette (test smell)
An Assertion Roulette occurs when a test method has multiple non-documented assertions. Various assertion statements in a test method without a descriptive message impacts readability/understandability/maintainability as it is difficult to understand the reason for the failure of the test.
In the test, I replaced the first assertions by assumptions, which verify the test preparation but will skip its execution (thus not failing the test) if not met.
The series of assertions that compared the messages retrieved from the DB with the List created in the test setup can be replaced by a single assertion comparing both collections since both are ArrayLists with the same message order.