diff --git a/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java b/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java index 665788e07..972144ab8 100644 --- a/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java +++ b/public/java/src/org/broadinstitute/sting/gatk/io/storage/VariantContextWriterStorage.java @@ -28,6 +28,7 @@ import net.sf.samtools.util.BlockCompressedOutputStream; import org.apache.log4j.Logger; import org.broad.tribble.AbstractFeatureReader; import org.broadinstitute.sting.gatk.io.stubs.VariantContextWriterStub; +import org.broadinstitute.sting.utils.codecs.bcf2.BCF2Utils; import org.broadinstitute.sting.utils.codecs.vcf.VCFCodec; import org.broadinstitute.sting.utils.codecs.vcf.VCFHeader; import org.broadinstitute.sting.utils.exceptions.ReviewedStingException; @@ -105,7 +106,7 @@ public class VariantContextWriterStorage implements Storage foo.bcf + * foo.xxx => foo.xxx.bcf + * + * @param vcfFile + * @return + */ + public static final File shadowBCF(final File vcfFile) { + final String path = vcfFile.getAbsolutePath(); + if ( path.contains(".vcf") ) + return new File(path.replace(".vcf", ".bcf")); + else + return new File( path + ".bcf" ); + } } diff --git a/public/java/test/org/broadinstitute/sting/WalkerTest.java b/public/java/test/org/broadinstitute/sting/WalkerTest.java index a13f74193..d02c0bfa4 100755 --- a/public/java/test/org/broadinstitute/sting/WalkerTest.java +++ b/public/java/test/org/broadinstitute/sting/WalkerTest.java @@ -34,6 +34,7 @@ import org.broadinstitute.sting.gatk.CommandLineGATK; import org.broadinstitute.sting.gatk.GenomeAnalysisEngine; import org.broadinstitute.sting.gatk.phonehome.GATKRunReport; import org.broadinstitute.sting.utils.Utils; +import org.broadinstitute.sting.utils.codecs.bcf2.BCF2Utils; import org.broadinstitute.sting.utils.codecs.vcf.VCFCodec; import org.broadinstitute.sting.utils.collections.Pair; import org.broadinstitute.sting.utils.exceptions.ReviewedStingException; @@ -60,7 +61,7 @@ public class WalkerTest extends BaseTest { } public void validateOutputBCFIfPossible(final String name, final File resultFile) { - final File bcfFile = new File(resultFile.getAbsolutePath().replace(".vcf", ".bcf")); + final File bcfFile = BCF2Utils.shadowBCF(resultFile); if ( bcfFile.exists() ) { logger.warn("Checking shadow BCF output file " + bcfFile + " against VCF file " + resultFile); try { diff --git a/public/java/test/org/broadinstitute/sting/gatk/refdata/utils/FeatureToGATKFeatureIteratorUnitTest.java b/public/java/test/org/broadinstitute/sting/gatk/refdata/utils/FeatureToGATKFeatureIteratorUnitTest.java index 5b1b2b111..a5a0d24e9 100644 --- a/public/java/test/org/broadinstitute/sting/gatk/refdata/utils/FeatureToGATKFeatureIteratorUnitTest.java +++ b/public/java/test/org/broadinstitute/sting/gatk/refdata/utils/FeatureToGATKFeatureIteratorUnitTest.java @@ -41,16 +41,17 @@ public class FeatureToGATKFeatureIteratorUnitTest extends BaseTest { @Test @SuppressWarnings("unchecked") public void testCloseFilePointers() throws IOException { + final String chr = "20"; IndexedFastaSequenceFile seq = new CachingIndexedFastaSequenceFile(new File(BaseTest.hg19Reference)); GenomeLocParser parser = new GenomeLocParser(seq); File file = new File(validationDataLocation + "NA12878.hg19.example1.vcf"); VCFCodec codec = new VCFCodec(); TestFeatureReader reader = new TestFeatureReader(file.getAbsolutePath(), codec); - CheckableCloseableTribbleIterator tribbleIterator = reader.query("20", 1, 100000); + CheckableCloseableTribbleIterator tribbleIterator = reader.query(chr, 1, 100000); FeatureToGATKFeatureIterator gatkIterator = new FeatureToGATKFeatureIterator(parser, tribbleIterator, "test"); Assert.assertTrue(gatkIterator.hasNext(), "GATK feature iterator does not have a next value."); GenomeLoc gatkLocation = gatkIterator.next().getLocation(); - Assert.assertEquals(gatkLocation.getContig(), "20", "Instead of chr 20 rod iterator was at location " + gatkLocation); + Assert.assertEquals(gatkLocation.getContig(), chr, "Instead of chr 20 rod iterator was at location " + gatkLocation); Assert.assertFalse(tribbleIterator.isClosed(), "Tribble iterator is closed but should be still open."); gatkIterator.close(); Assert.assertTrue(tribbleIterator.isClosed(), "Tribble iterator is open but should be now closed."); diff --git a/public/java/test/org/broadinstitute/sting/utils/variantcontext/writer/VariantContextWritersUnitTest.java b/public/java/test/org/broadinstitute/sting/utils/variantcontext/writer/VariantContextWritersUnitTest.java index b5beb885d..a16cb51b3 100644 --- a/public/java/test/org/broadinstitute/sting/utils/variantcontext/writer/VariantContextWritersUnitTest.java +++ b/public/java/test/org/broadinstitute/sting/utils/variantcontext/writer/VariantContextWritersUnitTest.java @@ -32,22 +32,22 @@ package org.broadinstitute.sting.utils.variantcontext.writer; import net.sf.picard.reference.IndexedFastaSequenceFile; import net.sf.samtools.SAMSequenceDictionary; import org.broad.tribble.FeatureCodec; -import org.broad.tribble.FeatureCodecHeader; -import org.broad.tribble.readers.PositionalBufferedStream; import org.broadinstitute.sting.BaseTest; -import org.broadinstitute.sting.utils.codecs.bcf2.*; +import org.broadinstitute.sting.utils.codecs.bcf2.BCF2Codec; import org.broadinstitute.sting.utils.codecs.vcf.VCFCodec; import org.broadinstitute.sting.utils.codecs.vcf.VCFHeader; import org.broadinstitute.sting.utils.fasta.CachingIndexedFastaSequenceFile; import org.broadinstitute.sting.utils.variantcontext.VariantContext; import org.broadinstitute.sting.utils.variantcontext.VariantContextTestProvider; -import org.testng.annotations.BeforeMethod; import org.testng.annotations.BeforeSuite; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; -import java.io.*; -import java.util.*; +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.EnumSet; +import java.util.List; public class VariantContextWritersUnitTest extends BaseTest {