test/jdk/javadoc/tool/outputRedirect/p/OutputRedirect.java

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 2002, 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) 2002, 2015, 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.
*** 22,37 **** */ package p; import java.io.*; ! import com.sun.tools.javadoc.Main; public class OutputRedirect { public static void main(String[] args) { - PrintStream originalOutput = System.out; try { doTest(); } finally { // restore things System.setOut(originalOutput); --- 22,37 ---- */ package p; import java.io.*; ! import jdk.javadoc.internal.tool.Main; public class OutputRedirect { + private static final PrintStream originalOutput = System.err; public static void main(String[] args) { try { doTest(); } finally { // restore things System.setOut(originalOutput);
*** 38,61 **** } } static void doTest() { ByteArrayOutputStream redirectedOutput = new ByteArrayOutputStream(); - PrintStream originalOutput = System.out; ! // redirect System.out to a buffer ! System.setOut(new PrintStream(redirectedOutput)); PrintWriter sink = new PrintWriter(new ByteArrayOutputStream()); // execute javadoc ! int result = Main.execute("javadoc", sink, sink, sink, ! "com.sun.tools.doclets.standard.Standard", ! new String[] {"p"} ! ); - // test whether javadoc did any output to System.out if (redirectedOutput.toByteArray().length > 0) { originalOutput.println("Test failed; here's what javadoc wrote on its standard output:"); originalOutput.println(redirectedOutput.toString()); throw new Error("javadoc output wasn\'t properly redirected"); --- 38,56 ---- } } static void doTest() { ByteArrayOutputStream redirectedOutput = new ByteArrayOutputStream(); ! // redirect System.err to a buffer ! System.setErr(new PrintStream(redirectedOutput)); PrintWriter sink = new PrintWriter(new ByteArrayOutputStream()); // execute javadoc ! int result = Main.execute(new String[] {"p"}, sink); // test whether javadoc did any output to System.out if (redirectedOutput.toByteArray().length > 0) { originalOutput.println("Test failed; here's what javadoc wrote on its standard output:"); originalOutput.println(redirectedOutput.toString()); throw new Error("javadoc output wasn\'t properly redirected");