@Test
  public void testSimplifyWithAnnotations() {
    // The real test happens inside the .compile(...), by virtue of TestProcessor.
    assertThat(
            javac()
                .withOptions("-proc:only")
                .withProcessors(new TestProcessor())
                .compile(NULLABLE_FILE_OBJECT, TEST_CLASS_FILE_OBJECT))
        .succeededWithoutWarnings();
  }
The types that we will compile and then recreate. They are referenced in a context where {@code
Set} is unambiguous but not {@code List}, which allows us to test the placement of annotations
in unqualified types like {@code Set<T>} and qualified types like {@code java.util.List<T>}.
value/src/test/java/com/google/auto/value/processor/SimplifyWithAnnotationsTest.java