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:
Mark DePristo 2011-09-30 09:49:35 -04:00
parent 9860a2c989
commit e055a78f6e
2 changed files with 7 additions and 9 deletions

View File

@ -39,6 +39,7 @@ import org.broadinstitute.sting.utils.GenomeLoc;
import org.broadinstitute.sting.utils.GenomeLocParser;
import org.broadinstitute.sting.utils.MathUtils;
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.pileup.ExtendedEventPileupElement;
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 */
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 */
private static Logger logger = Logger.getLogger(LocusIteratorByState.class);
@ -281,10 +279,9 @@ public class LocusIteratorByState extends LocusIterator {
this.genomeLocParser = genomeLocParser;
this.samples = new ArrayList<String>(samples);
this.readStates = new ReadStateManager(samIterator,readInformation.getDownsamplingMethod());
}
public LocusIteratorByState(final Iterator<SAMRecord> samIterator, ReadProperties readInformation, GenomeLocParser genomeLocParser ) {
this(samIterator, readInformation, genomeLocParser, Collections.<String>emptySet());
if ( this.samples.isEmpty() )
throw new IllegalArgumentException("samples list must not be empty");
}
public Iterator<AlignmentContext> iterator() {

View File

@ -28,10 +28,8 @@ import java.util.*;
* testing of the LocusIteratorByState
*/
public class LocusIteratorByStateUnitTest extends BaseTest {
private final int MAX_READS = 10;
private static SAMFileHeader header;
private LocusIteratorByState li;
private GenomeLocParser genomeLocParser;
@BeforeClass
@ -41,8 +39,11 @@ public class LocusIteratorByStateUnitTest extends BaseTest {
}
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()),
readAttributes,genomeLocParser, new SampleDataSource().getSampleNames());
readAttributes,genomeLocParser, samples);
}
@Test