Description
SonarQube:
The standard assertions library methods such as org.junit.Assert.assertEquals, and org.junit.Assert.assertSame expect the first argument to be the expected value and the second argument to be the actual value. For AssertJ, it's the other way around, the argument of org.assertj.core.api.Assertions.assertThat is the actual value, and the subsequent calls contain the expected values. Swap them, and your test will still have the same outcome (succeed/fail when it should) but the error messages will be confusing.
This rule raises an issue when the actual argument to an assertions library method is a hard-coded value and the expected argument is not.
Problem:
Wrong order of the assertion arguments, which can make it difficult to debug source code.
Solution:
Correcting the order of arguments.
Where the problem occurs:
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.8/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_8/HL7MessageController1_8Test.java#L71
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.8/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_8/HL7MessageController1_8Test.java#L89
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.8/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_8/ServerLogController1_8Test.java#L70
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.8/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/resource/openmrs1_8/ServerLogResource1_8Test.java#L54
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.8/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_8/TaskActionController1_8Test.java#L117
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.8/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_8/TaskActionController1_8Test.java#L123
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.8/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_8/TaskDefinitionController1_8Test.java#L146
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/ConceptController1_8Test.java#L703
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/ConceptController1_8Test.java#L712
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/ConceptController1_9Test.java#L61
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/ConceptController1_9Test.java#L73
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/resource/openmrs1_9/ConceptResource1_9Test.java#L95
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/resource/openmrs1_9/ConceptResource1_9Test.java#L99
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/resource/openmrs1_9/ConceptResource1_9Test.java#L105
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/resource/openmrs1_9/ConceptResource1_9Test.java#L109
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/ObsController1_9Test.java#L144
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/ObsController1_9Test.java#L156
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/ObsController1_9Test.java#L163
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/PatientIdentifierController1_9Test.java#L141
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/PersonNameController1_9Test.java#L105
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/PersonNameController1_9Test.java#L107
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/SessionController1_9Test.java#L83
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/VisitController1_9Test.java#L344-L345
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/VisitController1_9Test.java#L352-L353
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/VisitController1_9Test.java#L367
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.9/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_9/VisitController1_9Test.java#L369
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-1.11/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs1_11/DrugIngredientController1_11Test.java#L76-L77
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.0/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_0/PatientAllergyController2_0Test.java#L130
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.0/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_0/PatientAllergyController2_0Test.java#L150
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.0/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_0/PatientAllergyController2_0Test.java#L161
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.0/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_0/PatientAllergyController2_0Test.java#L183
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.0/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_0/PatientAllergyController2_0Test.java#L194
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.0/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_0/PatientAllergyController2_0Test.java#L213
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.0/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_0/PatientAllergyController2_0Test.java#L282
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.0/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_0/PatientAllergyController2_0Test.java#L314
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.2/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_2/DiagnosisController2_2Test.java#L259-L262
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.2/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_2/DiagnosisController2_2Test.java#L276-L280
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.2/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_2/DiagnosisController2_2Test.java#L291-L294
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-2.2/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_2/DiagnosisController2_2Test.java#L307-L311
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-common/src/test/java/org/openmrs/module/webservices/rest/web/filter/ContentTypeFilterTest.java#L58
- https://github.com/openmrs/openmrs-module-webservices.rest/blob/2.28.0/omod-common/src/test/java/org/openmrs/module/webservices/rest/web/filter/ContentTypeFilterTest.java#L97
Support materials:
- explanation of the problem by SonarQube: https://sonar.openmrs.org/coding_rules#rule_key=squid%3AS3415