X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=test%2Fjalview%2Fbin%2FCommandLineOperations.java;h=ace18685366b623f8b224b87b71e9629c66ac6c0;hb=b74e75812b411ed8838f2c57d84fa1b328bbefe5;hp=483bb8bc7a93d710912649b2ed1f01fad44edd1a;hpb=e861a8212e4e459be8cc90c27b0e91dc5e081c59;p=jalview.git diff --git a/test/jalview/bin/CommandLineOperations.java b/test/jalview/bin/CommandLineOperations.java index 483bb8b..ace1868 100644 --- a/test/jalview/bin/CommandLineOperations.java +++ b/test/jalview/bin/CommandLineOperations.java @@ -20,6 +20,9 @@ */ package jalview.bin; +import static org.testng.Assert.assertNotNull; +import static org.testng.Assert.assertTrue; + import jalview.gui.JvOptionPane; import java.io.BufferedReader; @@ -142,7 +145,7 @@ public class CommandLineOperations return classpath; } - private Worker jalviewDesktopRunner(boolean withAwt, String cmd, + private Worker getJalviewDesktopRunner(boolean withAwt, String cmd, int timeout) { // Note: JAL-3065 - don't include quotes for lib/* because the arguments are @@ -155,7 +158,7 @@ public class CommandLineOperations try { ls2_proc = Runtime.getRuntime().exec(_cmd + cmd); - } catch (IOException e1) + } catch (Throwable e1) { e1.printStackTrace(); } @@ -172,7 +175,7 @@ public class CommandLineOperations worker.join(timeout); } catch (InterruptedException e) { - // e.printStackTrace(); + System.err.println("Thread interrupted"); } worker.setOutputReader(outputReader); worker.setErrorReader(errorReader); @@ -190,23 +193,27 @@ public class CommandLineOperations public void setUpForHeadlessCommandLineInputOperations() throws IOException { - String cmds = "nodisplay -open examples/uniref50.fa -sortbytree -props FILE -colour zappo " - + "-jabaws http://www.compbio.dundee.ac.uk/jabaws -nosortbytree -dasserver nickname=www.test.com " + String cmds = "nodisplay -open examples/uniref50.fa -sortbytree -props test/jalview/io/testProps.jvprops -colour zappo " + + "-jabaws http://www.compbio.dundee.ac.uk/jabaws -nosortbytree " + "-features examples/testdata/plantfdx.features -annotations examples/testdata/plantfdx.annotations -tree examples/testdata/uniref50_test_tree"; - Worker worker = jalviewDesktopRunner(true, cmds, SETUP_TIMEOUT); + Worker worker = getJalviewDesktopRunner(true, cmds, SETUP_TIMEOUT); String ln = null; while ((ln = worker.getOutputReader().readLine()) != null) { System.out.println(ln); successfulCMDs.add(ln); } + while ((ln = worker.getErrorReader().readLine()) != null) + { + System.err.println(ln); + } } @BeforeTest(alwaysRun = true) public void setUpForCommandLineInputOperations() throws IOException { String cmds = "-open examples/uniref50.fa -noquestionnaire -nousagestats"; - Worker worker = jalviewDesktopRunner(false, cmds, SETUP_TIMEOUT); + Worker worker = getJalviewDesktopRunner(false, cmds, SETUP_TIMEOUT); String ln = null; int count = 0; while ((ln = worker.getErrorReader().readLine()) != null) @@ -226,7 +233,7 @@ public class CommandLineOperations } } - @Test(groups = { "Functional" }, dataProvider = "allInputOpearationsData") + @Test(groups = { "Functional" }, dataProvider = "allInputOperationsData") public void testAllInputOperations(String expectedString, String failureMsg) { @@ -244,13 +251,12 @@ public class CommandLineOperations String cmd = harg + type + " " + fileName; // System.out.println(">>>>>>>>>>>>>>>> Command : " + cmd); File file = new File(fileName); - Worker worker = jalviewDesktopRunner(withAWT, cmd, timeout); - - FileAssert.assertFile(file, - "Didn't create an output" + type + " file.[" + harg + "]"); - // System.out.println( "File '" + file.getName() + "' has size " + - // file.length()); - // FileAssert.assertMinLength(new File(fileName), expectedMinFileSize); + file.deleteOnExit(); + Worker worker = getJalviewDesktopRunner(withAWT, cmd, timeout); + assertNotNull(worker, "worker is null"); + String msg = "Didn't create an output" + type + " file.[" + harg + "]"; + assertTrue(file.exists(), msg); + FileAssert.assertFile(file, msg); FileAssert.assertMinLength(file, expectedMinFileSize); if (worker != null && worker.exit == null) { @@ -261,17 +267,17 @@ public class CommandLineOperations + " generation (try running test again to verify - timeout at " + timeout + "ms). [" + harg + "]"); } - new File(fileName).delete(); + file.delete(); } - @DataProvider(name = "allInputOpearationsData") + @DataProvider(name = "allInputOperationsData") public Object[][] getHeadlessModeInputParams() { return new Object[][] { // headless mode input operations { "CMD [-color zappo] executed successfully!", "Failed command : -color zappo" }, - { "CMD [-props FILE] executed successfully!", + { "CMD [-props test/jalview/io/testProps.jvprops] executed successfully!", "Failed command : -props File" }, { "CMD [-sortbytree] executed successfully!", "Failed command : -sortbytree" }, @@ -281,8 +287,7 @@ public class CommandLineOperations "Failed command : -open examples/uniref50.fa" }, { "CMD [-nosortbytree] executed successfully!", "Failed command : -nosortbytree" }, - { - "CMD [-features examples/testdata/plantfdx.features] executed successfully!", + { "CMD [-features examples/testdata/plantfdx.features] executed successfully!", "Failed command : -features examples/testdata/plantfdx.features" }, { "CMD [-annotations examples/testdata/plantfdx.annotations] executed successfully!", "Failed command : -annotations examples/testdata/plantfdx.annotations" }, @@ -293,29 +298,35 @@ public class CommandLineOperations "Failed command : -nousagestats" }, { "CMD [-noquestionnaire] executed successfully!", "Failed command : -noquestionnaire" } }; - } @DataProvider(name = "headlessModeOutputOperationsData") public static Object[][] getHeadlessModeOutputParams() { - return new Object[][] { - { "nodisplay -open examples/uniref50.fa", " -eps", - "test_uniref50_out.eps", true, MINFILESIZE_BIG, TEST_TIMEOUT }, + return new Object[][] { { "nodisplay -open examples/uniref50.fa", + " -eps", "test/jalview/bin/test_uniref50_out.eps", true, + MINFILESIZE_BIG, TEST_TIMEOUT }, { "nodisplay -open examples/uniref50.fa", " -eps", - "test_uniref50_out.eps", false, MINFILESIZE_BIG, TEST_TIMEOUT }, + "test/jalview/bin/test_uniref50_out.eps", false, + MINFILESIZE_BIG, TEST_TIMEOUT }, { "nogui -open examples/uniref50.fa", " -eps", - "test_uniref50_out.eps", true, MINFILESIZE_BIG, TEST_TIMEOUT }, + "test/jalview/bin/test_uniref50_out.eps", true, MINFILESIZE_BIG, + TEST_TIMEOUT }, { "nogui -open examples/uniref50.fa", " -eps", - "test_uniref50_out.eps", false, MINFILESIZE_BIG, TEST_TIMEOUT }, + "test/jalview/bin/test_uniref50_out.eps", false, + MINFILESIZE_BIG, TEST_TIMEOUT }, { "headless -open examples/uniref50.fa", " -eps", - "test_uniref50_out.eps", true, MINFILESIZE_BIG, TEST_TIMEOUT }, + "test/jalview/bin/test_uniref50_out.eps", true, MINFILESIZE_BIG, + TEST_TIMEOUT }, { "headless -open examples/uniref50.fa", " -svg", - "test_uniref50_out.svg", false, MINFILESIZE_BIG, TEST_TIMEOUT }, + "test/jalview/bin/test_uniref50_out.svg", false, + MINFILESIZE_BIG, TEST_TIMEOUT }, { "headless -open examples/uniref50.fa", " -png", - "test_uniref50_out.png", true, MINFILESIZE_BIG, TEST_TIMEOUT }, + "test/jalview/bin/test_uniref50_out.png", true, MINFILESIZE_BIG, + TEST_TIMEOUT }, { "headless -open examples/uniref50.fa", " -html", - "test_uniref50_out.html", true, MINFILESIZE_BIG, TEST_TIMEOUT }, + "test/jalview/bin/test_uniref50_out.html", true, + MINFILESIZE_BIG, TEST_TIMEOUT }, { "headless -open examples/uniref50.fa", " -fasta", "test_uniref50_out.mfa", true, MINFILESIZE_SMALL, TEST_TIMEOUT },