From d094cf4d4a398f9e270c6eed43c13bd177a21204 Mon Sep 17 00:00:00 2001
From: Martijn Vermaat <martijn@vermaat.name>
Date: Wed, 23 Nov 2011 14:44:24 +0000
Subject: [PATCH] Fix reverse complement of number parameter in position
 converter

git-svn-id: https://humgenprojects.lumc.nl/svn/mutalyzer/trunk@420 eb6bd6ab-9ccd-42b9-aceb-e2899b4a52f1
---
 mutalyzer/mapping.py  | 10 ++++++++--
 tests/test_mapping.py | 10 ++++++++++
 2 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/mutalyzer/mapping.py b/mutalyzer/mapping.py
index 584541f5..d772f4b2 100644
--- a/mutalyzer/mapping.py
+++ b/mutalyzer/mapping.py
@@ -581,8 +581,14 @@ class Converter(object) :
 
         if revc :
             # todo: if var.Arg1 is unicode, this crashes
-            arg1 = reverse_complement(var.Arg1 or "") #imported from Bio.Seq
-            arg2 = reverse_complement(var.Arg2 or "")
+            try:
+                arg1 = str(int(var.Arg1))
+            except ValueError:
+                arg1 = reverse_complement(var.Arg1 or "")
+            try:
+                arg2 = str(int(var.Arg2))
+            except ValueError:
+                arg2 = reverse_complement(var.Arg2 or "")
         #if
         else :
             arg1 = var.Arg1
diff --git a/tests/test_mapping.py b/tests/test_mapping.py
index 5c7b38c6..3180d521 100644
--- a/tests/test_mapping.py
+++ b/tests/test_mapping.py
@@ -50,3 +50,13 @@ class TestConverter():
         assert_equal(genomic, 'NC_000006.11:g.32006291C>T')
         coding = converter.chrom2c(genomic, 'list')
         assert 'NM_000500.5:c.92C>T' in coding
+
+    def test_converter_del_length_reverse(self):
+        """
+        Position converter on deletion (denoted by length) on transcripts
+        located on the reverse strand.
+        """
+        converter = self._converter('hg19')
+        coding = converter.chrom2c('NC_000022.10:g.51016285_51017117del123456789', 'list')
+        assert 'NM_001145134.1:c.-138-u21_60del123456789' in coding
+        assert 'NR_021492.1:c.1-u5170_1-u4338del123456789' in coding
-- 
GitLab