@Test
  public void testOmitOptionalWithNullableBuilder() {
    OptionalPropertyWithNullableBuilder instance1 =
        OptionalPropertyWithNullableBuilder.builder().notOptional("hello").build();
    assertThat(instance1.notOptional()).isEqualTo("hello");
    Truth.assertThat(instance1.optional()).isEmpty();

    OptionalPropertyWithNullableBuilder instance2 =
        OptionalPropertyWithNullableBuilder.builder().notOptional("hello").optional(null).build();
    assertThat(instance2.notOptional()).isEqualTo("hello");
    Truth.assertThat(instance2.optional()).isEmpty();
    assertThat(instance1).isEqualTo(instance2);

    OptionalPropertyWithNullableBuilder instance3 =
        OptionalPropertyWithNullableBuilder.builder()
            .notOptional("hello")
            .optional("world")
            .build();
    assertThat(instance3.notOptional()).isEqualTo("hello");
    Truth.assertThat(instance3.optional()).hasValue("world");

    assertThrows(
        IllegalStateException.class, () -> OptionalPropertyWithNullableBuilder.builder().build());
  }
Returns a set containing this test's {@link Nullable @Nullable} annotation, plus possibly
another {@code @Nullable} that is present on the parameter of {@link Object#equals}.
value/src/it/functional/src/test/java/com/google/auto/value/AutoValueJava8Test.java