X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fbin%2FCommandLineOperations.java;fp=test%2Fjalview%2Fbin%2FCommandLineOperations.java;h=3855dc70192cea743d9320a9919ab24fd3786a29;hb=c8d80485038ab96fb06bd0885c323803646d8e57;hp=3bfd4f39d6d931c8e58eb1f0ed63cf810951d8ae;hpb=1b1f995b3eb83dc3496510bfc2278f1f72fcfd8a;p=jalview.git diff --git a/test/jalview/bin/CommandLineOperations.java b/test/jalview/bin/CommandLineOperations.java index 3bfd4f3..3855dc7 100644 --- a/test/jalview/bin/CommandLineOperations.java +++ b/test/jalview/bin/CommandLineOperations.java @@ -34,7 +34,6 @@ import java.util.ArrayList; import org.testng.Assert; import org.testng.FileAssert; import org.testng.annotations.BeforeClass; -import org.testng.annotations.BeforeTest; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; @@ -53,10 +52,8 @@ public class CommandLineOperations JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION); } - private static final int TEST_TIMEOUT = 13000; // Note longer timeout needed - // on - // full test run than on - // individual tests + // Note longer timeout needed on full test run than on individual tests + private static final int TEST_TIMEOUT = 15000; private static final int SETUP_TIMEOUT = 9500; @@ -74,7 +71,7 @@ public class CommandLineOperations * @author jimp * */ - private static class Worker extends Thread + public static class Worker extends Thread { private final Process process; @@ -159,7 +156,7 @@ public class CommandLineOperations return classpath; } - private Worker getJalviewDesktopRunner(boolean withAwt, String cmd, + public static Worker getJalviewDesktopRunner(boolean withAwt, String cmd, int timeout) { // Note: JAL-3065 - don't include quotes for lib/* because the arguments are @@ -186,7 +183,7 @@ public class CommandLineOperations new InputStreamReader(ls2_proc.getInputStream())); BufferedReader errorReader = new BufferedReader( new InputStreamReader(ls2_proc.getErrorStream())); - worker = new Worker(ls2_proc); + worker = new CommandLineOperations.Worker(ls2_proc); worker.start(); try { @@ -215,13 +212,13 @@ public class CommandLineOperations } } - @BeforeTest(alwaysRun = true) + @BeforeClass(alwaysRun = true) public void initialize() { new CommandLineOperations(); } - @BeforeTest(alwaysRun = true) + @BeforeClass(alwaysRun = true) public void setUpForHeadlessCommandLineInputOperations() throws IOException { @@ -232,16 +229,17 @@ public class CommandLineOperations String ln = null; while ((ln = worker.getOutputReader().readLine()) != null) { - System.out.println(ln); + System.out.println("STDOUT: " + ln); successfulCMDs.add(ln); } while ((ln = worker.getErrorReader().readLine()) != null) { - System.err.println(ln); + System.err.println("STDERR: " + ln); + successfulCMDs.add(ln); } } - @BeforeTest(alwaysRun = true) + @BeforeClass(alwaysRun = true) public void setUpForCommandLineInputOperations() throws IOException { String cmds = "-open examples/uniref50.fa -noquestionnaire -nousagestats"; @@ -250,7 +248,8 @@ public class CommandLineOperations // number of lines expected on STDERR when Jalview starts up normally // may need to adjust this if Jalview is excessively noisy ? - final int STDERR_SETUPLINES = 30; + final int STDOUT_SETUPLINES = 50; + final int STDERR_SETUPLINES = 50; // thread monitors stderr - bails after SETUP_TIMEOUT or when // STDERR_SETUPLINES have been read @@ -260,14 +259,24 @@ public class CommandLineOperations public void run() { String ln = null; - int count = 0; + int stdoutcount = 0; + int stderrcount = 0; try { - while ((ln = worker.getErrorReader().readLine()) != null) + while ((ln = worker.getOutputReader().readLine()) != null) { System.out.println(ln); successfulCMDs.add(ln); - if (++count > STDERR_SETUPLINES) + if (++stdoutcount > STDOUT_SETUPLINES) + { + break; + } + } + while ((ln = worker.getErrorReader().readLine()) != null) + { + System.err.println(ln); + successfulCMDs.add(ln); + if (++stderrcount > STDERR_SETUPLINES) { break; } @@ -342,8 +351,8 @@ public class CommandLineOperations { return new Object[][] { // headless mode input operations - { "CMD [-color zappo] executed successfully!", - "Failed command : -color zappo" }, + { "CMD [-colour zappo] executed successfully!", + "Failed command : -colour zappo" }, { "CMD [-props test/jalview/bin/testProps.jvprops] executed successfully!", "Failed command : -props File" }, { "CMD [-sortbytree] executed successfully!", @@ -375,9 +384,11 @@ public class CommandLineOperations // since it works. // https://issues.jalview.org/browse/JAL-1889?focusedCommentId=21609&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-21609 String workingDir = "test/jalview/bin/"; - return new Object[][] { { "nodisplay -open examples/uniref50.fa", - " -eps", workingDir + "test_uniref50_out.eps", true, - MINFILESIZE_BIG, TEST_TIMEOUT }, + return new Object[][] { + // + { "nodisplay -open examples/uniref50.fa", " -eps", + workingDir + "test_uniref50_out.eps", true, MINFILESIZE_BIG, + TEST_TIMEOUT }, { "nodisplay -open examples/uniref50.fa", " -eps", workingDir + "test_uniref50_out.eps", false, MINFILESIZE_BIG, TEST_TIMEOUT }, @@ -422,6 +433,8 @@ public class CommandLineOperations TEST_TIMEOUT }, { "headless -open examples/uniref50.fa", " -jalview", workingDir + "test_uniref50_out.jvp", true, MINFILESIZE_SMALL, - TEST_TIMEOUT }, }; + TEST_TIMEOUT }, + // + }; } }