diff --git a/java-checks-test-sources/default/src/test/java/checks/tests/AssertJConsecutiveAssertionCheckSample.java b/java-checks-test-sources/default/src/test/java/checks/tests/AssertJConsecutiveAssertionCheckSample.java index 4eae4d82c29..8c37a642373 100644 --- a/java-checks-test-sources/default/src/test/java/checks/tests/AssertJConsecutiveAssertionCheckSample.java +++ b/java-checks-test-sources/default/src/test/java/checks/tests/AssertJConsecutiveAssertionCheckSample.java @@ -191,6 +191,11 @@ void assert_on_member_select_2() { assertThat(myList.get(1)).isEqualTo("42"); } + @Test + void assert_on_element() { + assertThat(myList).isNotNull().hasSize(2).element(0).isEqualTo("42"); // Compliant, assertions following the call to 'element' apply on a specific element + assertThat(myList).element(1).isEqualTo("10"); + } @Test void assert_on_member_select_3() { diff --git a/java-checks/src/main/java/org/sonar/java/checks/tests/AssertJConsecutiveAssertionCheck.java b/java-checks/src/main/java/org/sonar/java/checks/tests/AssertJConsecutiveAssertionCheck.java index 768f73911e3..b5f936c6ec4 100644 --- a/java-checks/src/main/java/org/sonar/java/checks/tests/AssertJConsecutiveAssertionCheck.java +++ b/java-checks/src/main/java/org/sonar/java/checks/tests/AssertJConsecutiveAssertionCheck.java @@ -54,7 +54,7 @@ public class AssertJConsecutiveAssertionCheck extends IssuableSubscriptionVisito public static final MethodMatchers ASSERTJ_SET_CONTEXT_METHODS = MethodMatchers.create() .ofSubTypes("org.assertj.core.api.AbstractAssert") .name(name -> name.startsWith("extracting") || name.startsWith("using") || name.startsWith("filtered") - || "flatExtracting".equals(name) || "map".equals(name) || "flatMap".equals(name)) + || "flatExtracting".equals(name) || "map".equals(name) || "flatMap".equals(name) || "element".equals(name)) .withAnyParameters() .build();