roxspring 2004/09/06 15:51:45 Modified: cli/src/test/org/apache/commons/cli BugsTest.java Log: Test checks the displayed output and does so quietly Revision Changes Path 1.19 +27 -5 jakarta-commons/cli/src/test/org/apache/commons/cli/BugsTest.java Index: BugsTest.java =================================================================== RCS file: /home/cvs/jakarta-commons/cli/src/test/org/apache/commons/cli/BugsTest.java,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- BugsTest.java 22 Apr 2004 23:00:07 -0000 1.18 +++ BugsTest.java 6 Sep 2004 22:51:45 -0000 1.19 @@ -15,6 +15,10 @@ */ package org.apache.commons.cli; +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; +import java.io.StringWriter; + import junit.framework.Test; import junit.framework.TestCase; import junit.framework.TestSuite; @@ -274,12 +278,30 @@ .hasArg() .create( 'd' ); options.addOption( dir ); - try { - HelpFormatter formatter = new HelpFormatter(); - formatter.printHelp( "dir", options ); + + + final PrintStream oldSystemOut = System.out; + try{ + final ByteArrayOutputStream bytes = new ByteArrayOutputStream(); + final PrintStream print = new PrintStream(bytes); + + // capture this platform's eol symbol + print.println(); + final String eol = bytes.toString(); + bytes.reset(); + + System.setOut(new PrintStream(bytes)); + try { + HelpFormatter formatter = new HelpFormatter(); + formatter.printHelp( "dir", options ); + } + catch( Exception exp ) { + fail( "Unexpected Exception: " + exp.getMessage() ); + } + assertEquals("usage: dir"+eol+" -d <arg> dir"+eol,bytes.toString()); } - catch( Exception exp ) { - fail( "Unexpected Exception: " + exp.getMessage() ); + finally { + System.setOut(oldSystemOut); } }
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]