LIBS now requires at least one sample be present
-- UnitTest provides a "null" sample for matching the reads without read groups
This commit is contained in:
parent
9860a2c989
commit
e055a78f6e
|
|
@ -39,6 +39,7 @@ import org.broadinstitute.sting.utils.GenomeLoc;
|
||||||
import org.broadinstitute.sting.utils.GenomeLocParser;
|
import org.broadinstitute.sting.utils.GenomeLocParser;
|
||||||
import org.broadinstitute.sting.utils.MathUtils;
|
import org.broadinstitute.sting.utils.MathUtils;
|
||||||
import org.broadinstitute.sting.utils.ReservoirDownsampler;
|
import org.broadinstitute.sting.utils.ReservoirDownsampler;
|
||||||
|
import org.broadinstitute.sting.utils.exceptions.ReviewedStingException;
|
||||||
import org.broadinstitute.sting.utils.exceptions.UserException;
|
import org.broadinstitute.sting.utils.exceptions.UserException;
|
||||||
import org.broadinstitute.sting.utils.pileup.ExtendedEventPileupElement;
|
import org.broadinstitute.sting.utils.pileup.ExtendedEventPileupElement;
|
||||||
import org.broadinstitute.sting.utils.pileup.PileupElement;
|
import org.broadinstitute.sting.utils.pileup.PileupElement;
|
||||||
|
|
@ -50,9 +51,6 @@ import java.util.*;
|
||||||
|
|
||||||
/** Iterator that traverses a SAM File, accumulating information on a per-locus basis */
|
/** Iterator that traverses a SAM File, accumulating information on a per-locus basis */
|
||||||
public class LocusIteratorByState extends LocusIterator {
|
public class LocusIteratorByState extends LocusIterator {
|
||||||
// private static long discarded_bases = 0L;
|
|
||||||
// private static long observed_bases = 0L;
|
|
||||||
|
|
||||||
/** our log, which we want to capture anything from this class */
|
/** our log, which we want to capture anything from this class */
|
||||||
private static Logger logger = Logger.getLogger(LocusIteratorByState.class);
|
private static Logger logger = Logger.getLogger(LocusIteratorByState.class);
|
||||||
|
|
||||||
|
|
@ -281,10 +279,9 @@ public class LocusIteratorByState extends LocusIterator {
|
||||||
this.genomeLocParser = genomeLocParser;
|
this.genomeLocParser = genomeLocParser;
|
||||||
this.samples = new ArrayList<String>(samples);
|
this.samples = new ArrayList<String>(samples);
|
||||||
this.readStates = new ReadStateManager(samIterator,readInformation.getDownsamplingMethod());
|
this.readStates = new ReadStateManager(samIterator,readInformation.getDownsamplingMethod());
|
||||||
}
|
|
||||||
|
|
||||||
public LocusIteratorByState(final Iterator<SAMRecord> samIterator, ReadProperties readInformation, GenomeLocParser genomeLocParser ) {
|
if ( this.samples.isEmpty() )
|
||||||
this(samIterator, readInformation, genomeLocParser, Collections.<String>emptySet());
|
throw new IllegalArgumentException("samples list must not be empty");
|
||||||
}
|
}
|
||||||
|
|
||||||
public Iterator<AlignmentContext> iterator() {
|
public Iterator<AlignmentContext> iterator() {
|
||||||
|
|
|
||||||
|
|
@ -28,10 +28,8 @@ import java.util.*;
|
||||||
* testing of the LocusIteratorByState
|
* testing of the LocusIteratorByState
|
||||||
*/
|
*/
|
||||||
public class LocusIteratorByStateUnitTest extends BaseTest {
|
public class LocusIteratorByStateUnitTest extends BaseTest {
|
||||||
private final int MAX_READS = 10;
|
|
||||||
private static SAMFileHeader header;
|
private static SAMFileHeader header;
|
||||||
private LocusIteratorByState li;
|
private LocusIteratorByState li;
|
||||||
|
|
||||||
private GenomeLocParser genomeLocParser;
|
private GenomeLocParser genomeLocParser;
|
||||||
|
|
||||||
@BeforeClass
|
@BeforeClass
|
||||||
|
|
@ -41,8 +39,11 @@ public class LocusIteratorByStateUnitTest extends BaseTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
private final LocusIteratorByState makeLTBS(List<SAMRecord> reads, ReadProperties readAttributes) {
|
private final LocusIteratorByState makeLTBS(List<SAMRecord> reads, ReadProperties readAttributes) {
|
||||||
|
List<String> samples = new ArrayList<String>();
|
||||||
|
samples.add(null);
|
||||||
|
|
||||||
return new LocusIteratorByState(new FakeCloseableIterator<SAMRecord>(reads.iterator()),
|
return new LocusIteratorByState(new FakeCloseableIterator<SAMRecord>(reads.iterator()),
|
||||||
readAttributes,genomeLocParser, new SampleDataSource().getSampleNames());
|
readAttributes,genomeLocParser, samples);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue