Rename existing PipelineTests to QueueTests to prepare for upcoming push of new pipeline tests

-These tests are really integration tests for Queue rather than generalized
 pipeline tests, so it makes sense to call them QueueTests.

-Rename test classes and maven build targets, and update shell scripts
 to reflect new naming.
This commit is contained in:
David Roazen 2014-03-10 15:20:47 -04:00
parent 90ed6bd4ab
commit 78562c14bb
24 changed files with 153 additions and 153 deletions

View File

@ -103,14 +103,14 @@ for arg in "${@}" ; do
mvn_args="${mvn_args} -Dsting.packagetests.enabled=true" mvn_args="${mvn_args} -Dsting.packagetests.enabled=true"
mvn_args="${mvn_args} -Dsting.packagecommittests.skipped=false" mvn_args="${mvn_args} -Dsting.packagecommittests.skipped=false"
# TODO: This runs only the pipeline tests (full, non-dry run), but not the commit tests for Queue. # TODO: This runs only the queue tests (full, non-dry run), but not the commit tests for Queue.
elif [[ "${arg}" == "queuefull.binary.release.tests" ]] ; then elif [[ "${arg}" == "queuefull.binary.release.tests" ]] ; then
local_repo="sitetemprepo" local_repo="sitetemprepo"
mvn_args="install -Dmaven.repo.local=${local_repo} && mvn verify" mvn_args="install -Dmaven.repo.local=${local_repo} && mvn verify"
mvn_args="${mvn_args} -Dmaven.repo.local=${local_repo}" mvn_args="${mvn_args} -Dmaven.repo.local=${local_repo}"
mvn_args="${mvn_args} -Dsting.packagetests.enabled=true" mvn_args="${mvn_args} -Dsting.packagetests.enabled=true"
mvn_args="${mvn_args} -Dsting.packagepipelinetests.skipped=false" mvn_args="${mvn_args} -Dsting.packagequeuetests.skipped=false"
mvn_args="${mvn_args} -Dsting.pipelinetests.run=true" mvn_args="${mvn_args} -Dsting.queuetests.run=true"
elif [[ "${arg}" == "committests" ]] ; then elif [[ "${arg}" == "committests" ]] ; then
mvn_args="verify -Dsting.committests.skipped=false" mvn_args="verify -Dsting.committests.skipped=false"
@ -130,11 +130,11 @@ for arg in "${@}" ; do
elif [[ "${arg}" == "knowledgebasetest" ]] ; then elif [[ "${arg}" == "knowledgebasetest" ]] ; then
mvn_args="verify -Dsting.knowledgebasetests.skipped=false" mvn_args="verify -Dsting.knowledgebasetests.skipped=false"
elif [[ "${arg}" == "pipelinetest" ]] ; then elif [[ "${arg}" == "queuetest" ]] ; then
mvn_args="verify -Dsting.pipelinetests.skipped=false" mvn_args="verify -Dsting.queuetests.skipped=false"
elif [[ "${arg}" == "pipelinetestrun" ]] ; then elif [[ "${arg}" == "queuetestrun" ]] ; then
mvn_args="verify -Dsting.pipelinetests.skipped=false -Dsting.pipelinetests.run=true" mvn_args="verify -Dsting.queuetests.skipped=false -Dsting.queuetests.run=true"
elif [[ "${arg}" == "fasttest" ]] ; then elif [[ "${arg}" == "fasttest" ]] ; then
mvn_args="verify -Dsting.committests.skipped=false -pl private/gatk-private -am -Dresource.bundle.skip=true" mvn_args="verify -Dsting.committests.skipped=false -pl private/gatk-private -am -Dresource.bundle.skip=true"

14
pom.xml
View File

@ -48,7 +48,7 @@
<sting.packagecommittests.skipped>true</sting.packagecommittests.skipped> <sting.packagecommittests.skipped>true</sting.packagecommittests.skipped>
<sting.packageunittests.skipped>${sting.packagecommittests.skipped}</sting.packageunittests.skipped> <sting.packageunittests.skipped>${sting.packagecommittests.skipped}</sting.packageunittests.skipped>
<sting.packageintegrationtests.skipped>${sting.packagecommittests.skipped}</sting.packageintegrationtests.skipped> <sting.packageintegrationtests.skipped>${sting.packagecommittests.skipped}</sting.packageintegrationtests.skipped>
<sting.packagepipelinetests.skipped>${sting.packagecommittests.skipped}</sting.packagepipelinetests.skipped> <sting.packagequeuetests.skipped>${sting.packagecommittests.skipped}</sting.packagequeuetests.skipped>
<sting.packagelargescaletests.skipped>true</sting.packagelargescaletests.skipped> <sting.packagelargescaletests.skipped>true</sting.packagelargescaletests.skipped>
<sting.packageknowledgebasetests.skipped>true</sting.packageknowledgebasetests.skipped> <sting.packageknowledgebasetests.skipped>true</sting.packageknowledgebasetests.skipped>
@ -62,7 +62,7 @@
<sting.serialcommittests.skipped>true</sting.serialcommittests.skipped> <sting.serialcommittests.skipped>true</sting.serialcommittests.skipped>
<sting.serialunittests.skipped>${sting.serialcommittests.skipped}</sting.serialunittests.skipped> <sting.serialunittests.skipped>${sting.serialcommittests.skipped}</sting.serialunittests.skipped>
<sting.serialintegrationtests.skipped>${sting.serialcommittests.skipped}</sting.serialintegrationtests.skipped> <sting.serialintegrationtests.skipped>${sting.serialcommittests.skipped}</sting.serialintegrationtests.skipped>
<sting.serialpipelinetests.skipped>${sting.serialcommittests.skipped}</sting.serialpipelinetests.skipped> <sting.serialqueuetests.skipped>${sting.serialcommittests.skipped}</sting.serialqueuetests.skipped>
<sting.seriallargescaletests.skipped>true</sting.seriallargescaletests.skipped> <sting.seriallargescaletests.skipped>true</sting.seriallargescaletests.skipped>
<sting.serialknowledgebasetests.skipped>true</sting.serialknowledgebasetests.skipped> <sting.serialknowledgebasetests.skipped>true</sting.serialknowledgebasetests.skipped>
</properties> </properties>
@ -561,7 +561,7 @@
<sting.packagetests.artifactId>${sting.packagetests.artifactId}</sting.packagetests.artifactId> <sting.packagetests.artifactId>${sting.packagetests.artifactId}</sting.packagetests.artifactId>
<sting.packagetests.testClasses>${project.build.testOutputDirectory}</sting.packagetests.testClasses> <sting.packagetests.testClasses>${project.build.testOutputDirectory}</sting.packagetests.testClasses>
<sting.packagetests.basedir>${project.basedir}</sting.packagetests.basedir> <sting.packagetests.basedir>${project.basedir}</sting.packagetests.basedir>
<sting.pipelinetests.run>${sting.pipelinetests.run}</sting.pipelinetests.run> <sting.queuetests.run>${sting.queuetests.run}</sting.queuetests.run>
<maven.surefire.debug>${maven.surefire.debug}</maven.surefire.debug> <maven.surefire.debug>${maven.surefire.debug}</maven.surefire.debug>
<maven.failsafe.debug>${maven.failsafe.debug}</maven.failsafe.debug> <maven.failsafe.debug>${maven.failsafe.debug}</maven.failsafe.debug>
</properties> </properties>
@ -613,7 +613,7 @@
</configuration> </configuration>
</execution> </execution>
<execution> <execution>
<id>package-pipelinetests</id> <id>package-queuetests</id>
<goals> <goals>
<goal>integration-test</goal> <goal>integration-test</goal>
<goal>verify</goal> <goal>verify</goal>
@ -622,11 +622,11 @@
<goals> <goals>
<goal>verify</goal> <goal>verify</goal>
</goals> </goals>
<reportsDirectory>${project.build.directory}/invoker-reports/pipeline/${it.test}</reportsDirectory> <reportsDirectory>${project.build.directory}/invoker-reports/queuetest/${it.test}</reportsDirectory>
<skipInvocation>${sting.packagepipelinetests.skipped}</skipInvocation> <skipInvocation>${sting.packagequeuetests.skipped}</skipInvocation>
<properties> <properties>
<integrationtests.profile.enabled>true</integrationtests.profile.enabled> <integrationtests.profile.enabled>true</integrationtests.profile.enabled>
<sting.packagepipelinetests.skipped>${sting.packagepipelinetests.skipped}</sting.packagepipelinetests.skipped> <sting.packagequeuetests.skipped>${sting.packagequeuetests.skipped}</sting.packagequeuetests.skipped>
</properties> </properties>
</configuration> </configuration>
</execution> </execution>

View File

@ -99,7 +99,7 @@
<id>package-knowledgebasetests</id> <id>package-knowledgebasetests</id>
</execution> </execution>
<execution> <execution>
<id>package-pipelinetests</id> <id>package-queuetests</id>
</execution> </execution>
</executions> </executions>
</plugin> </plugin>

View File

@ -86,7 +86,7 @@
<id>package-knowledgebasetests</id> <id>package-knowledgebasetests</id>
</execution> </execution>
<execution> <execution>
<id>package-pipelinetests</id> <id>package-queuetests</id>
</execution> </execution>
</executions> </executions>
</plugin> </plugin>

View File

@ -135,7 +135,7 @@ public abstract class BaseTest {
public final static String NA12878_PCRFREE = privateTestDir + "PCRFree.2x250.Illumina.20_10_11.bam"; public final static String NA12878_PCRFREE = privateTestDir + "PCRFree.2x250.Illumina.20_10_11.bam";
public final static String NA12878_WEx = privateTestDir + "CEUTrio.HiSeq.WEx.b37_decoy.NA12878.20_10_11mb.bam"; public final static String NA12878_WEx = privateTestDir + "CEUTrio.HiSeq.WEx.b37_decoy.NA12878.20_10_11mb.bam";
public static final boolean pipelineTestRunModeIsSet = System.getProperty("pipeline.run", "").equals("run"); public static final boolean queueTestRunModeIsSet = System.getProperty("queuetest.run", "").equals("true");
/** before the class starts up */ /** before the class starts up */
static { static {

View File

@ -35,7 +35,7 @@ import org.testng.annotations.Test;
import java.io.File; import java.io.File;
import java.util.*; import java.util.*;
public class JnaSessionPipelineTest extends BaseTest { public class JnaSessionQueueTest extends BaseTest {
private String implementation = null; private String implementation = null;
private static final SessionFactory factory = new JnaSessionFactory(); private static final SessionFactory factory = new JnaSessionFactory();
@ -52,15 +52,15 @@ public class JnaSessionPipelineTest extends BaseTest {
@Test(dependsOnMethods = { "testDrmaa" }) @Test(dependsOnMethods = { "testDrmaa" })
public void testSubmitEcho() throws Exception { public void testSubmitEcho() throws Exception {
if ( ! pipelineTestRunModeIsSet ) { if ( ! queueTestRunModeIsSet ) {
throw new SkipException("Skipping testSubmitEcho because we are in pipeline test dry run mode"); throw new SkipException("Skipping testSubmitEcho because we are in queue test dry run mode");
} }
if (implementation.contains("LSF")) { if (implementation.contains("LSF")) {
System.err.println(" ***********************************************************"); System.err.println(" ***********************************************************");
System.err.println(" *************************************************************"); System.err.println(" *************************************************************");
System.err.println(" **** ****"); System.err.println(" **** ****");
System.err.println(" **** Skipping JnaSessionPipelineTest.testSubmitEcho() ****"); System.err.println(" **** Skipping JnaSessionQueueTest.testSubmitEcho() ****");
System.err.println(" **** Are you using the dotkit .combined_LSF_SGE? ****"); System.err.println(" **** Are you using the dotkit .combined_LSF_SGE? ****");
System.err.println(" **** ****"); System.err.println(" **** ****");
System.err.println(" *************************************************************"); System.err.println(" *************************************************************");
@ -68,7 +68,7 @@ public class JnaSessionPipelineTest extends BaseTest {
throw new SkipException("Skipping testSubmitEcho because correct DRMAA implementation not found"); throw new SkipException("Skipping testSubmitEcho because correct DRMAA implementation not found");
} }
File outFile = tryCreateNetworkTempFile("JnaSessionPipelineTest.out"); File outFile = tryCreateNetworkTempFile("JnaSessionQueueTest.out");
Session session = factory.getSession(); Session session = factory.getSession();
session.init(null); session.init(null);
try { try {

View File

@ -41,7 +41,7 @@ import java.io.File;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
public class LibDrmaaPipelineTest extends BaseTest { public class LibDrmaaQueueTest extends BaseTest {
private String implementation = null; private String implementation = null;
@Test @Test
@ -88,7 +88,7 @@ public class LibDrmaaPipelineTest extends BaseTest {
@Test(dependsOnMethods = { "testDrmaa" }) @Test(dependsOnMethods = { "testDrmaa" })
public void testSubmitEcho() throws Exception { public void testSubmitEcho() throws Exception {
if ( ! pipelineTestRunModeIsSet ) { if ( ! queueTestRunModeIsSet ) {
throw new SkipException("Skipping testSubmitEcho because we are in pipeline test dry run mode"); throw new SkipException("Skipping testSubmitEcho because we are in pipeline test dry run mode");
} }
@ -96,7 +96,7 @@ public class LibDrmaaPipelineTest extends BaseTest {
System.err.println(" *********************************************************"); System.err.println(" *********************************************************");
System.err.println(" ***********************************************************"); System.err.println(" ***********************************************************");
System.err.println(" **** ****"); System.err.println(" **** ****");
System.err.println(" **** Skipping LibDrmaaPipelineTest.testSubmitEcho() ****"); System.err.println(" **** Skipping LibDrmaaQueueTest.testSubmitEcho() ****");
System.err.println(" **** Are you using the dotkit .combined_LSF_SGE? ****"); System.err.println(" **** Are you using the dotkit .combined_LSF_SGE? ****");
System.err.println(" **** ****"); System.err.println(" **** ****");
System.err.println(" ***********************************************************"); System.err.println(" ***********************************************************");
@ -107,7 +107,7 @@ public class LibDrmaaPipelineTest extends BaseTest {
Memory error = new Memory(LibDrmaa.DRMAA_ERROR_STRING_BUFFER); Memory error = new Memory(LibDrmaa.DRMAA_ERROR_STRING_BUFFER);
int errnum; int errnum;
File outFile = tryCreateNetworkTempFile("LibDrmaaPipelineTest.out"); File outFile = tryCreateNetworkTempFile("LibDrmaaQueueTest.out");
errnum = LibDrmaa.drmaa_init(null, error, LibDrmaa.DRMAA_ERROR_STRING_BUFFER_LEN); errnum = LibDrmaa.drmaa_init(null, error, LibDrmaa.DRMAA_ERROR_STRING_BUFFER_LEN);

View File

@ -39,12 +39,12 @@ import org.broadinstitute.sting.jna.lsf.v7_0_6.LibBat.*;
import java.io.File; import java.io.File;
/** /**
* Really unit tests, but these test will only run on systems with LSF setup. * Really unit tests, but these tests will only run on systems with LSF set up.
*/ */
public class LibBatPipelineTest extends BaseTest { public class LibBatQueueTest extends BaseTest {
@BeforeClass @BeforeClass
public void initLibBat() { public void initLibBat() {
Assert.assertFalse(LibBat.lsb_init("LibBatPipelineTest") < 0, LibBat.lsb_sperror("lsb_init() failed")); Assert.assertFalse(LibBat.lsb_init("LibBatQueueTest") < 0, LibBat.lsb_sperror("lsb_init() failed"));
} }
@Test @Test
@ -94,19 +94,19 @@ public class LibBatPipelineTest extends BaseTest {
@Test @Test
public void testSubmitEcho() throws Exception { public void testSubmitEcho() throws Exception {
if ( ! pipelineTestRunModeIsSet ) { if ( ! queueTestRunModeIsSet ) {
throw new SkipException("Skipping testSubmitEcho because we are in pipeline test dry run mode"); throw new SkipException("Skipping testSubmitEcho because we are in queue test dry run mode");
} }
String queue = "hour"; String queue = "hour";
File outFile = tryCreateNetworkTempFile("LibBatPipelineTest.out"); File outFile = tryCreateNetworkTempFile("LibBatQueueTest.out");
submit req = new submit(); submit req = new submit();
for (int i = 0; i < LibLsf.LSF_RLIM_NLIMITS; i++) for (int i = 0; i < LibLsf.LSF_RLIM_NLIMITS; i++)
req.rLimits[i] = LibLsf.DEFAULT_RLIMIT; req.rLimits[i] = LibLsf.DEFAULT_RLIMIT;
req.projectName = "LibBatPipelineTest"; req.projectName = "LibBatQueueTest";
req.options |= LibBat.SUB_PROJECT_NAME; req.options |= LibBat.SUB_PROJECT_NAME;
req.queue = queue; req.queue = queue;

View File

@ -105,9 +105,9 @@
</configuration> </configuration>
</execution> </execution>
<execution> <execution>
<id>pipeline-tests</id> <id>queue-tests</id>
<configuration> <configuration>
<skip>${sting.serialpipelinetests.skipped}</skip> <skip>${sting.serialqueuetests.skipped}</skip>
<dependenciesToScan> <dependenciesToScan>
<scan>org.broadinstitute.sting:.*</scan> <scan>org.broadinstitute.sting:.*</scan>
</dependenciesToScan> </dependenciesToScan>

View File

@ -21,7 +21,7 @@
<sting.basedir>${project.basedir}/../..</sting.basedir> <sting.basedir>${project.basedir}/../..</sting.basedir>
<sting.packageunittests.skipped>true</sting.packageunittests.skipped> <sting.packageunittests.skipped>true</sting.packageunittests.skipped>
<sting.packageintegrationtests.skipped>true</sting.packageintegrationtests.skipped> <sting.packageintegrationtests.skipped>true</sting.packageintegrationtests.skipped>
<sting.packagepipelinetests.skipped>true</sting.packagepipelinetests.skipped> <sting.packagequeuetests.skipped>true</sting.packagequeuetests.skipped>
<sting.packagelargescaletests.skipped>true</sting.packagelargescaletests.skipped> <sting.packagelargescaletests.skipped>true</sting.packagelargescaletests.skipped>
<sting.packageknowledgebasetests.skipped>true</sting.packageknowledgebasetests.skipped> <sting.packageknowledgebasetests.skipped>true</sting.packageknowledgebasetests.skipped>
</properties> </properties>
@ -161,13 +161,13 @@
</configuration> </configuration>
</execution> </execution>
<execution> <execution>
<id>pipeline-tests</id> <id>queue-tests</id>
<goals> <goals>
<goal>verify</goal> <goal>verify</goal>
</goals> </goals>
<!-- run pipeline dry run tests --> <!-- run queue dry run tests -->
<configuration> <configuration>
<skip>${sting.packagepipelinetests.skipped}</skip> <skip>${sting.packagequeuetests.skipped}</skip>
</configuration> </configuration>
</execution> </execution>
<execution> <execution>

View File

@ -19,7 +19,7 @@
<module>sting-utils</module> <module>sting-utils</module>
<module>gatk-framework</module> <module>gatk-framework</module>
<module>gatk-package</module> <module>gatk-package</module>
<!-- <module>external-example</module> --> <!-- <module>external-example</module> -->
<!-- queue optionally enabled as profiles --> <!-- queue optionally enabled as profiles -->
</modules> </modules>

View File

@ -198,7 +198,7 @@
<id>package-knowledgebasetests</id> <id>package-knowledgebasetests</id>
</execution> </execution>
<execution> <execution>
<id>package-pipelinetests</id> <id>package-queuetests</id>
</execution> </execution>
</executions> </executions>
</plugin> </plugin>

View File

@ -39,13 +39,13 @@ import org.broadinstitute.sting.gatk.report.GATKReport
import org.apache.commons.io.FileUtils import org.apache.commons.io.FileUtils
import org.apache.commons.io.filefilter.WildcardFileFilter import org.apache.commons.io.filefilter.WildcardFileFilter
object PipelineTest extends BaseTest with Logging { object QueueTest extends BaseTest with Logging {
private val validationReportsDataLocation = "/humgen/gsa-hpprojects/GATK/validationreports/submitted/" private val validationReportsDataLocation = "/humgen/gsa-hpprojects/GATK/validationreports/submitted/"
private val md5DB = new MD5DB() private val md5DB = new MD5DB()
/** /**
* All the job runners configured to run PipelineTests at The Broad. * All the job runners configured to run QueueTests at The Broad.
*/ */
final val allJobRunners = Seq("Lsf706", "GridEngine", "Shell") final val allJobRunners = Seq("Lsf706", "GridEngine", "Shell")
@ -56,15 +56,15 @@ object PipelineTest extends BaseTest with Logging {
/** /**
* Returns the top level output path to this test. * Returns the top level output path to this test.
* @param testName The name of the test passed to PipelineTest.executeTest() * @param testName The name of the test passed to QueueTest.executeTest()
* @param jobRunner The name of the job manager to run the jobs. * @param jobRunner The name of the job manager to run the jobs.
* @return the top level output path to this test. * @return the top level output path to this test.
*/ */
def testDir(testName: String, jobRunner: String) = "pipelinetests/%s/%s/".format(testName, jobRunner) def testDir(testName: String, jobRunner: String) = "queuetests/%s/%s/".format(testName, jobRunner)
/** /**
* Returns the directory where relative output files will be written for this test. * Returns the directory where relative output files will be written for this test.
* @param testName The name of the test passed to PipelineTest.executeTest() * @param testName The name of the test passed to QueueTest.executeTest()
* @param jobRunner The name of the job manager to run the jobs. * @param jobRunner The name of the job manager to run the jobs.
* @return the directory where relative output files will be written for this test. * @return the directory where relative output files will be written for this test.
*/ */
@ -72,44 +72,44 @@ object PipelineTest extends BaseTest with Logging {
/** /**
* Returns the directory where temp files will be written for this test. * Returns the directory where temp files will be written for this test.
* @param testName The name of the test passed to PipelineTest.executeTest() * @param testName The name of the test passed to QueueTest.executeTest()
* @param jobRunner The name of the job manager to run the jobs. * @param jobRunner The name of the job manager to run the jobs.
* @return the directory where temp files will be written for this test. * @return the directory where temp files will be written for this test.
*/ */
private def tempDir(testName: String, jobRunner: String) = testDir(testName, jobRunner) + "temp/" private def tempDir(testName: String, jobRunner: String) = testDir(testName, jobRunner) + "temp/"
/** /**
* Runs the pipelineTest. * Runs the queueTest.
* @param pipelineTest test to run. * @param queueTest test to run.
*/ */
def executeTest(pipelineTest: PipelineTestSpec) { def executeTest(queueTest: QueueTestSpec) {
var jobRunners = pipelineTest.jobRunners var jobRunners = queueTest.jobRunners
if (jobRunners == null) if (jobRunners == null)
jobRunners = defaultJobRunners jobRunners = defaultJobRunners
jobRunners.foreach(executeTest(pipelineTest, _)) jobRunners.foreach(executeTest(queueTest, _))
} }
/** /**
* Runs the pipelineTest. * Runs the queueTest.
* @param pipelineTest test to run. * @param queueTest test to run.
* @param jobRunner The name of the job manager to run the jobs. * @param jobRunner The name of the job manager to run the jobs.
*/ */
def executeTest(pipelineTest: PipelineTestSpec, jobRunner: String) { def executeTest(queueTest: QueueTestSpec, jobRunner: String) {
// Reset the order of functions added to the graph. // Reset the order of functions added to the graph.
QScript.resetAddOrder() QScript.resetAddOrder()
val name = pipelineTest.name val name = queueTest.name
if (name == null) if (name == null)
Assert.fail("PipelineTestSpec.name is null") Assert.fail("QueueTestSpec.name is null")
println(Utils.dupString('-', 80)) println(Utils.dupString('-', 80))
executeTest(name, pipelineTest.args, pipelineTest.jobQueue, pipelineTest.expectedException, jobRunner) executeTest(name, queueTest.args, queueTest.jobQueue, queueTest.expectedException, jobRunner)
if (BaseTest.pipelineTestRunModeIsSet) { if (BaseTest.queueTestRunModeIsSet) {
assertMatchingMD5s(name, pipelineTest.fileMD5s.map{case (file, md5) => new File(runDir(name, jobRunner), file) -> md5}, pipelineTest.parameterize) assertMatchingMD5s(name, queueTest.fileMD5s.map{case (file, md5) => new File(runDir(name, jobRunner), file) -> md5}, queueTest.parameterize)
if (pipelineTest.evalSpec != null) if (queueTest.evalSpec != null)
validateEval(name, pipelineTest.evalSpec, jobRunner) validateEval(name, queueTest.evalSpec, jobRunner)
for (path <- pipelineTest.expectedFilePaths) for (path <- queueTest.expectedFilePaths)
assertPathExists(runDir(name, jobRunner), path) assertPathExists(runDir(name, jobRunner), path)
for (path <- pipelineTest.unexpectedFilePaths) for (path <- queueTest.unexpectedFilePaths)
assertPathDoesNotExist(runDir(name, jobRunner), path) assertPathDoesNotExist(runDir(name, jobRunner), path)
println(" => %s PASSED (%s)".format(name, jobRunner)) println(" => %s PASSED (%s)".format(name, jobRunner))
} }
@ -128,7 +128,7 @@ object PipelineTest extends BaseTest with Logging {
Assert.fail("%d of %d MD5s did not match".format(failed, fileMD5s.size)) Assert.fail("%d of %d MD5s did not match".format(failed, fileMD5s.size))
} }
private def validateEval(name: String, evalSpec: PipelineTestEvalSpec, jobRunner: String) { private def validateEval(name: String, evalSpec: QueueTestEvalSpec, jobRunner: String) {
// write the report to the shared validation data location // write the report to the shared validation data location
val formatter = new SimpleDateFormat("yyyy.MM.dd.HH.mm.ss") val formatter = new SimpleDateFormat("yyyy.MM.dd.HH.mm.ss")
val reportLocation = "%s%s/%s/validation.%s.eval".format(validationReportsDataLocation, jobRunner, name, formatter.format(new Date)) val reportLocation = "%s%s/%s/validation.%s.eval".format(validationReportsDataLocation, jobRunner, name, formatter.format(new Date))
@ -176,7 +176,7 @@ object PipelineTest extends BaseTest with Logging {
if (jobQueue != null) if (jobQueue != null)
command = Utils.appendArray(command, "-jobQueue", jobQueue) command = Utils.appendArray(command, "-jobQueue", jobQueue)
if (BaseTest.pipelineTestRunModeIsSet) if (BaseTest.queueTestRunModeIsSet)
command = Utils.appendArray(command, "-run") command = Utils.appendArray(command, "-run")
// run the executable // run the executable

View File

@ -28,7 +28,7 @@ package org.broadinstitute.sting.queue.pipeline
/** /**
* Data validations to evaluate on a GATKReport. * Data validations to evaluate on a GATKReport.
*/ */
class PipelineTestEvalSpec { class QueueTestEvalSpec {
/** Eval modules to output. */ /** Eval modules to output. */
var evalReport: String = _ var evalReport: String = _

View File

@ -25,7 +25,7 @@
package org.broadinstitute.sting.queue.pipeline package org.broadinstitute.sting.queue.pipeline
class PipelineTestSpec(var name: String = null) { class QueueTestSpec(var name: String = null) {
/** The arguments to pass to the Queue test, ex: "-S scala/qscript/examples/HelloWorld.scala" */ /** The arguments to pass to the Queue test, ex: "-S scala/qscript/examples/HelloWorld.scala" */
var args: String = _ var args: String = _
@ -40,7 +40,7 @@ class PipelineTestSpec(var name: String = null) {
var fileMD5s = Map.empty[String, String] var fileMD5s = Map.empty[String, String]
/** VariantEval validations to run on a VCF after the pipeline has completed. */ /** VariantEval validations to run on a VCF after the pipeline has completed. */
var evalSpec: PipelineTestEvalSpec = _ var evalSpec: QueueTestEvalSpec = _
/** Expected exception from the test. */ /** Expected exception from the test. */
var expectedException: Class[_ <: Exception] = null var expectedException: Class[_ <: Exception] = null

View File

@ -26,14 +26,14 @@
package org.broadinstitute.sting.queue.pipeline.examples package org.broadinstitute.sting.queue.pipeline.examples
import org.testng.annotations.Test import org.testng.annotations.Test
import org.broadinstitute.sting.queue.pipeline.{PipelineTest, PipelineTestSpec} import org.broadinstitute.sting.queue.pipeline.{QueueTest, QueueTestSpec}
import org.broadinstitute.sting.BaseTest import org.broadinstitute.sting.BaseTest
class ExampleCountLociPipelineTest { class ExampleCountLociQueueTest {
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testCountLoci() { def testCountLoci() {
val testOut = "count.out" val testOut = "count.out"
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "countloci" spec.name = "countloci"
spec.args = Array( spec.args = Array(
" -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleCountLoci.scala", " -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleCountLoci.scala",
@ -41,6 +41,6 @@ class ExampleCountLociPipelineTest {
" -I " + BaseTest.publicTestDir + "exampleBAM.bam", " -I " + BaseTest.publicTestDir + "exampleBAM.bam",
" -o " + testOut).mkString " -o " + testOut).mkString
spec.fileMD5s += testOut -> "ade93df31a6150321c1067e749cae9be" spec.fileMD5s += testOut -> "ade93df31a6150321c1067e749cae9be"
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
} }

View File

@ -26,18 +26,18 @@
package org.broadinstitute.sting.queue.pipeline.examples package org.broadinstitute.sting.queue.pipeline.examples
import org.testng.annotations.Test import org.testng.annotations.Test
import org.broadinstitute.sting.queue.pipeline.{PipelineTest, PipelineTestSpec} import org.broadinstitute.sting.queue.pipeline.{QueueTest, QueueTestSpec}
import org.broadinstitute.sting.BaseTest import org.broadinstitute.sting.BaseTest
class ExampleCountReadsPipelineTest { class ExampleCountReadsQueueTest {
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testCountReads() { def testCountReads() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "countreads" spec.name = "countreads"
spec.args = Array( spec.args = Array(
" -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleCountReads.scala", " -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleCountReads.scala",
" -R " + BaseTest.publicTestDir + "exampleFASTA.fasta", " -R " + BaseTest.publicTestDir + "exampleFASTA.fasta",
" -I " + BaseTest.publicTestDir + "exampleBAM.bam").mkString " -I " + BaseTest.publicTestDir + "exampleBAM.bam").mkString
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
} }

View File

@ -50,34 +50,34 @@ package org.broadinstitute.sting.queue.pipeline.examples
*/ */
import org.testng.annotations.Test import org.testng.annotations.Test
import org.broadinstitute.sting.queue.pipeline.{PipelineTest, PipelineTestSpec} import org.broadinstitute.sting.queue.pipeline.{QueueTest, QueueTestSpec}
import org.broadinstitute.sting.BaseTest import org.broadinstitute.sting.BaseTest
class ExamplePrintReadsPipelineTest { class ExamplePrintReadsQueueTest {
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testDevNullOutput() { def testDevNullOutput() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "devnulloutput" spec.name = "devnulloutput"
spec.args = Array( spec.args = Array(
" -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExamplePrintReads.scala", " -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExamplePrintReads.scala",
" -R " + BaseTest.publicTestDir + "exampleFASTA.fasta", " -R " + BaseTest.publicTestDir + "exampleFASTA.fasta",
" -I " + BaseTest.publicTestDir + "exampleBAM.bam", " -I " + BaseTest.publicTestDir + "exampleBAM.bam",
" -out /dev/null").mkString " -out /dev/null").mkString
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testCleanupBai() { def testCleanupBai() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "cleanupbai" spec.name = "cleanupbai"
spec.args = Array( spec.args = Array(
" -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExamplePrintReads.scala", " -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExamplePrintReads.scala",
" -R " + BaseTest.publicTestDir + "exampleFASTA.fasta", " -R " + BaseTest.publicTestDir + "exampleFASTA.fasta",
" -I " + BaseTest.publicTestDir + "exampleBAM.bam", " -I " + BaseTest.publicTestDir + "exampleBAM.bam",
" -out exampleOut.bam").mkString " -out exampleOut.bam").mkString
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
spec.unexpectedFilePaths :+= ".queue/scatterGather/ExamplePrintReads-1-sg/temp_1_of_1/exampleOut.bai" spec.unexpectedFilePaths :+= ".queue/scatterGather/ExamplePrintReads-1-sg/temp_1_of_1/exampleOut.bai"
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
} }

View File

@ -74,18 +74,18 @@ package org.broadinstitute.sting.queue.pipeline.examples
*/ */
import org.testng.annotations.Test import org.testng.annotations.Test
import org.broadinstitute.sting.queue.pipeline.{PipelineTest, PipelineTestSpec} import org.broadinstitute.sting.queue.pipeline.{QueueTest, QueueTestSpec}
import org.broadinstitute.sting.BaseTest import org.broadinstitute.sting.BaseTest
class ExampleReadFilterPipelineTest { class ExampleReadFilterQueueTest {
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testExampleReadFilter() { def testExampleReadFilter() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "examplereadfilter" spec.name = "examplereadfilter"
spec.args = Array( spec.args = Array(
" -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleReadFilter.scala", " -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleReadFilter.scala",
" -R " + BaseTest.publicTestDir + "exampleFASTA.fasta", " -R " + BaseTest.publicTestDir + "exampleFASTA.fasta",
" -I " + BaseTest.publicTestDir + "exampleBAM.bam").mkString " -I " + BaseTest.publicTestDir + "exampleBAM.bam").mkString
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
} }

View File

@ -26,22 +26,22 @@
package org.broadinstitute.sting.queue.pipeline.examples package org.broadinstitute.sting.queue.pipeline.examples
import org.testng.annotations.Test import org.testng.annotations.Test
import org.broadinstitute.sting.queue.pipeline.{PipelineTest, PipelineTestSpec} import org.broadinstitute.sting.queue.pipeline.{QueueTest, QueueTestSpec}
import org.broadinstitute.sting.BaseTest import org.broadinstitute.sting.BaseTest
class ExampleRetryMemoryLimitPipelineTest { class ExampleRetryMemoryLimitQueueTest {
// This test is currently disabled due to unexplained intermittent failures (see GSA-943) // This test is currently disabled due to unexplained intermittent failures (see GSA-943)
@Test(timeOut=36000000,enabled = false) @Test(timeOut=36000000,enabled = false)
def testRetryMemoryLimit() { def testRetryMemoryLimit() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "RetryMemoryLimit" spec.name = "RetryMemoryLimit"
spec.args = Array( spec.args = Array(
" -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleRetryMemoryLimit.scala", " -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleRetryMemoryLimit.scala",
" -R " + BaseTest.publicTestDir + "exampleFASTA.fasta", " -R " + BaseTest.publicTestDir + "exampleFASTA.fasta",
" -I " + BaseTest.publicTestDir + "exampleBAM.bam", " -I " + BaseTest.publicTestDir + "exampleBAM.bam",
" -retry 1").mkString " -retry 1").mkString
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
} }

View File

@ -26,13 +26,13 @@
package org.broadinstitute.sting.queue.pipeline.examples package org.broadinstitute.sting.queue.pipeline.examples
import org.testng.annotations.{DataProvider, Test} import org.testng.annotations.{DataProvider, Test}
import org.broadinstitute.sting.queue.pipeline.{PipelineTest, PipelineTestSpec} import org.broadinstitute.sting.queue.pipeline.{QueueTest, QueueTestSpec}
import org.broadinstitute.sting.BaseTest import org.broadinstitute.sting.BaseTest
class ExampleUnifiedGenotyperPipelineTest { class ExampleUnifiedGenotyperQueueTest {
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testUnifiedGenotyper() { def testUnifiedGenotyper() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "unifiedgenotyper" spec.name = "unifiedgenotyper"
spec.args = Array( spec.args = Array(
" -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleUnifiedGenotyper.scala", " -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleUnifiedGenotyper.scala",
@ -40,8 +40,8 @@ class ExampleUnifiedGenotyperPipelineTest {
" -I " + BaseTest.publicTestDir + "exampleBAM.bam", " -I " + BaseTest.publicTestDir + "exampleBAM.bam",
" -filter QD", " -filter QD",
" -filterExpression 'QD < 2.0'").mkString " -filterExpression 'QD < 2.0'").mkString
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@DataProvider(name = "ugIntervals") @DataProvider(name = "ugIntervals")
@ -54,7 +54,7 @@ class ExampleUnifiedGenotyperPipelineTest {
@Test(dataProvider = "ugIntervals", timeOut=36000000) @Test(dataProvider = "ugIntervals", timeOut=36000000)
def testUnifiedGenotyperWithIntervals(intervalsName: String, intervalsPath: String) { def testUnifiedGenotyperWithIntervals(intervalsName: String, intervalsPath: String) {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "unifiedgenotyper_with_" + intervalsName spec.name = "unifiedgenotyper_with_" + intervalsName
spec.args = Array( spec.args = Array(
" -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleUnifiedGenotyper.scala", " -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleUnifiedGenotyper.scala",
@ -62,20 +62,20 @@ class ExampleUnifiedGenotyperPipelineTest {
" -R " + BaseTest.hg18Reference, " -R " + BaseTest.hg18Reference,
" -L " + intervalsPath).mkString " -L " + intervalsPath).mkString
spec.jobRunners = Seq("Lsf706") spec.jobRunners = Seq("Lsf706")
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testUnifiedGenotyperNoGCOpt() { def testUnifiedGenotyperNoGCOpt() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "unifiedgenotyper_no_gc_opt" spec.name = "unifiedgenotyper_no_gc_opt"
spec.args = Array( spec.args = Array(
" -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleUnifiedGenotyper.scala", " -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleUnifiedGenotyper.scala",
" -R " + BaseTest.publicTestDir + "exampleFASTA.fasta", " -R " + BaseTest.publicTestDir + "exampleFASTA.fasta",
" -I " + BaseTest.publicTestDir + "exampleBAM.bam", " -I " + BaseTest.publicTestDir + "exampleBAM.bam",
" -noGCOpt").mkString " -noGCOpt").mkString
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@DataProvider(name="resMemReqParams") @DataProvider(name="resMemReqParams")
@ -83,7 +83,7 @@ class ExampleUnifiedGenotyperPipelineTest {
@Test(dataProvider = "resMemReqParams", timeOut=36000000) @Test(dataProvider = "resMemReqParams", timeOut=36000000)
def testUnifiedGenotyperResMemReqParam(reqParam: String) { def testUnifiedGenotyperResMemReqParam(reqParam: String) {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "unifiedgenotyper_" + reqParam spec.name = "unifiedgenotyper_" + reqParam
spec.args = Array( spec.args = Array(
" -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleUnifiedGenotyper.scala", " -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleUnifiedGenotyper.scala",
@ -91,21 +91,21 @@ class ExampleUnifiedGenotyperPipelineTest {
" -I " + BaseTest.publicTestDir + "exampleBAM.bam", " -I " + BaseTest.publicTestDir + "exampleBAM.bam",
" -resMemReqParam " + reqParam).mkString " -resMemReqParam " + reqParam).mkString
spec.jobRunners = Seq("GridEngine") spec.jobRunners = Seq("GridEngine")
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testUnifiedGenotyperLogDirectory() { def testUnifiedGenotyperLogDirectory() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "unifiedgenotyper_with_log_directory" spec.name = "unifiedgenotyper_with_log_directory"
spec.args = Array( spec.args = Array(
" -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleUnifiedGenotyper.scala", " -S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/ExampleUnifiedGenotyper.scala",
" -R " + BaseTest.publicTestDir + "exampleFASTA.fasta", " -R " + BaseTest.publicTestDir + "exampleFASTA.fasta",
" -I " + BaseTest.publicTestDir + "exampleBAM.bam", " -I " + BaseTest.publicTestDir + "exampleBAM.bam",
" -logDir exampleUGLogDir").mkString " -logDir exampleUGLogDir").mkString
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
spec.expectedFilePaths :+= "exampleUGLogDir/exampleBAM.unfiltered.vcf.out" spec.expectedFilePaths :+= "exampleUGLogDir/exampleBAM.unfiltered.vcf.out"
spec.expectedFilePaths :+= "exampleUGLogDir/exampleBAM.unfiltered.eval.out" spec.expectedFilePaths :+= "exampleUGLogDir/exampleBAM.unfiltered.eval.out"
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
} }

View File

@ -26,127 +26,127 @@
package org.broadinstitute.sting.queue.pipeline.examples package org.broadinstitute.sting.queue.pipeline.examples
import org.testng.annotations.Test import org.testng.annotations.Test
import org.broadinstitute.sting.queue.pipeline.{PipelineTest, PipelineTestSpec} import org.broadinstitute.sting.queue.pipeline.{QueueTest, QueueTestSpec}
class HelloWorldPipelineTest { class HelloWorldQueueTest {
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testHelloWorld() { def testHelloWorld() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorld" spec.name = "HelloWorld"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala"
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testHelloWorldWithRunName() { def testHelloWorldWithRunName() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorldWithRunName" spec.name = "HelloWorldWithRunName"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" + spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" +
" -runName HelloWorld" " -runName HelloWorld"
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testHelloWorldWithMemoryLimit() { def testHelloWorldWithMemoryLimit() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorldMemoryLimit" spec.name = "HelloWorldMemoryLimit"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" + spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" +
" -memLimit 1.25" " -memLimit 1.25"
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testHelloWorldWithPriority() { def testHelloWorldWithPriority() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorldWithPriority" spec.name = "HelloWorldWithPriority"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" + spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" +
" -jobPriority 100" " -jobPriority 100"
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testHelloWorldWithLsfResource() { def testHelloWorldWithLsfResource() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorldWithLsfResource" spec.name = "HelloWorldWithLsfResource"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" + spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" +
" -jobResReq rusage[iodine_io=1] -jobResReq select[swp>0] -jobResReq order[swp]" " -jobResReq rusage[iodine_io=1] -jobResReq select[swp>0] -jobResReq order[swp]"
spec.jobRunners = Seq("Lsf706") spec.jobRunners = Seq("Lsf706")
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testHelloWorldWithLsfResourceAndMemoryLimit() { def testHelloWorldWithLsfResourceAndMemoryLimit() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorldWithLsfResourceAndMemoryLimit" spec.name = "HelloWorldWithLsfResourceAndMemoryLimit"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" + spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" +
" -memLimit 1.25 -jobResReq rusage[iodine_io=1] -jobResReq select[swp>0] -jobResReq order[swp]" " -memLimit 1.25 -jobResReq rusage[iodine_io=1] -jobResReq select[swp>0] -jobResReq order[swp]"
spec.jobRunners = Seq("Lsf706") spec.jobRunners = Seq("Lsf706")
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testHelloWorldWithLsfEnvironment() { def testHelloWorldWithLsfEnvironment() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorldWithLsfEnvironment" spec.name = "HelloWorldWithLsfEnvironment"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" + spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" +
" -jobEnv tv" " -jobEnv tv"
spec.jobRunners = Seq("Lsf706") spec.jobRunners = Seq("Lsf706")
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testHelloWorldWithGridEngineResource() { def testHelloWorldWithGridEngineResource() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorldWithGridEngineResource" spec.name = "HelloWorldWithGridEngineResource"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" + spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" +
" -jobResReq s_core=1000M" " -jobResReq s_core=1000M"
spec.jobRunners = Seq("GridEngine") spec.jobRunners = Seq("GridEngine")
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testHelloWorldWithGridEngineResourceAndMemoryLimit() { def testHelloWorldWithGridEngineResourceAndMemoryLimit() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorldWithGridEngineResourceAndMemoryLimit" spec.name = "HelloWorldWithGridEngineResourceAndMemoryLimit"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" + spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" +
" -memLimit 1.25 -jobResReq s_core=1000M" " -memLimit 1.25 -jobResReq s_core=1000M"
spec.jobRunners = Seq("GridEngine") spec.jobRunners = Seq("GridEngine")
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testHelloWorldWithGridEngineEnvironment() { def testHelloWorldWithGridEngineEnvironment() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorldWithGridEngineEnvironment" spec.name = "HelloWorldWithGridEngineEnvironment"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" + spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" +
" -jobEnv \"make 1\"" " -jobEnv \"make 1\""
spec.jobRunners = Seq("GridEngine") spec.jobRunners = Seq("GridEngine")
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
// disabled because our DRMAA implementation doesn't support wallTime // disabled because our DRMAA implementation doesn't support wallTime
@Test(enabled=false, timeOut=36000000) @Test(enabled=false, timeOut=36000000)
def testHelloWorldWithWalltime() { def testHelloWorldWithWalltime() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorldWithWalltime" spec.name = "HelloWorldWithWalltime"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" + spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" +
" -wallTime 100" " -wallTime 100"
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
@Test(timeOut=36000000) @Test(timeOut=36000000)
def testHelloWorldWithLogDirectory() { def testHelloWorldWithLogDirectory() {
val spec = new PipelineTestSpec val spec = new QueueTestSpec
spec.name = "HelloWorldWithLogDirectory" spec.name = "HelloWorldWithLogDirectory"
spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" + spec.args = "-S public/scala/qscript/org/broadinstitute/sting/queue/qscripts/examples/HelloWorld.scala" +
" -logDir pipelineLogDir" " -logDir pipelineLogDir"
spec.jobRunners = PipelineTest.allJobRunners spec.jobRunners = QueueTest.allJobRunners
spec.expectedFilePaths = Seq("pipelineLogDir/HelloWorld-1.out") spec.expectedFilePaths = Seq("pipelineLogDir/HelloWorld-1.out")
PipelineTest.executeTest(spec) QueueTest.executeTest(spec)
} }
} }

View File

@ -144,9 +144,9 @@
</configuration> </configuration>
</execution> </execution>
<execution> <execution>
<id>pipeline-tests</id> <id>queue-tests</id>
<configuration> <configuration>
<skip>${sting.serialpipelinetests.skipped}</skip> <skip>${sting.serialqueuetests.skipped}</skip>
<dependenciesToScan> <dependenciesToScan>
<scan>org.broadinstitute.sting:.*</scan> <scan>org.broadinstitute.sting:.*</scan>
</dependenciesToScan> </dependenciesToScan>

View File

@ -31,10 +31,10 @@
<sting.committests.skipped>true</sting.committests.skipped> <sting.committests.skipped>true</sting.committests.skipped>
<sting.unittests.skipped>${sting.committests.skipped}</sting.unittests.skipped> <sting.unittests.skipped>${sting.committests.skipped}</sting.unittests.skipped>
<sting.integrationtests.skipped>${sting.committests.skipped}</sting.integrationtests.skipped> <sting.integrationtests.skipped>${sting.committests.skipped}</sting.integrationtests.skipped>
<sting.pipelinetests.skipped>${sting.committests.skipped}</sting.pipelinetests.skipped> <sting.queuetests.skipped>${sting.committests.skipped}</sting.queuetests.skipped>
<sting.largescaletests.skipped>true</sting.largescaletests.skipped> <sting.largescaletests.skipped>true</sting.largescaletests.skipped>
<sting.knowledgebasetests.skipped>true</sting.knowledgebasetests.skipped> <sting.knowledgebasetests.skipped>true</sting.knowledgebasetests.skipped>
<sting.pipelinetests.run>false</sting.pipelinetests.run> <sting.queuetests.run>false</sting.queuetests.run>
<scala.maxmemory>1g</scala.maxmemory> <scala.maxmemory>1g</scala.maxmemory>
<test.maxmemory>4g</test.maxmemory> <test.maxmemory>4g</test.maxmemory>
<java.gc.threads>4</java.gc.threads> <java.gc.threads>4</java.gc.threads>
@ -408,7 +408,7 @@
<clover.pertest.coverage>diff</clover.pertest.coverage> <clover.pertest.coverage>diff</clover.pertest.coverage>
<java.awt.headless>true</java.awt.headless> <java.awt.headless>true</java.awt.headless>
<!-- TODO: Fix BaseTest to not error out if this property is missing. --> <!-- TODO: Fix BaseTest to not error out if this property is missing. -->
<pipeline.run>${sting.pipelinetests.run}</pipeline.run> <queuetest.run>${sting.queuetests.run}</queuetest.run>
<java.io.tmpdir>${java.io.tmpdir}</java.io.tmpdir> <java.io.tmpdir>${java.io.tmpdir}</java.io.tmpdir>
</systemPropertyVariables> </systemPropertyVariables>
</configuration> </configuration>
@ -431,19 +431,19 @@
</configuration> </configuration>
</execution> </execution>
<execution> <execution>
<id>pipeline-tests</id> <id>queue-tests</id>
<goals> <goals>
<goal>integration-test</goal> <goal>integration-test</goal>
<goal>verify</goal> <goal>verify</goal>
</goals> </goals>
<!-- run pipeline dry run tests --> <!-- run queue dry run tests -->
<configuration> <configuration>
<!-- TODO: Re-enable pipeline tests by default? --> <!-- TODO: Re-enable queue tests by default? -->
<skip>${sting.pipelinetests.skipped}</skip> <skip>${sting.queuetests.skipped}</skip>
<reportsDirectory>${project.build.directory}/failsafe-reports/pipeline/${it.test}</reportsDirectory> <reportsDirectory>${project.build.directory}/failsafe-reports/queuetest/${it.test}</reportsDirectory>
<summaryFile>${project.build.directory}/failsafe-reports/pipeline/failsafe-summary-${it.test}.xml</summaryFile> <summaryFile>${project.build.directory}/failsafe-reports/queuetest/failsafe-summary-${it.test}.xml</summaryFile>
<includes> <includes>
<include>**/*PipelineTest.class</include> <include>**/*QueueTest.class</include>
</includes> </includes>
</configuration> </configuration>
</execution> </execution>