+
+ void testAnnotationsInTwoBrowsers()
+ {
+ // Make sure that our annotations parent is pointing to the
+ // most right seqspan parent
+ boost::shared_ptr<AnnotationColors> cm(new AnnotationColors);
+ std::vector<SequenceRef> seqs;
+ SequenceRef seq0(new Sequence("AAAAGGGG"));
+ seq0->add_annotation("A","A", 0, 4);
+ seqs.push_back(seq0);
+ SequenceRef seq1(new Sequence("GGGGTTTT"));
+ seqs.push_back(seq1);
+
+ QVERIFY(seq0->annotations().size() == 1);
+ QVERIFY(seq0->seqspan() == seq0->annotations().front()->parent() );
+
+ boost::shared_ptr<QDir> d(new QDir("."));
+ SequenceBrowserWidget *b1 = new SequenceBrowserWidget(d);
+ b1->setSequences(seqs, cm );
+ QVERIFY( b1->sequences().size() == 2);
+ QVERIFY( b1->sequences()[0]->annotations().size() == 1 );
+ QVERIFY( b1->sequences()[0]->seqspan() ==
+ b1->sequences()[0]->annotations().front()->parent() );
+
+ SequenceBrowserWidget *b2 = new SequenceBrowserWidget(d);
+ b2->setSequences(seqs, cm);
+
+ QVERIFY( b2->sequences()[0]->annotations().size() == 1 );
+ QVERIFY( b2->sequences()[0]->seqspan() ==
+ b2->sequences()[0]->annotations().front()->parent() );
+ }