diff --git a/java/src/org/broad/tribble/vcf/VCFConstants.java b/java/src/org/broad/tribble/vcf/VCFConstants.java index 5c8206e3d..4173b4cd8 100755 --- a/java/src/org/broad/tribble/vcf/VCFConstants.java +++ b/java/src/org/broad/tribble/vcf/VCFConstants.java @@ -81,4 +81,5 @@ public final class VCFConstants { public static final double MAX_GENOTYPE_QUAL = 99.0; public static final String DOUBLE_PRECISION_FORMAT_STRING = "%.2f"; + public static final String DOUBLE_PRECISION_INT_SUFFIX = ".00"; } \ No newline at end of file diff --git a/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/Genotype.java b/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/Genotype.java index 30a186151..16b1edb3b 100755 --- a/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/Genotype.java +++ b/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/Genotype.java @@ -17,11 +17,14 @@ public class Genotype { protected InferredGeneticContext commonInfo; public final static double NO_NEG_LOG_10PERROR = InferredGeneticContext.NO_NEG_LOG_10PERROR; protected List alleles = null; // new ArrayList(); + private boolean genotypesArePhased = false; + private boolean filtersWereAppliedToContext; public Genotype(String sampleName, List alleles, double negLog10PError, Set filters, Map attributes, boolean genotypesArePhased) { this.alleles = Collections.unmodifiableList(alleles); commonInfo = new InferredGeneticContext(sampleName, negLog10PError, filters, attributes); + filtersWereAppliedToContext = filters != null; this.genotypesArePhased = genotypesArePhased; validate(); } @@ -191,6 +194,7 @@ public class Genotype { public Set getFilters() { return commonInfo.getFilters(); } public boolean isFiltered() { return commonInfo.isFiltered(); } public boolean isNotFiltered() { return commonInfo.isNotFiltered(); } + public boolean filtersWereApplied() { return filtersWereAppliedToContext; } public boolean hasNegLog10PError() { return commonInfo.hasNegLog10PError(); } public double getNegLog10PError() { return commonInfo.getNegLog10PError(); } public double getPhredScaledQual() { return commonInfo.getPhredScaledQual(); } diff --git a/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContext.java b/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContext.java index e86efa408..af483a4bd 100755 --- a/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContext.java +++ b/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContext.java @@ -164,6 +164,7 @@ public class VariantContext implements Feature { // to enable tribble intergrati protected InferredGeneticContext commonInfo = null; public final static double NO_NEG_LOG_10PERROR = InferredGeneticContext.NO_NEG_LOG_10PERROR; public final static String REFERENCE_BASE_FOR_INDEL_KEY = "REFERENCE_BASE_FOR_INDEL"; + public final static String ID_KEY = "ID"; /** The location of this VariantContext */ private GenomeLoc loc; @@ -188,22 +189,32 @@ public class VariantContext implements Feature { // to enable tribble intergrati // set to the alt allele when biallelic, otherwise == null private Allele ALT = null; + // were filters applied? + private boolean filtersWereAppliedToContext; + // --------------------------------------------------------------------------------------------------------- // // constructors // // --------------------------------------------------------------------------------------------------------- - // todo move all of attribute object attributes into Map<> and make special filter value for printing out values when - // emitting VC -> VCF or whatever - + /** * the complete constructor. Makes a complete VariantContext from its arguments + * + * @param name name + * @param loc location + * @param alleles alleles + * @param genotypes genotypes map + * @param negLog10PError qual + * @param filters filters: use null for unfiltered and empty set for passes filters + * @param attributes attributes */ public VariantContext(String name, GenomeLoc loc, Collection alleles, Map genotypes, double negLog10PError, Set filters, Map attributes) { if ( loc == null ) { throw new StingException("GenomeLoc cannot be null"); } this.loc = loc; this.commonInfo = new InferredGeneticContext(name, negLog10PError, filters, attributes); + filtersWereAppliedToContext = filters != null; if ( alleles == null ) { throw new StingException("Alleles cannot be null"); } // we need to make this a LinkedHashSet in case the user prefers a given ordering of alleles @@ -228,13 +239,13 @@ public class VariantContext implements Feature { // to enable tribble intergrati /** * Create a new VariantContext * - * @param name - * @param loc - * @param alleles - * @param genotypes - * @param negLog10PError - * @param filters - * @param attributes + * @param name name + * @param loc location + * @param alleles alleles + * @param genotypes genotypes set + * @param negLog10PError qual + * @param filters filters: use null for unfiltered and empty set for passes filters + * @param attributes attributes */ public VariantContext(String name, GenomeLoc loc, Collection alleles, Collection genotypes, double negLog10PError, Set filters, Map attributes) { this(name, loc, alleles, genotypes != null ? genotypeCollectionToMap(new TreeMap(), genotypes) : null, negLog10PError, filters, attributes); @@ -242,9 +253,9 @@ public class VariantContext implements Feature { // to enable tribble intergrati /** * Create a new variant context without genotypes and no Perror, no filters, and no attributes - * @param name - * @param loc - * @param alleles + * @param name name + * @param loc location + * @param alleles alleles */ public VariantContext(String name, GenomeLoc loc, Collection alleles) { this(name, loc, alleles, NO_GENOTYPES, InferredGeneticContext.NO_NEG_LOG_10PERROR, null, null); @@ -252,9 +263,10 @@ public class VariantContext implements Feature { // to enable tribble intergrati /** * Create a new variant context without genotypes and no Perror, no filters, and no attributes - * @param name - * @param loc - * @param alleles + * @param name name + * @param loc location + * @param alleles alleles + * @param genotypes genotypes */ public VariantContext(String name, GenomeLoc loc, Collection alleles, Collection genotypes) { this(name, loc, alleles, genotypes, InferredGeneticContext.NO_NEG_LOG_10PERROR, null, null); @@ -281,8 +293,8 @@ public class VariantContext implements Feature { // to enable tribble intergrati * genotype and alleles in genotype. This is the right way to test if a single genotype is actually * variant or not. * - * @param genotype - * @return + * @param genotype genotype + * @return vc subcontext */ public VariantContext subContextFromGenotypes(Genotype genotype) { return subContextFromGenotypes(Arrays.asList(genotype)); @@ -294,17 +306,17 @@ public class VariantContext implements Feature { // to enable tribble intergrati * genotypes and alleles in these genotypes. This is the right way to test if a single genotype is actually * variant or not. * - * @param genotypes - * @return + * @param genotypes genotypes + * @return vc subcontext */ public VariantContext subContextFromGenotypes(Collection genotypes) { return new VariantContext(getName(), getLocation(), allelesOfGenotypes(genotypes), genotypes, getNegLog10PError(), getFilters(), getAttributes()); } /** - * helper routnine for subcontext - * @param genotypes - * @return + * helper routine for subcontext + * @param genotypes genotypes + * @return allele set */ private Set allelesOfGenotypes(Collection genotypes) { Set alleles = new HashSet(); @@ -478,6 +490,7 @@ public class VariantContext implements Feature { // to enable tribble intergrati public Set getFilters() { return commonInfo.getFilters(); } public boolean isFiltered() { return commonInfo.isFiltered(); } public boolean isNotFiltered() { return commonInfo.isNotFiltered(); } + public boolean filtersWereApplied() { return filtersWereAppliedToContext; } public boolean hasNegLog10PError() { return commonInfo.hasNegLog10PError(); } public double getNegLog10PError() { return commonInfo.getNegLog10PError(); } public double getPhredScaledQual() { return commonInfo.getPhredScaledQual(); } @@ -724,7 +737,7 @@ public class VariantContext implements Feature { // to enable tribble intergrati /** * Returns the number of chromosomes carrying any allele in the genotypes (i.e., excluding NO_CALLS * - * @return + * @return chromosome count */ public int getChromosomeCount() { int n = 0; @@ -739,8 +752,8 @@ public class VariantContext implements Feature { // to enable tribble intergrati /** * Returns the number of chromosomes carrying allele A in the genotypes * - * @param a - * @return + * @param a allele + * @return chromosome count */ public int getChromosomeCount(Allele a) { int n = 0; diff --git a/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextUtils.java b/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextUtils.java index dd8d088b8..d229a88cb 100755 --- a/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextUtils.java +++ b/java/src/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextUtils.java @@ -242,8 +242,8 @@ public class VariantContextUtils { filters.addAll(vc.getFilters()); if ( vc.hasAttribute(VCFConstants.DEPTH_KEY) ) depth += Integer.valueOf(vc.getAttributeAsString(VCFConstants.DEPTH_KEY)); - if ( rsID == null && vc.hasAttribute("ID") ) - rsID = vc.getAttributeAsString("ID"); + if ( rsID == null && vc.hasAttribute(VariantContext.ID_KEY) ) + rsID = vc.getAttributeAsString(VariantContext.ID_KEY); for ( Map.Entry p : vc.getAttributes().entrySet() ) { if ( ! attributes.containsKey(p.getKey()) || attributes.get(p.getKey()).equals(".") ) { // no value @@ -277,7 +277,7 @@ public class VariantContextUtils { if ( depth > 0 ) attributes.put(VCFConstants.DEPTH_KEY, String.valueOf(depth)); if ( rsID != null ) - attributes.put("ID", rsID); + attributes.put(VariantContext.ID_KEY, rsID); VariantContext merged = new VariantContext(name, loc, alleles, genotypes, negLog10PError, filters, attributes); if ( printMessages && remapped ) System.out.printf("Remapped => %s%n", merged); @@ -431,11 +431,11 @@ public class VariantContextUtils { } public static VariantContext modifyGenotypes(VariantContext vc, Map genotypes) { - return new VariantContext(vc.getName(), vc.getLocation(), vc.getAlleles(), genotypes, vc.getNegLog10PError(), vc.getFilters(), vc.getAttributes()); + return new VariantContext(vc.getName(), vc.getLocation(), vc.getAlleles(), genotypes, vc.getNegLog10PError(), vc.filtersWereApplied() ? vc.getFilters() : null, vc.getAttributes()); } public static VariantContext modifyLocation(VariantContext vc, GenomeLoc loc) { - return new VariantContext(vc.getName(), loc, vc.getAlleles(), vc.genotypes, vc.getNegLog10PError(), vc.getFilters(), vc.getAttributes()); + return new VariantContext(vc.getName(), loc, vc.getAlleles(), vc.genotypes, vc.getNegLog10PError(), vc.filtersWereApplied() ? vc.getFilters() : null, vc.getAttributes()); } public static VariantContext modifyFilters(VariantContext vc, Set filters) { @@ -443,15 +443,15 @@ public class VariantContextUtils { } public static VariantContext modifyAttributes(VariantContext vc, Map attributes) { - return new VariantContext(vc.getName(), vc.getLocation(), vc.getAlleles(), vc.genotypes, vc.getNegLog10PError(), vc.getFilters(), attributes); + return new VariantContext(vc.getName(), vc.getLocation(), vc.getAlleles(), vc.genotypes, vc.getNegLog10PError(), vc.filtersWereApplied() ? vc.getFilters() : null, attributes); } public static Genotype modifyName(Genotype g, String name) { - return new Genotype(name, g.getAlleles(), g.getNegLog10PError(), g.getFilters(), g.getAttributes(), g.genotypesArePhased()); + return new Genotype(name, g.getAlleles(), g.getNegLog10PError(), g.filtersWereApplied() ? g.getFilters() : null, g.getAttributes(), g.genotypesArePhased()); } public static Genotype modifyAttributes(Genotype g, Map attributes) { - return new Genotype(g.getSampleName(), g.getAlleles(), g.getNegLog10PError(), g.getFilters(), attributes, g.genotypesArePhased()); + return new Genotype(g.getSampleName(), g.getAlleles(), g.getNegLog10PError(), g.filtersWereApplied() ? g.getFilters() : null, attributes, g.genotypesArePhased()); } public static VariantContext purgeUnallowedGenotypeAttributes(VariantContext vc, Set allowedAttributes) { diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/VariantContextAdaptors.java b/java/src/org/broadinstitute/sting/gatk/refdata/VariantContextAdaptors.java index 0c362b15e..1bbe3b87c 100755 --- a/java/src/org/broadinstitute/sting/gatk/refdata/VariantContextAdaptors.java +++ b/java/src/org/broadinstitute/sting/gatk/refdata/VariantContextAdaptors.java @@ -108,7 +108,7 @@ public class VariantContextAdaptors { } Map attributes = new HashMap(); - attributes.put("ID", dbsnp.getRsID()); + attributes.put(VariantContext.ID_KEY, dbsnp.getRsID()); Collection genotypes = null; VariantContext vc = new VariantContext(name, GenomeLocParser.createGenomeLoc(dbsnp.getChr(),dbsnp.getStart(),dbsnp.getEnd()), alleles, genotypes, VariantContext.NO_NEG_LOG_10PERROR, null, attributes); return vc; @@ -133,7 +133,7 @@ public class VariantContextAdaptors { Set filters = vcf.isFiltered() ? new HashSet(Arrays.asList(vcf.getFilteringCodes())) : null; Map attributes = new HashMap(vcf.getInfoValues()); - attributes.put("ID", vcf.getID()); + attributes.put(VariantContext.ID_KEY, vcf.getID()); // add all of the alt alleles List alleles = new ArrayList(); diff --git a/java/src/org/broadinstitute/sting/gatk/refdata/features/vcf4/VCF4Codec.java b/java/src/org/broadinstitute/sting/gatk/refdata/features/vcf4/VCF4Codec.java index 03c0889c0..ddeb0e88b 100644 --- a/java/src/org/broadinstitute/sting/gatk/refdata/features/vcf4/VCF4Codec.java +++ b/java/src/org/broadinstitute/sting/gatk/refdata/features/vcf4/VCF4Codec.java @@ -260,7 +260,7 @@ public class VCF4Codec implements FeatureCodec, NameAwareCodec { // validate the fields validateFields(attributes.keySet(),new ArrayList(infoFields.keySet())); - attributes.put("ID", id); + attributes.put(VariantContext.ID_KEY, id); return attributes; } @@ -285,15 +285,9 @@ public class VCF4Codec implements FeatureCodec, NameAwareCodec { * @return return a double */ private Double parseQual(String qualString) { - if (qualString.equals(VCFConstants.MISSING_VALUE_v4)) + if ( qualString.equals(VCFConstants.MISSING_VALUE_v4) || qualString.equals(VCFConstants.MISSING_QUALITY_v3) ) return VariantContext.NO_NEG_LOG_10PERROR; - else { - double q = Double.valueOf(qualString); - if ( q == -1 ) - return VariantContext.NO_NEG_LOG_10PERROR; - else - return Double.valueOf(qualString) / 10; - } + return Double.valueOf(qualString) / 10; } /** @@ -357,36 +351,36 @@ public class VCF4Codec implements FeatureCodec, NameAwareCodec { * @return a set of the filters applied */ private Set parseFilters(String filterString) { - Set fFields; - // a PASS is simple (no filters) - String passString = VCFConstants.PASSES_FILTERS_v3; - if (this.version == VCFHeaderVersion.VCF4_0) - passString = VCFConstants.PASSES_FILTERS_v4; + // null for unfiltered + if ( filterString.equals(VCFConstants.UNFILTERED) ) + return null; - if ( filterString.equals(passString) ) { - return null; - } - if ( filterString.equals(VCFConstants.UNFILTERED)) { - return null; - } - // else do we have the filter string cached? - else if (filterHash.containsKey(filterString)) { - fFields = filterHash.get(filterString); + // empty set for passes filters + LinkedHashSet fFields = new LinkedHashSet(); + + if ( this.version == VCFHeaderVersion.VCF4_0 ) { + if ( filterString.equals(VCFConstants.PASSES_FILTERS_v4) ) + return fFields; + if ( filterString.equals(VCFConstants.PASSES_FILTERS_v3) ) + throw new StingException(VCFConstants.PASSES_FILTERS_v3 + " is an invalid filter name in vcf4.0"); + } else if ( filterString.equals(VCFConstants.PASSES_FILTERS_v3) ) { + return fFields; } + + // do we have the filter string cached? + if ( filterHash.containsKey(filterString) ) + return filterHash.get(filterString); + // otherwise we have to parse and cache the value - else { - LinkedHashSet s = new LinkedHashSet(1); - if ( filterString.indexOf(";") == -1 ) { - s.add(filterString); - } else { - s.addAll(Utils.split(filterString, ";")); - } - filterHash.put(filterString,s); - fFields = s; - } + if ( filterString.indexOf(";") == -1 ) + fFields.add(filterString); + else + fFields.addAll(Utils.split(filterString, ";")); - validateFields(fFields,filterFields); + filterHash.put(filterString, fFields); + + validateFields(fFields, filterFields); return fFields; } diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/VariantsToVCF.java b/java/src/org/broadinstitute/sting/gatk/walkers/VariantsToVCF.java index ba3ee05df..8c7b8279f 100755 --- a/java/src/org/broadinstitute/sting/gatk/walkers/VariantsToVCF.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/VariantsToVCF.java @@ -72,7 +72,7 @@ public class VariantsToVCF extends RodWalker { for ( VariantContext vc : contexts ) { Map attrs = new HashMap(vc.getAttributes()); if ( dbsnp != null ) - attrs.put("ID", dbsnp.getRsID()); + attrs.put(VariantContext.ID_KEY, dbsnp.getRsID()); vc = VariantContextUtils.modifyAttributes(vc, attrs); // set the appropriate sample name if necessary diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/annotator/VariantAnnotatorEngine.java b/java/src/org/broadinstitute/sting/gatk/walkers/annotator/VariantAnnotatorEngine.java index 6114b544f..74d4dd035 100755 --- a/java/src/org/broadinstitute/sting/gatk/walkers/annotator/VariantAnnotatorEngine.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/annotator/VariantAnnotatorEngine.java @@ -191,8 +191,8 @@ public class VariantAnnotatorEngine { DbSNPFeature dbsnp = DbSNPHelper.getFirstRealSNP(tracker.getReferenceMetaData(DbSNPHelper.STANDARD_DBSNP_TRACK_NAME)); infoAnnotations.put(VCFConstants.DBSNP_KEY, dbsnp == null ? false : true); // annotate dbsnp id if available and not already there - if ( dbsnp != null && (!vc.hasAttribute("ID") || vc.getAttribute("ID").equals(VCFConstants.EMPTY_ID_FIELD)) ) - infoAnnotations.put("ID", dbsnp.getRsID()); + if ( dbsnp != null && (!vc.hasAttribute(VariantContext.ID_KEY) || vc.getAttribute(VariantContext.ID_KEY).equals(VCFConstants.EMPTY_ID_FIELD)) ) + infoAnnotations.put(VariantContext.ID_KEY, dbsnp.getRsID()); } else { List dbRod = tracker.getReferenceMetaData(dbSet.getKey()); infoAnnotations.put(dbSet.getValue(), dbRod.size() == 0 ? false : true); @@ -252,7 +252,7 @@ public class VariantAnnotatorEngine { //Create a separate VariantContext (aka. output line) for each element in infoAnnotationOutputsList Collection returnValue = new LinkedList(); for(Map infoAnnotationOutput : infoAnnotationOutputsList) { - returnValue.add( new VariantContext(vc.getName(), vc.getLocation(), vc.getAlleles(), genotypes, vc.getNegLog10PError(), vc.getFilters(), infoAnnotationOutput) ); + returnValue.add( new VariantContext(vc.getName(), vc.getLocation(), vc.getAlleles(), genotypes, vc.getNegLog10PError(), vc.filtersWereApplied() ? vc.getFilters() : null, infoAnnotationOutput) ); } return returnValue; diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/JointEstimateGenotypeCalculationModel.java b/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/JointEstimateGenotypeCalculationModel.java index 101cd1ea9..a6f7b8b3a 100644 --- a/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/JointEstimateGenotypeCalculationModel.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/genotyper/JointEstimateGenotypeCalculationModel.java @@ -372,7 +372,7 @@ public abstract class JointEstimateGenotypeCalculationModel extends GenotypeCalc DbSNPFeature dbsnp = getDbSNP(tracker); if ( dbsnp != null ) - attributes.put("ID", dbsnp.getRsID()); + attributes.put(VariantContext.ID_KEY, dbsnp.getRsID()); if ( !UAC.NO_SLOD ) { // the overall lod diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/indels/IndelRealigner.java b/java/src/org/broadinstitute/sting/gatk/walkers/indels/IndelRealigner.java index ca7e343f2..c516116b3 100755 --- a/java/src/org/broadinstitute/sting/gatk/walkers/indels/IndelRealigner.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/indels/IndelRealigner.java @@ -321,9 +321,14 @@ public class IndelRealigner extends ReadWalker { readsToClean.clear(); readsNotToClean.clear(); - do { - currentInterval = intervals.hasNext() ? intervals.next() : null; - } while ( currentInterval != null && (readLoc == null || currentInterval.isBefore(readLoc)) ); + try { + do { + currentInterval = intervals.hasNext() ? intervals.next() : null; + } while ( currentInterval != null && (readLoc == null || currentInterval.isBefore(readLoc)) ); + } catch (StingException e) { + throw new StingException(e.getMessage() + " *** Are you sure that your interval file is sorted? If not, you must use the --targetIntervalsAreNotSorted argument. ***"); + } + // call back into map now that the state has been updated map(ref, read, metaDataTracker); diff --git a/java/src/org/broadinstitute/sting/gatk/walkers/sequenom/SequenomValidationConverter.java b/java/src/org/broadinstitute/sting/gatk/walkers/sequenom/SequenomValidationConverter.java index 0c7043a51..e075a695c 100644 --- a/java/src/org/broadinstitute/sting/gatk/walkers/sequenom/SequenomValidationConverter.java +++ b/java/src/org/broadinstitute/sting/gatk/walkers/sequenom/SequenomValidationConverter.java @@ -209,7 +209,7 @@ public class SequenomValidationConverter extends RodWalker { return new HashSet(toExclude); } - private final static String ID = "ID"; private boolean excludeComp(VariantContext vc) { - String id = vc != null && vc.hasAttribute(ID) ? vc.getAttributeAsString(ID) : null; + String id = vc != null && vc.hasAttribute(VariantContext.ID_KEY) ? vc.getAttributeAsString(VariantContext.ID_KEY) : null; boolean ex = rsIDsToExclude != null && id != null && rsIDsToExclude.contains(id); //System.out.printf("Testing id %s ex=%b against %s%n", id, ex, vc); return ex; diff --git a/java/src/org/broadinstitute/sting/oneoffprojects/walkers/MendelianViolationClassifier.java b/java/src/org/broadinstitute/sting/oneoffprojects/walkers/MendelianViolationClassifier.java index 67eff08a3..097cd5847 100644 --- a/java/src/org/broadinstitute/sting/oneoffprojects/walkers/MendelianViolationClassifier.java +++ b/java/src/org/broadinstitute/sting/oneoffprojects/walkers/MendelianViolationClassifier.java @@ -202,7 +202,7 @@ public class MendelianViolationClassifier extends LocusWalker { } - VariantContext filteredVC = new VariantContext("outputvcf", vc_input.getLocation(), vc_input.getAlleles(), genotypes, vc_input.getNegLog10PError(), vc_input.getFilters(), vc_input.getAttributes()); + VariantContext filteredVC = new VariantContext("outputvcf", vc_input.getLocation(), vc_input.getAlleles(), genotypes, vc_input.getNegLog10PError(), vc_input.filtersWereApplied() ? vc_input.getFilters() : null, vc_input.getAttributes()); Set altAlleles = filteredVC.getAlternateAlleles(); StringBuffer altAlleleCountString = new StringBuffer(); diff --git a/java/src/org/broadinstitute/sting/playground/gatk/walkers/SnpCallRateByCoverageWalker.java b/java/src/org/broadinstitute/sting/playground/gatk/walkers/SnpCallRateByCoverageWalker.java index 12f670d30..1cc230b8d 100755 --- a/java/src/org/broadinstitute/sting/playground/gatk/walkers/SnpCallRateByCoverageWalker.java +++ b/java/src/org/broadinstitute/sting/playground/gatk/walkers/SnpCallRateByCoverageWalker.java @@ -127,7 +127,7 @@ public class SnpCallRateByCoverageWalker extends LocusWalker, Strin out.printf("%s\t%s\t\t%d\t%f\t%d\t%c\t%s\t%s\t%d\t%d%n", context.getLocation(), - vc.hasAttribute("ID") ? vc.getAttribute("ID") : "?", + vc.hasAttribute(VariantContext.ID_KEY) ? vc.getAttribute(VariantContext.ID_KEY) : "?", coverage, ((float) coverage)/((float) reads.size()), goodIterations, diff --git a/java/src/org/broadinstitute/sting/playground/gatk/walkers/variantoptimizer/AnnotationDataManager.java b/java/src/org/broadinstitute/sting/playground/gatk/walkers/variantoptimizer/AnnotationDataManager.java index b7d8c214c..aeddcc116 100755 --- a/java/src/org/broadinstitute/sting/playground/gatk/walkers/variantoptimizer/AnnotationDataManager.java +++ b/java/src/org/broadinstitute/sting/playground/gatk/walkers/variantoptimizer/AnnotationDataManager.java @@ -84,7 +84,7 @@ public class AnnotationDataManager { treeSet.add(datum); } - final boolean isNovelVariant = infoField.containsKey("ID"); + final boolean isNovelVariant = infoField.containsKey(VariantContext.ID_KEY); // Decide if the variant is a transition or transversion if ( vc.isSNP() ) { diff --git a/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFWriter.java b/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFWriter.java index c7878e7ec..a68c3fd2e 100644 --- a/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFWriter.java +++ b/java/src/org/broadinstitute/sting/utils/genotype/vcf/VCFWriter.java @@ -153,7 +153,7 @@ public class VCFWriter { mWriter.write(VCFConstants.FIELD_SEPARATOR); // ID - String ID = vc.hasAttribute("ID") ? vc.getAttributeAsString("ID") : VCFConstants.EMPTY_ID_FIELD; + String ID = vc.hasAttribute(VariantContext.ID_KEY) ? vc.getAttributeAsString(VariantContext.ID_KEY) : VCFConstants.EMPTY_ID_FIELD; mWriter.write(ID); mWriter.write(VCFConstants.FIELD_SEPARATOR); @@ -186,11 +186,11 @@ public class VCFWriter { if ( !vc.hasNegLog10PError() ) mWriter.write(VCFConstants.MISSING_VALUE_v4); else - mWriter.write(String.format(VCFConstants.DOUBLE_PRECISION_FORMAT_STRING, vc.getPhredScaledQual())); + mWriter.write(getQualValue(vc.getPhredScaledQual())); mWriter.write(VCFConstants.FIELD_SEPARATOR); // FILTER - String filters = vc.isFiltered() ? Utils.join(";", Utils.sorted(vc.getFilters())) : (filtersWereAppliedToContext ? VCFConstants.PASSES_FILTERS_v4 : VCFConstants.UNFILTERED); + String filters = vc.isFiltered() ? Utils.join(";", Utils.sorted(vc.getFilters())) : (filtersWereAppliedToContext || vc.filtersWereApplied() ? VCFConstants.PASSES_FILTERS_v4 : VCFConstants.UNFILTERED); mWriter.write(filters); mWriter.write(VCFConstants.FIELD_SEPARATOR); @@ -198,7 +198,7 @@ public class VCFWriter { Map infoFields = new TreeMap(); for ( Map.Entry field : vc.getAttributes().entrySet() ) { String key = field.getKey(); - if ( key.equals("ID") || key.equals(VariantContext.REFERENCE_BASE_FOR_INDEL_KEY) ) + if ( key.equals(VariantContext.ID_KEY) || key.equals(VariantContext.REFERENCE_BASE_FOR_INDEL_KEY) ) continue; String outputValue = formatVCFField(field.getValue()); @@ -235,6 +235,13 @@ public class VCFWriter { } + private String getQualValue(double qual) { + String s = String.format(VCFConstants.DOUBLE_PRECISION_FORMAT_STRING, qual); + if ( s.endsWith(VCFConstants.DOUBLE_PRECISION_INT_SUFFIX) ) + s = s.substring(0, s.length() - VCFConstants.DOUBLE_PRECISION_INT_SUFFIX.length()); + return s; + } + private String makeAlleleString(Allele allele, boolean isIndel, byte ref) { String s = new String(allele.getBases()); if ( isIndel || s.length() == 0 ) // in case the context is monomorphic at an indel site @@ -322,14 +329,14 @@ public class VCFWriter { if ( MathUtils.compareDoubles(g.getNegLog10PError(), Genotype.NO_NEG_LOG_10PERROR) == 0 ) val = VCFConstants.MISSING_VALUE_v4; else { - val = String.format(VCFConstants.DOUBLE_PRECISION_FORMAT_STRING, Math.min(g.getPhredScaledQual(), VCFConstants.MAX_GENOTYPE_QUAL)); + val = getQualValue(Math.min(g.getPhredScaledQual(), VCFConstants.MAX_GENOTYPE_QUAL)); } } else if ( key.equals(VCFConstants.DEPTH_KEY) && val == null ) { ReadBackedPileup pileup = (ReadBackedPileup)g.getAttribute(CalledGenotype.READBACKEDPILEUP_ATTRIBUTE_KEY); if ( pileup != null ) val = pileup.size(); } else if ( key.equals(VCFConstants.GENOTYPE_FILTER_KEY) ) { - val = g.isFiltered() ? Utils.join(";", Utils.sorted(g.getFilters())) : VCFConstants.PASSES_FILTERS_v4; + val = g.isFiltered() ? Utils.join(";", Utils.sorted(g.getFilters())) : (g.filtersWereApplied() ? VCFConstants.PASSES_FILTERS_v4 : VCFConstants.UNFILTERED); } VCFFormatHeaderLine metaData = mHeader.getFormatHeaderLine(key); diff --git a/java/test/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextIntegrationTest.java b/java/test/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextIntegrationTest.java index 07661ab89..7d450b4e0 100755 --- a/java/test/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextIntegrationTest.java +++ b/java/test/org/broadinstitute/sting/gatk/contexts/variantcontext/VariantContextIntegrationTest.java @@ -48,7 +48,7 @@ public class VariantContextIntegrationTest extends WalkerTest { WalkerTestSpec spec = new WalkerTestSpec( cmdRoot + " -B vcf,VCF," + validationDataLocation + "yri.trio.gatk_glftrio.intersection.annotated.filtered.chr1.500.vcf -L 1:1-1000000 -o %s --outputVCF %s", 2, // just one output file - Arrays.asList("e3c35d0c4b5d4935c84a270f9df0951f", "127941314940d82da4d6f2eb8df43a92")); + Arrays.asList("e3c35d0c4b5d4935c84a270f9df0951f", "f4db5f7346792b1155693722bc190f63")); executeTest("testToVCF", spec); } diff --git a/java/test/org/broadinstitute/sting/gatk/walkers/VariantsToVCFIntegrationTest.java b/java/test/org/broadinstitute/sting/gatk/walkers/VariantsToVCFIntegrationTest.java index 8eabe0d6d..1ff248f1f 100755 --- a/java/test/org/broadinstitute/sting/gatk/walkers/VariantsToVCFIntegrationTest.java +++ b/java/test/org/broadinstitute/sting/gatk/walkers/VariantsToVCFIntegrationTest.java @@ -20,7 +20,7 @@ public class VariantsToVCFIntegrationTest extends WalkerTest { @Test public void testVariantsToVCFUsingGeliInput() { List md5 = new ArrayList(); - md5.add("519593d09da03e6503a863dce439151b"); + md5.add("b4f98bee580508637c88c421064936fc"); WalkerTest.WalkerTestSpec spec = new WalkerTest.WalkerTestSpec( "-R " + oneKGLocation + "reference/human_b36_both.fasta" + @@ -37,7 +37,7 @@ public class VariantsToVCFIntegrationTest extends WalkerTest { @Test public void testGenotypesToVCFUsingGeliInput() { List md5 = new ArrayList(); - md5.add("4541686d38eced70b8fb6647551d2329"); + md5.add("0f310612c8609cba3dcf9cc97b2c1195"); WalkerTest.WalkerTestSpec spec = new WalkerTest.WalkerTestSpec( "-R " + oneKGLocation + "reference/human_b36_both.fasta" + @@ -70,7 +70,7 @@ public class VariantsToVCFIntegrationTest extends WalkerTest { @Test public void testGenotypesToVCFUsingVCFInput() { List md5 = new ArrayList(); - md5.add("919eb499bfcc980a14825a0265e575e3"); + md5.add("19371e6cfea5f29fb75d5a2be7fccd34"); WalkerTest.WalkerTestSpec spec = new WalkerTest.WalkerTestSpec( "-R " + oneKGLocation + "reference/human_b36_both.fasta" + diff --git a/java/test/org/broadinstitute/sting/gatk/walkers/annotator/VariantAnnotatorIntegrationTest.java b/java/test/org/broadinstitute/sting/gatk/walkers/annotator/VariantAnnotatorIntegrationTest.java index 3be719f38..a5330df18 100755 --- a/java/test/org/broadinstitute/sting/gatk/walkers/annotator/VariantAnnotatorIntegrationTest.java +++ b/java/test/org/broadinstitute/sting/gatk/walkers/annotator/VariantAnnotatorIntegrationTest.java @@ -15,7 +15,7 @@ public class VariantAnnotatorIntegrationTest extends WalkerTest { public void testHasAnnotsNotAsking1() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -B variant,VCF," + validationDataLocation + "vcfexample2.vcf -I " + validationDataLocation + "low_coverage_CEU.chr1.10k-11k.bam -L 1:10,020,000-10,021,000", 1, - Arrays.asList("8c3db7d5ea580242dda3e9ab1054c150")); + Arrays.asList("989ff3afb1384b3c6c8a284b11ebb228")); executeTest("test file has annotations, not asking for annotations, #1", spec); } @@ -23,7 +23,7 @@ public class VariantAnnotatorIntegrationTest extends WalkerTest { public void testHasAnnotsNotAsking2() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -B variant,VCF," + validationDataLocation + "vcfexample3.vcf -I " + validationDataLocation + "NA12878.1kg.p2.chr1_10mb_11_mb.SLX.bam -L 1:10,000,000-10,050,000", 1, - Arrays.asList("a7a342c880c81c289d903728080e3e01")); + Arrays.asList("5c58506847ddf85bfe75c3cf3babb669")); executeTest("test file has annotations, not asking for annotations, #2", spec); } @@ -31,7 +31,7 @@ public class VariantAnnotatorIntegrationTest extends WalkerTest { public void testHasAnnotsAsking1() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -G \"Standard\" -B variant,VCF," + validationDataLocation + "vcfexample2.vcf -I " + validationDataLocation + "low_coverage_CEU.chr1.10k-11k.bam -L 1:10,020,000-10,021,000", 1, - Arrays.asList("da9fa5c1b2a141286890d5364d87cd4b")); + Arrays.asList("184fc1f99dfba3e2519d16458d728fcc")); executeTest("test file has annotations, asking for annotations, #1", spec); } @@ -39,7 +39,7 @@ public class VariantAnnotatorIntegrationTest extends WalkerTest { public void testHasAnnotsAsking2() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -G \"Standard\" -B variant,VCF," + validationDataLocation + "vcfexample3.vcf -I " + validationDataLocation + "NA12878.1kg.p2.chr1_10mb_11_mb.SLX.bam -L 1:10,000,000-10,050,000", 1, - Arrays.asList("513984b5528fde2a835883a6e3d6d2db")); + Arrays.asList("12a069d5f1c9cd3970ea6301397219aa")); executeTest("test file has annotations, asking for annotations, #2", spec); } @@ -47,7 +47,7 @@ public class VariantAnnotatorIntegrationTest extends WalkerTest { public void testNoAnnotsNotAsking1() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -B variant,VCF," + validationDataLocation + "vcfexample2empty.vcf -I " + validationDataLocation + "low_coverage_CEU.chr1.10k-11k.bam -L 1:10,020,000-10,021,000", 1, - Arrays.asList("2cedac7d2804621107e80a74ac9d01b0")); + Arrays.asList("3712b2901bece15094c1eb468dfdc5a8")); executeTest("test file doesn't have annotations, not asking for annotations, #1", spec); } @@ -55,7 +55,7 @@ public class VariantAnnotatorIntegrationTest extends WalkerTest { public void testNoAnnotsNotAsking2() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -B variant,VCF," + validationDataLocation + "vcfexample3empty.vcf -I " + validationDataLocation + "NA12878.1kg.p2.chr1_10mb_11_mb.SLX.bam -L 1:10,000,000-10,050,000", 1, - Arrays.asList("08138975e9c32463e358b86888a84c5e")); + Arrays.asList("b7b0e9f3f4f25fd41f388a736dd7b3b8")); executeTest("test file doesn't have annotations, not asking for annotations, #2", spec); } @@ -63,7 +63,7 @@ public class VariantAnnotatorIntegrationTest extends WalkerTest { public void testNoAnnotsAsking1() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -G \"Standard\" -B variant,VCF," + validationDataLocation + "vcfexample2empty.vcf -I " + validationDataLocation + "low_coverage_CEU.chr1.10k-11k.bam -L 1:10,020,000-10,021,000", 1, - Arrays.asList("e2f4031fc005d96af59963bc9833ff76")); + Arrays.asList("8f42df642b329ff19bc2c39470117280")); executeTest("test file doesn't have annotations, asking for annotations, #1", spec); } @@ -71,7 +71,7 @@ public class VariantAnnotatorIntegrationTest extends WalkerTest { public void testNoAnnotsAsking2() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -G \"Standard\" -B variant,VCF," + validationDataLocation + "vcfexample3empty.vcf -I " + validationDataLocation + "NA12878.1kg.p2.chr1_10mb_11_mb.SLX.bam -L 1:10,000,000-10,050,000", 1, - Arrays.asList("63c99a5e99974793850de225e3410ea6")); + Arrays.asList("908aa4b6ac65bee57f91bc6fed4d46ad")); executeTest("test file doesn't have annotations, asking for annotations, #2", spec); } @@ -79,7 +79,7 @@ public class VariantAnnotatorIntegrationTest extends WalkerTest { public void testNoReads() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -G \"Standard\" -B variant,VCF," + validationDataLocation + "vcfexample3empty.vcf -BTI variant", 1, - Arrays.asList("461e2273b26c9e9c675d1fb8a24df121")); + Arrays.asList("24234da54855c892625008fb134e3a88")); executeTest("not passing it any reads", spec); } @@ -87,7 +87,7 @@ public class VariantAnnotatorIntegrationTest extends WalkerTest { public void testDBTag() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -D " + GATKDataLocation + "dbsnp_129_b36.rod -G \"Standard\" -B variant,VCF," + validationDataLocation + "vcfexample3empty.vcf -BTI variant", 1, - Arrays.asList("caa2b55ca2f256dce4b76bad41c29ec5")); + Arrays.asList("24d9649943be876e78f76bbf9ff5b501")); executeTest("getting DB tag", spec); } } diff --git a/java/test/org/broadinstitute/sting/gatk/walkers/filters/VariantFiltrationIntegrationTest.java b/java/test/org/broadinstitute/sting/gatk/walkers/filters/VariantFiltrationIntegrationTest.java index c9ce395cc..8c9ba85f3 100755 --- a/java/test/org/broadinstitute/sting/gatk/walkers/filters/VariantFiltrationIntegrationTest.java +++ b/java/test/org/broadinstitute/sting/gatk/walkers/filters/VariantFiltrationIntegrationTest.java @@ -16,7 +16,7 @@ public class VariantFiltrationIntegrationTest extends WalkerTest { public void testNoAction() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -B variant,VCF," + validationDataLocation + "vcfexample2.vcf -L 1:10,020,000-10,021,000", 1, - Arrays.asList("e0543c72ed36f4c0c43d791ad44aa96a")); + Arrays.asList("2cac82e304185cfceea5816f89f64773")); executeTest("test no action", spec); } @@ -24,7 +24,7 @@ public class VariantFiltrationIntegrationTest extends WalkerTest { public void testClusteredSnps() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -window 10 -B variant,VCF," + validationDataLocation + "vcfexample2.vcf -L 1:10,020,000-10,021,000", 1, - Arrays.asList("2385975931cd06fca452655bebf5c379")); + Arrays.asList("5ae28a70de7a778c50749a60b69724ee")); executeTest("test clustered SNPs", spec); } @@ -32,7 +32,7 @@ public class VariantFiltrationIntegrationTest extends WalkerTest { public void testMask() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -mask foo -B mask,VCF," + validationDataLocation + "vcfexample2.vcf -B variant,VCF," + validationDataLocation + "vcfexample2.vcf -L 1:10,020,000-10,021,000", 1, - Arrays.asList("6743efa09985206819adcf8eaf5ff936")); + Arrays.asList("0404f10b3c928ee1ea240ccea6ee3cd1")); executeTest("test mask", spec); } @@ -40,7 +40,7 @@ public class VariantFiltrationIntegrationTest extends WalkerTest { public void testFilter1() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -filter 'DoC < 20 || FisherStrand > 20.0' -filterName foo -B variant,VCF," + validationDataLocation + "vcfexample2.vcf -L 1:10,020,000-10,021,000", 1, - Arrays.asList("e054f57d3794ce8a57cae92f16886cf0")); + Arrays.asList("fa110840f477b238c0b30ed4fae5ab72")); executeTest("test filter #1", spec); } @@ -48,7 +48,7 @@ public class VariantFiltrationIntegrationTest extends WalkerTest { public void testFilter2() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -filter 'AlleleBalance < 70.0 && FisherStrand == 1.4' -filterName bar -B variant,VCF," + validationDataLocation + "vcfexample2.vcf -L 1:10,020,000-10,021,000", 1, - Arrays.asList("db09a1f7ff523087ea0f6a56f3febfe7")); + Arrays.asList("9a30dd4c67ddbfadc9e153e0345b46d4")); executeTest("test filter #2", spec); } @@ -56,7 +56,7 @@ public class VariantFiltrationIntegrationTest extends WalkerTest { public void testFilterWithSeparateNames() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " --filterName ABF -filter 'AlleleBalance < 70.0' --filterName FSF -filter 'FisherStrand == 1.4' -B variant,VCF," + validationDataLocation + "vcfexample2.vcf -L 1:10,020,000-10,021,000", 1, - Arrays.asList("edbd505d8d55b4ba71f99d7006871db0")); + Arrays.asList("7052fca252754e7a92ddb1f27123c7c8")); executeTest("test filter with separate names #2", spec); } @@ -64,7 +64,7 @@ public class VariantFiltrationIntegrationTest extends WalkerTest { public void testGenotypeFilter1() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -G_filter 'GQ == 0.60' -G_filterName foo -B variant,VCF," + validationDataLocation + "vcfexample2.vcf -L 1:10,020,000-10,021,000", 1, - Arrays.asList("391cd1c96546d1760265f7924428af8f")); + Arrays.asList("e22ecae2f992fb9d5a91c286f9ac3e40")); executeTest("test genotype filter #1", spec); } @@ -72,7 +72,7 @@ public class VariantFiltrationIntegrationTest extends WalkerTest { public void testGenotypeFilter2() { WalkerTestSpec spec = new WalkerTestSpec( baseTestString() + " -G_filter 'AF == 0.04 && isHomVar == 1' -G_filterName foo -B variant,VCF," + validationDataLocation + "vcfexample2.vcf -L 1:10,020,000-10,021,000", 1, - Arrays.asList("0eb48f8cb2ad6a0e46c88a5116be2b04")); + Arrays.asList("b7e7e7abbf5b03d773f82cced33497a4")); executeTest("test genotype filter #2", spec); } } \ No newline at end of file diff --git a/java/test/org/broadinstitute/sting/gatk/walkers/genotyper/UnifiedGenotyperIntegrationTest.java b/java/test/org/broadinstitute/sting/gatk/walkers/genotyper/UnifiedGenotyperIntegrationTest.java index 9b1074146..18de01950 100755 --- a/java/test/org/broadinstitute/sting/gatk/walkers/genotyper/UnifiedGenotyperIntegrationTest.java +++ b/java/test/org/broadinstitute/sting/gatk/walkers/genotyper/UnifiedGenotyperIntegrationTest.java @@ -35,7 +35,7 @@ public class UnifiedGenotyperIntegrationTest extends WalkerTest { public void testMultiSamplePilot1Joint() { WalkerTest.WalkerTestSpec spec = new WalkerTest.WalkerTestSpec( "-T UnifiedGenotyper -R " + oneKGLocation + "reference/human_b36_both.fasta -I " + validationDataLocation + "low_coverage_CEU.chr1.10k-11k.bam -varout %s -L 1:10,022,000-10,025,000", 1, - Arrays.asList("2078bb6eac35f50c346faa0b9c531539")); + Arrays.asList("3a402233264e21a84d421e3a4ea64768")); executeTest("testMultiSamplePilot1 - Joint Estimate", spec); } @@ -43,7 +43,7 @@ public class UnifiedGenotyperIntegrationTest extends WalkerTest { public void testMultiSamplePilot2Joint() { WalkerTest.WalkerTestSpec spec = new WalkerTest.WalkerTestSpec( "-T UnifiedGenotyper -R " + oneKGLocation + "reference/human_b36_both.fasta -I " + validationDataLocation + "pilot2_daughters.chr20.10k-11k.bam -varout %s -L 20:10,000,000-10,050,000", 1, - Arrays.asList("b72f222af1bb7212645822d196ebfc70")); + Arrays.asList("79736b3e955a16b30f827b2786fc08b1")); executeTest("testMultiSamplePilot2 - Joint Estimate", spec); } @@ -51,7 +51,7 @@ public class UnifiedGenotyperIntegrationTest extends WalkerTest { public void testSingleSamplePilot2Joint() { WalkerTest.WalkerTestSpec spec = new WalkerTest.WalkerTestSpec( "-T UnifiedGenotyper -R " + oneKGLocation + "reference/human_b36_both.fasta -I " + validationDataLocation + "NA12878.1kg.p2.chr1_10mb_11_mb.SLX.bam -varout %s -L 1:10,000,000-10,100,000", 1, - Arrays.asList("419751fd5f2797db30d8b4442a72613d")); + Arrays.asList("b8d93c6fcb4b17d454cdcbfc4b43f076")); executeTest("testSingleSamplePilot2 - Joint Estimate", spec); } @@ -63,7 +63,7 @@ public class UnifiedGenotyperIntegrationTest extends WalkerTest { @Test public void testParallelization() { - String md5 = "fc5798b2ef700e60fa032951bab9607d"; + String md5 = "098802639cfab1b777c96d38376f118a"; WalkerTest.WalkerTestSpec spec1 = new WalkerTest.WalkerTestSpec( "-T UnifiedGenotyper -R " + oneKGLocation + "reference/human_b36_both.fasta -I " + validationDataLocation + "NA12878.1kg.p2.chr1_10mb_11_mb.SLX.bam -varout %s -L 1:10,000,000-10,075,000", 1, @@ -90,11 +90,11 @@ public class UnifiedGenotyperIntegrationTest extends WalkerTest { @Test public void testParameter() { HashMap e = new HashMap(); - e.put( "-genotype", "acae0a31c1f6688bad2fc7f12d66cbc7" ); - e.put( "-all_bases", "45b50b072385dcbf49bb01299f208d38" ); + e.put( "-genotype", "b87f28a772eb75c8dad9062c6d039da5" ); + e.put( "-all_bases", "ec9de2044cd5f5901d6879b56f12993a" ); e.put( "--min_base_quality_score 26", "875c64a64fd402626e04c9540388c483" ); - e.put( "--min_mapping_quality_score 26", "e1eff3777c392421eea8818c96032206" ); - e.put( "--max_mismatches_in_40bp_window 5", "8b4239123bd86ccff388472e7909e186" ); + e.put( "--min_mapping_quality_score 26", "de7d90e425f8f08f219dc91a25d60c68" ); + e.put( "--max_mismatches_in_40bp_window 5", "758e312b2a2e7c4d83f60174d43fac8a" ); for ( Map.Entry entry : e.entrySet() ) { WalkerTest.WalkerTestSpec spec = new WalkerTest.WalkerTestSpec( @@ -108,12 +108,12 @@ public class UnifiedGenotyperIntegrationTest extends WalkerTest { public void testConfidence() { WalkerTest.WalkerTestSpec spec1 = new WalkerTest.WalkerTestSpec( "-T UnifiedGenotyper -R " + oneKGLocation + "reference/human_b36_both.fasta -I " + validationDataLocation + "NA12878.1kg.p2.chr1_10mb_11_mb.SLX.bam -varout %s -L 1:10,000,000-10,010,000 -stand_call_conf 10 ", 1, - Arrays.asList("6388be650932750426b84c973a3fc04d")); + Arrays.asList("4937bab94b0bae1aa61cdf3a06cb49e8")); executeTest("testConfidence1", spec1); WalkerTest.WalkerTestSpec spec2 = new WalkerTest.WalkerTestSpec( "-T UnifiedGenotyper -R " + oneKGLocation + "reference/human_b36_both.fasta -I " + validationDataLocation + "NA12878.1kg.p2.chr1_10mb_11_mb.SLX.bam -varout %s -L 1:10,000,000-10,010,000 -stand_emit_conf 10 ", 1, - Arrays.asList("e3f402fbbb6bbb4f60b1aa0549989d85")); + Arrays.asList("f8b722dad5c4868a4bba246eef83f96d")); executeTest("testConfidence2", spec2); } diff --git a/java/test/org/broadinstitute/sting/gatk/walkers/varianteval/VariantEvalIntegrationTest.java b/java/test/org/broadinstitute/sting/gatk/walkers/varianteval/VariantEvalIntegrationTest.java index c82aa13ac..903efe35b 100755 --- a/java/test/org/broadinstitute/sting/gatk/walkers/varianteval/VariantEvalIntegrationTest.java +++ b/java/test/org/broadinstitute/sting/gatk/walkers/varianteval/VariantEvalIntegrationTest.java @@ -118,7 +118,7 @@ public class for (String tests : testsEnumerations) { WalkerTestSpec spec = new WalkerTestSpec(tests + " " + extraArgs + " -o %s -outputVCF %s", 2, - Arrays.asList("483f821ce96f4cf571e9bba356c9f325", "d94328f4a5f7c40e95edf2ef13f38ae0")); + Arrays.asList("483f821ce96f4cf571e9bba356c9f325", "989bc30dea6c8a4cf771cd1b9fdab488")); executeTest("testVEWriteVCF", spec); } } diff --git a/java/test/org/broadinstitute/sting/gatk/walkers/variantrecalibration/VariantRecalibrationWalkersIntegrationTest.java b/java/test/org/broadinstitute/sting/gatk/walkers/variantrecalibration/VariantRecalibrationWalkersIntegrationTest.java index 65f70f7b8..cc08accbe 100755 --- a/java/test/org/broadinstitute/sting/gatk/walkers/variantrecalibration/VariantRecalibrationWalkersIntegrationTest.java +++ b/java/test/org/broadinstitute/sting/gatk/walkers/variantrecalibration/VariantRecalibrationWalkersIntegrationTest.java @@ -37,7 +37,7 @@ public class VariantRecalibrationWalkersIntegrationTest extends WalkerTest { @Test public void testVariantRecalibrator() { HashMap e = new HashMap(); - e.put( validationDataLocation + "yri.trio.gatk_glftrio.intersection.annotated.filtered.chr1.vcf", "a1acb90f0695cbe33c290403113ac3e1" ); + e.put( validationDataLocation + "yri.trio.gatk_glftrio.intersection.annotated.filtered.chr1.vcf", "0cb94385ced8a7a537d7bc79f82c01d3" ); for ( Map.Entry entry : e.entrySet() ) { String vcf = entry.getKey(); diff --git a/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/CombineVariantsIntegrationTest.java b/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/CombineVariantsIntegrationTest.java index 56584012e..8d92b9775 100755 --- a/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/CombineVariantsIntegrationTest.java +++ b/java/test/org/broadinstitute/sting/gatk/walkers/variantutils/CombineVariantsIntegrationTest.java @@ -62,7 +62,7 @@ public class CombineVariantsIntegrationTest extends WalkerTest { @Test public void test1Indel1() { test1InOut("CEU.dindel.vcf4.trio.2010_06.indel.genotypes.vcf", ""); } @Test public void test1Indel2() { test1InOut("CEU.dindel.vcf4.low_coverage.2010_06.indel.genotypes.vcf", ""); } - @Test public void combineTrioCalls() { combine2("CEU.trio.2010_03.genotypes.vcf.gz", "YRI.trio.2010_03.genotypes.vcf.gz", "2ec9e7acff0c36c2b51b2b720944bcde"); } // official project VCF files in tabix format + @Test public void combineTrioCalls() { combine2("CEU.trio.2010_03.genotypes.vcf.gz", "YRI.trio.2010_03.genotypes.vcf.gz", "02f292cde282ab8b0c69459335abb74f"); } // official project VCF files in tabix format @Test public void combineSNPsAndIndels() { combine2("CEU.trio.2010_03.genotypes.vcf.gz", "CEU.dindel.vcf4.low_coverage.2010_06.indel.genotypes.vcf", ""); } @Test public void combine2Indels() { combine2("CEU.dindel.vcf4.trio.2010_06.indel.genotypes.vcf", "CEU.dindel.vcf4.low_coverage.2010_06.indel.genotypes.vcf", ""); } diff --git a/java/test/org/broadinstitute/sting/playground/gatk/walkers/annotator/GenomicAnnotatorIntegrationTest.java b/java/test/org/broadinstitute/sting/playground/gatk/walkers/annotator/GenomicAnnotatorIntegrationTest.java index ac4abaec1..e3de2ddfc 100755 --- a/java/test/org/broadinstitute/sting/playground/gatk/walkers/annotator/GenomicAnnotatorIntegrationTest.java +++ b/java/test/org/broadinstitute/sting/playground/gatk/walkers/annotator/GenomicAnnotatorIntegrationTest.java @@ -26,7 +26,7 @@ public class GenomicAnnotatorIntegrationTest extends WalkerTest { */ - String[] md5WithDashSArg = {"454609ac18f149b0175ad99b0ea2d09e"}; + String[] md5WithDashSArg = {"94edacdaee0dd58508d35d4d6040e31b"}; WalkerTestSpec specWithSArg = new WalkerTestSpec( "-T GenomicAnnotator -R " + oneKGLocation + "reference/human_b36_both.fasta " + "-B variant,vcf,/humgen/gsa-hpprojects/GATK/data/Annotations/examples/CEU_hapmap_nogt_23_subset.vcf " +