def test_conversion(self): fn = self.fn g = GenomeNode.create_from_ptr(fn.gn, True) self.assertEqual((100, 500), g.range) f2 = FeatureNode.create_from_ptr(g.gn, True) self.assertEqual((100, 500), f2.range)
def setUp(self): self.fn = FeatureNode.create_new("foo", "gene", 100, 10000, "+") self.cn = CommentNode.create_new("comment") self.rn = RegionNode.create_new("foo", 100, 2000) self.sn = SequenceNode.create_new("foo", "AGATATAGA") self.tv = TestVisitor() self.etv = ErrorTestVisitor()
def setUp(self): self.fn = FeatureNode.create_new("foo", "gene", 100, 10000, "+") self.cn = CommentNode.create_new("comment") self.rn = RegionNode.create_new("foo", 100, 2000) self.sn = SequenceNode.create_new("foo", "AGATATAGA") self.en = EOFNode.create_new() self.mn = MetaNode.create_new("foo", "bar") self.tv = TestVisitor() self.etv = ErrorTestVisitor()
def test_iterator(self): fn = self.fn fn3 = FeatureNode.create_new("test", "type3", 250, 300, "+") fn4 = FeatureNode.create_new("test", "type4", 250, 300, "+") fn.add_child(fn3) fn.add_child(fn4) # try object as iterator types = [] for i, f in enumerate(fn): types.append(f.type) self.assertEqual(types, ["type", "type2", "type3", "type4"], types) self.assert_(i == 3, i) # try iterator method types = [] for i, f in enumerate(fn.traverse_dfs()): types.append(f.type) self.assertEqual(types, ["type", "type2", "type3", "type4"], types) self.assert_(i == 3, i) # try callable object as iterator types = [] for i, f in enumerate(fn(method="depth_first")): types.append(f.type) self.assertEqual(types, ["type", "type2", "type3", "type4"], types) self.assert_(i == 3, i) # direct types = [] for i, f in enumerate(fn(method="direct")): types.append(f.type) self.assertEqual(types, ["type2", "type3", "type4"], types) self.assert_(i == 2, i) types = [] for i, f in enumerate(fn.traverse_direct()): types.append(f.type) self.assertEqual(types, ["type2", "type3", "type4"], types) self.assert_(i == 2, i) fn.depth_first = False types = [] for i, f in enumerate(fn): types.append(f.type) self.assertEqual(types, ["type2", "type3", "type4"], types) self.assert_(i == 2, i)
def test_fni(self): fn = self.fn fni = FeatureNodeIteratorDepthFirst(fn) num_features = 0 tfn = fni.next() while tfn: tfn = fni.next() num_features += 1 self.assertEqual(num_features, 2) fn3 = FeatureNode.create_new("test", "type3", 250, 300, "+") fn.add_child(fn3) fni = FeatureNodeIteratorDepthFirst(fn) num_features = 0 tfn = fni.next() while tfn: num_features += 1 tfn = fni.next() self.assertEqual(num_features, 3)
def setUp(self): self.fn = FeatureNode.create_new("test", "type", 100, 500, "+")
def setUp(self): self.fn = FeatureNode.create_new("test", "type", 100, 500, "+") self.fn2 = FeatureNode.create_new("test", "type2", 200, 300, "+") self.fn.add_child(self.fn2)
def visit_feature_node(self, fn): new_child = FeatureNode.create_new(fn.get_seqid(), "bar", 100, 1000, "+") fn.add_child(new_child)