more work on seq_span
[mussa.git] / alg / test / test_seq_span.cpp
index 49558677cff21f2270a54e62a1cabe4df565c644..c71382ece05f53f13aa98f76a43f49e9d494780b 100644 (file)
@@ -107,6 +107,25 @@ BOOST_AUTO_TEST_CASE( seqspan_equality )
   BOOST_CHECK_EQUAL(SeqSpan::isFamily(*span2, *span3), false);
 }
 
+BOOST_AUTO_TEST_CASE( seqspan_parents )
+{
+  std::string str1("AAGGCCTT");
+  std::string str2("AACCGGTT");
+  SeqSpanRef s1(new SeqSpan(str1));
+  SeqSpanRef s1_1 = s1->subseq(2,4);
+  SeqSpanRef s2(new SeqSpan(str2));
+  SeqSpanRef s2_1 = s2->subseq(0,2);
+
+  BOOST_CHECK_EQUAL(s1, s1_1->parent());
+  BOOST_CHECK_EQUAL(s2, s2_1->parent());
+  BOOST_CHECK(s1 != s2_1->parent());
+  BOOST_CHECK(s2 != s1_1->parent());
+
+  SeqSpanRef s2_copy = s2;
+
+  BOOST_CHECK_EQUAL(s2_copy, s2_1->parent());
+}
+
 BOOST_AUTO_TEST_CASE( seqspan_find_first_not_of )
 {
   std::string str1("AAAAT");
@@ -417,4 +436,5 @@ BOOST_AUTO_TEST_CASE( seqspan_strand_plusminus )
   BOOST_CHECK_EQUAL(seq2->sequence(), "AAAA");
   SeqSpanRef seq3 = seq1->subseq(0,4,SeqSpan::MinusStrand); 
   BOOST_CHECK_EQUAL(seq3->sequence(), "TTTT");
-}
\ No newline at end of file
+}
+