From 9e87861bfdbd009d3b54d6b47bff0b6c30202f0e Mon Sep 17 00:00:00 2001 From: Redmar van den Berg <RedmarvandenBerg@lumc.nl> Date: Thu, 24 Oct 2019 09:12:26 +0200 Subject: [PATCH] Add check for phased calls Since it is not clear how we should handle phased calls, we check if the variants are phased and error out if this is the case. --- tests/cases/dummy_phased_blank.vcf.gz | Bin 0 -> 6985 bytes tests/cases/dummy_phased_blank.vcf.gz.tbi | Bin 0 -> 172 bytes tests/test_evaluate.py | 24 ++++++++++++++++++++++ vtools/evaluate.py | 4 ++++ 4 files changed, 28 insertions(+) create mode 100644 tests/cases/dummy_phased_blank.vcf.gz create mode 100644 tests/cases/dummy_phased_blank.vcf.gz.tbi diff --git a/tests/cases/dummy_phased_blank.vcf.gz b/tests/cases/dummy_phased_blank.vcf.gz new file mode 100644 index 0000000000000000000000000000000000000000..22772c816c36e81870a0a72d8862064c60c2a056 GIT binary patch literal 6985 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 b000000RIL6LPG)o8vp|U0000000000TRD5l literal 0 HcmV?d00001 diff --git a/tests/cases/dummy_phased_blank.vcf.gz.tbi b/tests/cases/dummy_phased_blank.vcf.gz.tbi new file mode 100644 index 0000000000000000000000000000000000000000..3e846195d35e95a729b46de1b2f0a5a3429bed8e GIT binary patch literal 172 zcmb2|=3rp}f&Xj_PR>jW{S0qU+wwIz2(Vp<<l<hh(AgSstANFN#m>gwR#EqldiT!9 zHVW)yIQx6j%;{&&7rYPZ>d?BLbTakZgx4QsZhzZedG+$u=T_?<muc;-_n&|Jr{%xP kGS{Uisd(Z>C-=sDVvUkw-7_nYfk7V4J<<%!VCR7d03oJ9Pyhe` literal 0 HcmV?d00001 diff --git a/tests/test_evaluate.py b/tests/test_evaluate.py index dbb3cb5..ec17739 100644 --- a/tests/test_evaluate.py +++ b/tests/test_evaluate.py @@ -133,3 +133,27 @@ def test_truncated_positive_no_call(NA12878_positive_truncated): """ Variants which are missing from the positive vcf do not count towards alleles_no_call """ assert NA12878_positive_truncated['alleles_no_call'] == 0 + + +def test_phased_positive(): + """ Test error message when the positive vcf contains phased variants """ + filename = 'tests/cases/gatk.vcf.gz' + phased = 'tests/cases/dummy_phased_blank.vcf.gz' + call = VCF(filename, gts012=True) + phased = VCF(phased, gts012=True) + with pytest.raises(NotImplementedError, + match='Phased variants are not supported'): + site_concordancy(call, phased, call_samples=['NA12878'], + positive_samples=['BLANK']) + + +def test_phased_call(): + """ Test error message when the call vcf contains phased variants """ + filename = 'tests/cases/gatk.vcf.gz' + phased = 'tests/cases/dummy_phased_blank.vcf.gz' + call = VCF(phased, gts012=True) + positive = VCF(filename, gts012=True) + with pytest.raises(NotImplementedError, + match='Phased variants are not supported'): + site_concordancy(call, positive, call_samples=['BLANK'], + positive_samples=['NA12878']) diff --git a/vtools/evaluate.py b/vtools/evaluate.py index 652dd33..ea276ca 100644 --- a/vtools/evaluate.py +++ b/vtools/evaluate.py @@ -165,6 +165,10 @@ def site_concordancy(call_vcf: VCF, pos = pos_record.genotypes[p_s] cal = call_record.genotypes[c_s] + # If the genotypes are phased + if pos[2] or cal[2]: + raise NotImplementedError('Phased variants are not supported') + # Parse the genotypes and add the results into d parse_variants(pos, cal, d) -- GitLab