How to use non_assertThat_methodsOf method of org.assertj.core.api.Assertions_sync_with_BDDAssertions_WithAssertions_and_soft_assertions_variants_Test class

Best Assertj code snippet using org.assertj.core.api.Assertions_sync_with_BDDAssertions_WithAssertions_and_soft_assertions_variants_Test.non_assertThat_methodsOf

Source:Assertions_sync_with_BDDAssertions_WithAssertions_and_soft_assertions_variants_Test.java Github

copy

Full Screen

...43 @Test44 void standard_assertions_and_bdd_assertions_should_have_the_same_non_assertions_methods() {45 // GIVEN46 List<String> methodsToIgnore = list("failBecauseExceptionWasNotThrown", "filter", "offset");47 Set<Method> non_assertThat_methods = non_assertThat_methodsOf(Assertions.class.getDeclaredMethods());48 non_assertThat_methods = removeMethods(non_assertThat_methods, methodsToIgnore);49 Set<Method> non_then_methods = non_then_methodsOf(BDDAssertions.class.getDeclaredMethods());50 non_then_methods = removeMethods(non_then_methods, methodsToIgnore);51 // THEN52 then(non_then_methods).usingElementComparator(IGNORING_DECLARING_CLASS_AND_METHOD_NAME)53 .containsExactlyInAnyOrderElementsOf(non_assertThat_methods);54 }55 // Assertions - WithAssertions sync tests56 @ParameterizedTest57 @MethodSource("assertion_methods")58 void standard_assertions_and_with_assertions_should_have_the_same_assertions_methods(String assertionMethod) {59 // GIVEN60 Method[] assertThat_Assertions_methods = findMethodsWithName(Assertions.class, assertionMethod);61 Method[] assertThat_WithAssertions_methods = findMethodsWithName(WithAssertions.class, assertionMethod);62 // THEN63 then(assertThat_WithAssertions_methods).usingElementComparator(IGNORING_DECLARING_CLASS_ONLY)64 .containsExactlyInAnyOrder(assertThat_Assertions_methods);65 }66 @Test67 void standard_assertions_and_with_assertions_should_have_the_same_non_assertions_methods() {68 // GIVEN69 Set<Method> non_assertThat_Assertions_methods = non_assertThat_methodsOf(Assertions.class.getDeclaredMethods());70 Set<Method> non_assertThat_WithAssertions_methods = non_assertThat_methodsOf(WithAssertions.class.getDeclaredMethods());71 // THEN72 then(non_assertThat_WithAssertions_methods).usingElementComparator(IGNORING_DECLARING_CLASS_ONLY)73 .containsExactlyInAnyOrderElementsOf(non_assertThat_Assertions_methods);74 }75 // Assertions - SoftAssertions sync tests76 @ParameterizedTest77 @MethodSource("assertion_methods")78 void standard_assertions_and_soft_assertions_should_have_the_same_assertions_methods(String assertionMethod) {79 // GIVEN80 Method[] assertThat_Assertions_methods = findMethodsWithName(Assertions.class, assertionMethod, SPECIAL_IGNORED_RETURN_TYPES);81 Method[] assertThat_SoftAssertions_methods = findMethodsWithName(StandardSoftAssertionsProvider.class, assertionMethod);82 // THEN83 // ignore the return type of soft assertions until they have the same as the Assertions84 then(assertThat_Assertions_methods).usingElementComparator(IGNORING_DECLARING_CLASS_AND_RETURN_TYPE)85 .containsExactlyInAnyOrder(assertThat_SoftAssertions_methods);86 }87 // BDDAssertions - BDDSoftAssertions sync tests88 @ParameterizedTest89 @MethodSource("bdd_assertion_methods")90 void bdd_assertions_and_bdd_soft_assertions_should_have_the_same_assertions_methods(String assertionMethod) {91 // GIVEN92 // Until the SpecialIgnoredReturnTypes like AssertProvider, XXXNavigableXXXAssert are implemented for93 // the soft assertions we need to ignore them94 Method[] then_Assertions_methods = findMethodsWithName(BDDAssertions.class, assertionMethod, SPECIAL_IGNORED_RETURN_TYPES);95 Method[] then_BDDSoftAssertions_methods = findMethodsWithName(BDDSoftAssertionsProvider.class, assertionMethod);96 // THEN97 // ignore the return type of soft assertions until they have the same as the Assertions98 then(then_Assertions_methods).usingElementComparator(IGNORING_DECLARING_CLASS_AND_RETURN_TYPE)99 .containsExactlyInAnyOrder(then_BDDSoftAssertions_methods);100 }101 private static Stream<String> assertion_methods() {102 return Stream.of("assertThat",103 "assertThatCollection",104 "assertThatComparable",105 "assertThatIterable",106 "assertThatIterator",107 "assertThatList",108 "assertThatPath",109 "assertThatPredicate",110 "assertThatStream",111 "assertThatException",112 "assertThatRuntimeException",113 "assertThatNullPointerException",114 "assertThatIllegalArgumentException",115 "assertThatIOException",116 "assertThatIndexOutOfBoundsException",117 "assertThatReflectiveOperationException");118 }119 private static String toBDDAssertionMethod(String assertionMethod) {120 return assertionMethod.replace("assertThat", "then");121 }122 private static Stream<String> bdd_assertion_methods() {123 return assertion_methods().map(assertionMethod -> toBDDAssertionMethod(assertionMethod));124 }125 private static Stream<Arguments> standard_and_bdd_assertion_methods() {126 return assertion_methods().map(assertionMethod -> arguments(assertionMethod, toBDDAssertionMethod(assertionMethod)));127 }128 private static Set<Method> non_assertThat_methodsOf(Method[] declaredMethods) {129 return stream(declaredMethods).filter(method -> !method.getName().startsWith("assert")).collect(toSet());130 }131 private static Set<Method> non_then_methodsOf(Method[] declaredMethods) {132 return stream(declaredMethods).filter(method -> !method.getName().startsWith("then")).collect(toSet());133 }134 private static Set<Method> removeMethods(Set<Method> methods, List<String> methodsToRemove) {135 return methods.stream()136 .filter(method -> !methodsToRemove.contains(method.getName()))137 .collect(toSet());138 }139}...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run Assertj automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Most used method in Assertions_sync_with_BDDAssertions_WithAssertions_and_soft_assertions_variants_Test

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful