@Test
  public void testNullableOptional() {
    NullableOptionalPropertyWithNullableBuilder instance1 =
        NullableOptionalPropertyWithNullableBuilder.builder().build();
    Truth.assertThat(instance1.optional()).isNull();

    NullableOptionalPropertyWithNullableBuilder instance2 =
        NullableOptionalPropertyWithNullableBuilder.builder().optional(null).build();
    Truth.assertThat(instance2.optional()).isEmpty();

    NullableOptionalPropertyWithNullableBuilder instance3 =
        NullableOptionalPropertyWithNullableBuilder.builder().optional("haruspex").build();
    Truth.assertThat(instance3.optional()).hasValue("haruspex");

    NullableOptionalPropertyWithNullableBuilder.Builder builder =
        NullableOptionalPropertyWithNullableBuilder.builder();
    Truth.assertThat(builder.optional()).isNull();
  }
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