Skip to content

Commit cbc2064

Browse files
SONARJAVA-6180 Fix FP on S5853 when "element" is called after "assertThat" (#5502)
Co-authored-by: rombirli <56340680+rombirli@users.noreply.github.com>
1 parent db39dd2 commit cbc2064

2 files changed

Lines changed: 6 additions & 1 deletion

File tree

java-checks-test-sources/default/src/test/java/checks/tests/AssertJConsecutiveAssertionCheckSample.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,11 @@ void assert_on_member_select_2() {
191191
assertThat(myList.get(1)).isEqualTo("42");
192192
}
193193

194+
@Test
195+
void assert_on_element() {
196+
assertThat(myList).isNotNull().hasSize(2).element(0).isEqualTo("42"); // Compliant, assertions following the call to 'element' apply on a specific element
197+
assertThat(myList).element(1).isEqualTo("10");
198+
}
194199

195200
@Test
196201
void assert_on_member_select_3() {

java-checks/src/main/java/org/sonar/java/checks/tests/AssertJConsecutiveAssertionCheck.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public class AssertJConsecutiveAssertionCheck extends IssuableSubscriptionVisito
5454
public static final MethodMatchers ASSERTJ_SET_CONTEXT_METHODS = MethodMatchers.create()
5555
.ofSubTypes("org.assertj.core.api.AbstractAssert")
5656
.name(name -> name.startsWith("extracting") || name.startsWith("using") || name.startsWith("filtered")
57-
|| "flatExtracting".equals(name) || "map".equals(name) || "flatMap".equals(name))
57+
|| "flatExtracting".equals(name) || "map".equals(name) || "flatMap".equals(name) || "element".equals(name))
5858
.withAnyParameters()
5959
.build();
6060

0 commit comments

Comments
 (0)