test/tools/javac/processing/environment/round/TestElementsAnnotatedWith.java
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2006, 2009, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
--- 1,7 ----
/*
! * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*** 24,33 ****
--- 24,35 ----
/*
* @test
* @bug 6397298 6400986 6425592 6449798 6453386 6508401 6498938 6911854
* @summary Tests that getElementsAnnotatedWith works properly.
* @author Joseph D. Darcy
+ * @library ../../../lib
+ * @build JavacTestingAbstractProcessor
* @compile TestElementsAnnotatedWith.java
* @compile InheritedAnnotation.java
* @compile -processor TestElementsAnnotatedWith -proc:only SurfaceAnnotations.java
* @compile -processor TestElementsAnnotatedWith -proc:only BuriedAnnotations.java
* @compile -processor TestElementsAnnotatedWith -proc:only Part1.java Part2.java
*** 55,74 ****
/**
* This processor verifies that the information returned by
* getElementsAnnotatedWith is consistent with the expected results
* stored in an AnnotatedElementInfo annotation.
*/
- @SupportedAnnotationTypes("*")
@AnnotatedElementInfo(annotationName="java.lang.SuppressWarnings", expectedSize=0, names={})
! public class TestElementsAnnotatedWith extends AbstractProcessor {
public boolean process(Set<? extends TypeElement> annotations,
RoundEnvironment roundEnvironment) {
- Elements elementUtils = processingEnv.getElementUtils();
-
TypeElement annotatedElementInfoElement =
! elementUtils.getTypeElement("AnnotatedElementInfo");
Set<? extends Element> resultsMeta = Collections.emptySet();
Set<? extends Element> resultsBase = Collections.emptySet();
if (!roundEnvironment.processingOver()) {
testNonAnnotations(roundEnvironment);
--- 57,73 ----
/**
* This processor verifies that the information returned by
* getElementsAnnotatedWith is consistent with the expected results
* stored in an AnnotatedElementInfo annotation.
*/
@AnnotatedElementInfo(annotationName="java.lang.SuppressWarnings", expectedSize=0, names={})
! public class TestElementsAnnotatedWith extends JavacTestingAbstractProcessor {
public boolean process(Set<? extends TypeElement> annotations,
RoundEnvironment roundEnvironment) {
TypeElement annotatedElementInfoElement =
! elements.getTypeElement("AnnotatedElementInfo");
Set<? extends Element> resultsMeta = Collections.emptySet();
Set<? extends Element> resultsBase = Collections.emptySet();
if (!roundEnvironment.processingOver()) {
testNonAnnotations(roundEnvironment);
*** 91,103 ****
Set<String> expectedNames = new HashSet<String>(Arrays.asList(annotatedElementInfo.names()));
resultsMeta =
roundEnvironment.
! getElementsAnnotatedWith(elementUtils.
! getTypeElement(annotatedElementInfo.
! annotationName())) ;
System.err.println("Results: " + resultsMeta);
if (resultsMeta.size() != annotatedElementInfo.expectedSize()) {
failed = true;
--- 90,100 ----
Set<String> expectedNames = new HashSet<String>(Arrays.asList(annotatedElementInfo.names()));
resultsMeta =
roundEnvironment.
! getElementsAnnotatedWith(elements.getTypeElement(annotatedElementInfo.annotationName()));
System.err.println("Results: " + resultsMeta);
if (resultsMeta.size() != annotatedElementInfo.expectedSize()) {
failed = true;
*** 165,175 ****
getElementUtils().
getTypeElement("java.lang.Object") );
throw new RuntimeException("Illegal argument exception not thrown");
} catch(IllegalArgumentException iae) {}
}
-
- @Override
- public SourceVersion getSupportedSourceVersion() {
- return SourceVersion.latest();
- }
}
--- 162,167 ----