Exemple #1
0
 def test_remove_node_attrs(self):
     rule = Rule(self.p, self.pattern, self.rhs,
                 self.p_lhs, self.p_rhs)
     rule.add_node_attrs(4, {'a': 2})
     rule.remove_node_attrs(4, {'a': 1})
     t1 = {'a': set()}
     t2 = {'a': set([2])}
     normalize_attrs(t1)
     normalize_attrs(t2)
     assert(rule.p.node['d'] == t1)
     assert(rule.rhs.node['s'] == t2)
     return
Exemple #2
0
 def test_add_node_attrs(self):
     rule = Rule(self.p, self.pattern, self.rhs,
                 self.p_lhs, self.p_rhs)
     rule.add_node_attrs(1, {'a': 1})
     t1 = {'a': {1}}
     t2 = {'a': {1, 2}}
     t3 = {'a': {1, 2}, 'b': {1}}
     normalize_attrs(t1)
     normalize_attrs(t2)
     normalize_attrs(t3)
     assert(rule.rhs.node['x'] == t1)
     rule.add_node_attrs(4, {'a': 1})
     assert(rule.rhs.node['s'] == t1)
     rule.add_node_attrs(4, {'a': 2})
     assert(rule.rhs.node['s'] == t2)
     rule.add_node_attrs(4, {'b': 1})
     assert(rule.rhs.node['s'] == t3)
     return