more work on seq_span
[mussa.git] / py / test / TestSeqSpan.py
index 09747dec3fd3c0bc89041ffac8dee0c112667fa3..de1082402fe655f8624337ce4ae16926f6b67fe4 100644 (file)
@@ -21,6 +21,27 @@ class TestSeqSpan(unittest.TestCase):
     self.failUnlessEqual(len(seq_text), len(s))
     self.failUnlessEqual(seq_text, new_seq_text)
 
+  def testSettingStrand(self):
+    seq_text = "AAAAG"
+    complement_text = "CTTTT"
+    splus = mussa.SeqSpan(seq_text, mussa.alphabet.dna_alphabet, mussa.strand.plus)
+    sminus = splus.subseq(0, len(seq_text), mussa.strand.minus)
+    self.failUnlessEqual(str(sminus), complement_text)
+
+  # Doesn't work because I keep getting new python objects created
+  # for calls to SeqSpan::parent
+  #def testParentEquality(self):
+  #  seq_text = "AAAAAAGGG"
+  #  sparent = mussa.SeqSpan(seq_text)
+  #  s1 = sparent.subseq(4,4, mussa.strand.minus)
+  #y  s2 = s1.subseq(0,2, mussa.strand.opposite)
+  #  print "s2 parent call 1",s2.parent()
+  #  print "s2 parent call 2", s2.parent()
+  #  self.failUnless(s1 is s2.parent())
+  #  self.failUnlessEqual(s1, s2.parent())
+  #  self.failUnless(sparent is s1.parent())
+  #  self.failUnlessEqual(sparent == s1.parent())
+
 
 def suite():
   return unittest.makeSuite(TestSeqSpan, 'test')