@TestFactory
@DisplayName("Ignore Default Equals")
Stream<? extends DynamicNode> ignoreDefaultsEquals() {

  return Stream.<Generator>of(
      this::simple,
      this::equivalence,
      this::overriddenEquals,
      this::collections,
      this::differentClasses,
      this::withDefaults
  ).map(generator -> generator.generate(
      sample -> assertReflective().withIgnoreDefaults()
          .that(sample.actual)
          .isEqualTo(sample.expected),
      sample -> assertFailing(
          () -> assertReflective().withIgnoreDefaults()
              .that(sample.actual)
              .isEqualTo(sample.expected)
      )
  ));
}