fix flaky test assertions in org.apache.helix.rest.server.TestPerInstanceAccessor#testGetAllMessages #2682
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issues
Fixes #2667
Description
This fix changes the flaky assertions of the tests in the class org.apache.helix.rest.server.TestPerInstanceAccessor#testGetAllMessages.
Sets return the elements in a non-deterministic order, which means that this assertion is not correct, because it checks whether the collections contain the same elements in the same order (this was changed in the library). This leads to a flaky test.
helix/helix-rest/src/test/java/org/apache/helix/rest/server/TestPerInstanceAccessor.java
Lines 329 to 330 in bd1d28c
To fix this problem, the assertion has been rewritten to check if the collections contain the same amount of elements as well as both collections contain all values of the other collection.
helix/helix-rest/src/test/java/org/apache/helix/rest/server/TestPerInstanceAccessor.java
Lines 328 to 332 in e0b1834
The flaky test has been found by using the NonDex tool – to reproduce run
Tests
No test have been written – one existing test has been updated.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:23 min
[INFO] Finished at: 2023-10-17T22:47:43-05:00
[INFO] ------------------------------------------------------------------------