Search in sources :

Example 11 with LineIterator

use of htsjdk.tribble.readers.LineIterator in project gatk-protected by broadinstitute.

the class LineIteratorReaderUnitTest method testRead.

@Test(dataProvider = "testParameter")
public void testRead(@SuppressWarnings("unused") final int textSize, @SuppressWarnings("unused") final int lineSize, final int bufferSize, final String text) {
    final LineIterator lineIterator = new TestLineIterator(text);
    final LineIteratorReader reader = new LineIteratorReader(lineIterator);
    final StringBuilder sb = new StringBuilder();
    final char[] buffer = new char[bufferSize];
    int readResult;
    while ((readResult = reader.read(buffer, 0, bufferSize)) >= 0) {
        sb.append(buffer, 0, readResult);
    }
    final String actualText = sb.toString();
    Assert.assertEquals(actualText, text);
}
Also used : LineIterator(htsjdk.tribble.readers.LineIterator) Test(org.testng.annotations.Test)

Example 12 with LineIterator

use of htsjdk.tribble.readers.LineIterator in project gatk by broadinstitute.

the class GenomicsDBImportIntegrationTest method checkGenomicsDBAgainstExpected.

private static void checkGenomicsDBAgainstExpected(final String workspace, final SimpleInterval interval, final String expectedCombinedVCF) throws IOException {
    final GenomicsDBFeatureReader<VariantContext, PositionalBufferedStream> genomicsDBFeatureReader = new GenomicsDBFeatureReader<>(new File(workspace, GenomicsDBConstants.DEFAULT_VIDMAP_FILE_NAME).getAbsolutePath(), new File(workspace, GenomicsDBConstants.DEFAULT_CALLSETMAP_FILE_NAME).getAbsolutePath(), workspace, GenomicsDBConstants.DEFAULT_ARRAY_NAME, b38_reference_20_21, null, new BCF2Codec());
    final AbstractFeatureReader<VariantContext, LineIterator> combinedVCFReader = AbstractFeatureReader.getFeatureReader(expectedCombinedVCF, new VCFCodec(), true);
    try (CloseableTribbleIterator<VariantContext> actualVcs = genomicsDBFeatureReader.query(interval.getContig(), interval.getStart(), interval.getEnd());
        CloseableTribbleIterator<VariantContext> expectedVcs = combinedVCFReader.query(interval.getContig(), interval.getStart(), interval.getEnd())) {
        BaseTest.assertCondition(actualVcs, expectedVcs, (a, e) -> {
            // TODO: Temporary hacks to make this test pass. Must be removed later
            if (// allele order
            e.getStart() != 17967343 && e.getStart() != 17966384 && // split block
            e.getEnd() != 17981447) {
                VariantContextTestUtils.assertVariantContextsAreEqual(a, e, Collections.emptyList());
            }
        });
    }
}
Also used : PositionalBufferedStream(htsjdk.tribble.readers.PositionalBufferedStream) VCFCodec(htsjdk.variant.vcf.VCFCodec) BCF2Codec(htsjdk.variant.bcf2.BCF2Codec) VariantContext(htsjdk.variant.variantcontext.VariantContext) File(java.io.File) LineIterator(htsjdk.tribble.readers.LineIterator) GenomicsDBFeatureReader(com.intel.genomicsdb.GenomicsDBFeatureReader)

Example 13 with LineIterator

use of htsjdk.tribble.readers.LineIterator in project gatk-protected by broadinstitute.

the class GenotypeGVCFsIntegrationTest method getVariantContexts.

/**
     * Returns a list of VariantContext records from a VCF file
     *
     * @param vcfFile VCF file
     * @return list of VariantContext records
     * @throws IOException if the file does not exist or can not be opened
     */
private static List<VariantContext> getVariantContexts(final File vcfFile) throws IOException {
    final VCFCodec codec = new VCFCodec();
    final FileInputStream s = new FileInputStream(vcfFile);
    final LineIterator lineIteratorVCF = codec.makeSourceFromStream(new PositionalBufferedStream(s));
    codec.readHeader(lineIteratorVCF);
    final List<VariantContext> VCs = new ArrayList<>();
    while (lineIteratorVCF.hasNext()) {
        final String line = lineIteratorVCF.next();
        Assert.assertFalse(line == null);
        VCs.add(codec.decode(line));
    }
    return VCs;
}
Also used : VCFCodec(htsjdk.variant.vcf.VCFCodec) PositionalBufferedStream(htsjdk.tribble.readers.PositionalBufferedStream) ArrayList(java.util.ArrayList) VariantContext(htsjdk.variant.variantcontext.VariantContext) LineIterator(htsjdk.tribble.readers.LineIterator) FileInputStream(java.io.FileInputStream)

Aggregations

LineIterator (htsjdk.tribble.readers.LineIterator)13 Test (org.testng.annotations.Test)9 BaseTest (org.broadinstitute.hellbender.utils.test.BaseTest)7 LineIteratorImpl (htsjdk.tribble.readers.LineIteratorImpl)6 LineReader (htsjdk.tribble.readers.LineReader)6 VariantContext (htsjdk.variant.variantcontext.VariantContext)5 VCFCodec (htsjdk.variant.vcf.VCFCodec)5 PositionalBufferedStream (htsjdk.tribble.readers.PositionalBufferedStream)4 File (java.io.File)3 GenomicsDBFeatureReader (com.intel.genomicsdb.GenomicsDBFeatureReader)2 SAMSequenceDictionary (htsjdk.samtools.SAMSequenceDictionary)2 BCF2Codec (htsjdk.variant.bcf2.BCF2Codec)2 VCFHeader (htsjdk.variant.vcf.VCFHeader)2 FileInputStream (java.io.FileInputStream)2 ArrayList (java.util.ArrayList)2 SimpleInterval (org.broadinstitute.hellbender.utils.SimpleInterval)2 VisibleForTesting (com.google.common.annotations.VisibleForTesting)1 ChromosomeInterval (com.intel.genomicsdb.ChromosomeInterval)1 GenomicsDBCallsetsMapProto (com.intel.genomicsdb.GenomicsDBCallsetsMapProto)1 GenomicsDBImportConfiguration (com.intel.genomicsdb.GenomicsDBImportConfiguration)1