test/jdk/javadoc/tool/XWerror.java
Print this page
*** 28,52 ****
* @author gafter
* @modules jdk.javadoc
* @run main XWerror
*/
! import com.sun.javadoc.*;
! import java.util.*;
! public class XWerror extends Doclet
! {
public static void main(String[] args) {
! if (com.sun.tools.javadoc.Main.
! execute("javadoc", "XWerror", XWerror.class.getClassLoader(),
! new String[] {"-Xwerror",
! System.getProperty("test.src", ".") +
! java.io.File.separatorChar +
! "XWerror.java"}) == 0)
! throw new Error();
}
! public static boolean start(com.sun.javadoc.RootDoc root) {
! root.printWarning(null, "warning message");
return false;
}
}
--- 28,95 ----
* @author gafter
* @modules jdk.javadoc
* @run main XWerror
*/
! import java.io.PrintWriter;
! import java.io.StringWriter;
! import java.util.Collections;
! import java.util.Locale;
! import java.util.Set;
! import javax.lang.model.SourceVersion;
! import javax.tools.Diagnostic;
!
! import jdk.javadoc.doclet.Doclet;
! import jdk.javadoc.doclet.Reporter;
! import jdk.javadoc.doclet.DocletEnvironment;
!
! public class XWerror implements Doclet {
!
! private static final String message = "warning message";
!
public static void main(String[] args) {
! StringWriter sw = new StringWriter();
! PrintWriter output = new PrintWriter(sw);
!
! String[] aargs = {
! "-docletpath", System.getProperty("test.classes", "."),
! "-doclet", "XWerror",
! "-Xwerror",
! System.getProperty("test.src", ".") + java.io.File.separatorChar
! + "XWerror.java"
! };
! if (jdk.javadoc.internal.tool.Main.execute(aargs, output) == 0) {
! throw new Error("did not get non-zero exit code");
}
+ if (!sw.toString().contains(message)) {
+ throw new Error("expected message not found: " + message);
+ }
+ }
+ Reporter reporter;
! public boolean run(DocletEnvironment root) {
! reporter.print(Diagnostic.Kind.WARNING , message);
return false;
}
+
+ @Override
+ public String getName() {
+ return "Test";
+ }
+
+ @Override
+ public Set<Option> getSupportedOptions() {
+ return Collections.emptySet();
+ }
+
+ @Override
+ public SourceVersion getSupportedSourceVersion() {
+ return SourceVersion.latest();
+ }
+
+ @Override
+ public void init(Locale locale, Reporter reporter) {
+ this.reporter = reporter;
+ return;
+ }
}