gatk-3.8/public/java/test/org/broadinstitute/sting/utils
David Roazen 3645ea9bb6 Sequence dictionary validation: detect problematic contig indexing differences
The GATK engine does not behave correctly when contigs are indexed
differently in the reads sequence dictionaries vs. the reference
sequence dictionary, and the inconsistently-indexed contigs are included
in the user's intervals. For example, given the dictionaries:

Reference dictionary = { chrM, chr1, chr2, ... }
BAM dictionary       = { chr1, chr2, ... }

and the interval "-L chr1", the engine would fail to correctly retrieve
the reads from chr1, since chr1 has a different index in the two dictionaries.

With this patch, we throw an exception if there are contig index differences
between the dictionaries for reads and reference, AND the user's intervals
include at least one of the mismatching contigs.

The user can disable this exception via -U ALLOW_SEQ_DICT_INCOMPATIBILITY

In all other cases, dictionary validation behaves as before.

I also added comprehensive unit tests for the (previously-untested)
SequenceDictionaryUtils class.

GSA-768 #resolve
2013-02-25 11:14:22 -05:00
..
R Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
activeregion Replace Smith-Waterman alignment with the bubble traversal. 2013-02-22 15:42:16 -05:00
baq Fixing BQSR/BAQ bug: 2013-01-31 11:03:17 -05:00
clipping Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
codecs/hapmap Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
collections Fixing license on Yossi's file 2013-02-05 11:14:43 -05:00
crypt Update MD5s to reflect version number change in the BAM header 2013-02-01 13:51:31 -05:00
fasta Move BaseUtils back to the GATK by request, along with associated utility methods 2013-01-30 13:09:44 -05:00
fragments Updating to latest google caliper code 2013-01-11 15:17:16 -05:00
interval Update MD5s to reflect version number change in the BAM header 2013-02-01 13:51:31 -05:00
io Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
locusiterator Cleanup and unit tests for QualityUtils 2013-02-16 07:31:37 -08:00
nanoScheduler Extend timeout of NanoScheduler deadlock tests 2013-02-19 20:25:25 -05:00
pileup Last manual license update (hopefully) 2013-01-18 16:13:07 -05:00
progressmeter Resolves Genome Sequence Analysis GSA-750 Don't print an endless series of starting messages from the ProgressMeter 2013-02-04 15:47:30 -05:00
recalibration Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
report Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
runtime Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
sam Fixed IndelRealigner reference length bug (GSA-774) 2013-02-19 16:00:36 -05:00
text Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
threading Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
variant Vast improvements to AssessNA12878 code and functionality 2013-02-21 20:43:12 -05:00
AutoFormattingTimeUnitTest.java AutoFormattingTimeUnitTest should be in utils 2013-01-30 09:47:47 -05:00
BaseUtilsUnitTest.java More aggressive checking of AWS key quality upon startup in the GATK 2013-01-31 09:08:38 -05:00
BitSetUtilsUnitTest.java Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
GenomeLocParserBenchmark.java Optimize GenomeLocParser.createGenomeLoc 2013-01-30 09:47:47 -05:00
GenomeLocParserUnitTest.java Refactoring and unit testing GenomeLocParser 2013-01-30 09:47:47 -05:00
GenomeLocSortedSetUnitTest.java ActivityProfile and ActiveRegions respects engine interval boundaries 2013-02-18 10:40:25 -05:00
GenomeLocUnitTest.java Added distance across contigs calculation to GenomeLocs 2013-02-07 16:31:41 -05:00
HaplotypeUnitTest.java Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
MRUCachingSAMSequencingDictionaryUnitTest.java Refactoring and unit testing GenomeLocParser 2013-01-30 09:47:47 -05:00
MWUnitTest.java Move some VCF/VariantContext methods back to the GATK based on feedback 2013-01-29 16:56:55 -05:00
MathUtilsUnitTest.java Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
MedianUnitTest.java Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
NGSPlatformUnitTest.java Expand NGSPlatform to meet SAM 1.4 spec, with full unit tests 2013-02-09 11:16:21 -05:00
PathUtilsUnitTest.java Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
QualityUtilsUnitTest.java Final edge case bug fixes to QualityUtil routines 2013-02-16 07:31:38 -08:00
SequenceDictionaryUtilsUnitTest.java Sequence dictionary validation: detect problematic contig indexing differences 2013-02-25 11:14:22 -05:00
SimpleTimerUnitTest.java Updated all JAVA file licenses accordingly 2013-01-10 17:06:41 -05:00
UtilsUnitTest.java Cleanup unused utils functions, and add unit test for one (append) 2013-02-01 13:51:31 -05:00