Example #1
0
 def test_008_trace_mode(self):
     """test MsgTree in trace mode"""
     tree = MsgTree(mode=MODE_TRACE)
     tree.add("item1", b"message0")
     self.assertEqual(len(tree), 1)
     tree.add("item2", b"message2")
     tree.add("item3", b"message2")
     tree.add("item4", b"message3")
     tree.add("item2", b"message4")
     tree.add("item3", b"message4")
     self.assertEqual(len(tree), 4)
     self.assertEqual(tree["item1"], b"message0")
     self.assertEqual(tree.get("item1"), b"message0")
     self.assertEqual(tree["item2"], b"message2\nmessage4")
     self.assertEqual(tree.get("item2"), b"message2\nmessage4")
     self.assertEqual(tree.get("item5", b"default_buf"), b"default_buf")
     self.assertEqual(tree._depth(), 2)
     self.assertEqual(len(list(tree.walk())), 4)
     # /!\ results are not sorted
     result = [(m, sorted(k), d, c) for m, k, d, c
               in sorted(list(tree.walk_trace()))]
     self.assertEqual(result,
                      [(b'message0', ['item1'], 1, 0),
                       (b'message2', ['item2', 'item3'], 1, 1),
                       (b'message3', ['item4'], 1, 0),
                       (b'message4', ['item2', 'item3'], 2, 0)])
Example #2
0
 def test_007_shift_mode(self):
     """test MsgTree in shift mode"""
     tree = MsgTree(mode=MODE_SHIFT)
     tree.add("item1", "message0")
     self.assertEqual(len(tree), 1)
     tree.add("item2", "message2")
     tree.add("item3", "message2")
     tree.add("item4", "message3")
     tree.add("item2", "message4")
     tree.add("item3", "message4")
     self.assertEqual(len(tree), 4)
     self.assertEqual(tree["item1"], "message0")
     self.assertEqual(tree.get("item1"), "message0")
     self.assertEqual(tree["item2"], "message2\nmessage4")
     self.assertEqual(tree.get("item2"), "message2\nmessage4")
     self.assertEqual(tree.get("item5", "default_buf"), "default_buf")
     self.assertEqual(tree._depth(), 2)
     self.assertEqual(len(list(tree.walk())), 3)
Example #3
0
 def test_004_getitem(self):
     """test MsgTree get and __getitem__"""
     # build tree...
     tree = MsgTree()
     tree.add("item1", "message0")
     self.assertEqual(len(tree), 1)
     tree.add("item2", "message2")
     tree.add("item3", "message2")
     tree.add("item4", "message3")
     tree.add("item2", "message4")
     tree.add("item3", "message4")
     self.assertEqual(len(tree), 4)
     self.assertEqual(tree["item1"], "message0")
     self.assertEqual(tree.get("item1"), "message0")
     self.assertEqual(tree["item2"], "message2\nmessage4")
     self.assertEqual(tree.get("item2"), "message2\nmessage4")
     self.assertEqual(tree.get("item5", "default_buf"), "default_buf")
     self.assertEqual(tree._depth(), 2)
Example #4
0
 def test_007_shift_mode(self):
     """test MsgTree in shift mode"""
     tree = MsgTree(mode=MODE_SHIFT)
     tree.add("item1", "message0")
     self.assertEqual(len(tree), 1)
     tree.add("item2", "message2")
     tree.add("item3", "message2")
     tree.add("item4", "message3")
     tree.add("item2", "message4")
     tree.add("item3", "message4")
     self.assertEqual(len(tree), 4)
     self.assertEqual(tree["item1"], "message0")
     self.assertEqual(tree.get("item1"), "message0")
     self.assertEqual(tree["item2"], "message2\nmessage4")
     self.assertEqual(tree.get("item2"), "message2\nmessage4")
     self.assertEqual(tree.get("item5", "default_buf"), "default_buf")
     self.assertEqual(tree._depth(), 2)
     self.assertEqual(len(list(tree.walk())), 3)
Example #5
0
 def test_004_getitem(self):
     """test MsgTree get and __getitem__"""
     # build tree...
     tree = MsgTree()
     tree.add("item1", "message0")
     self.assertEqual(len(tree), 1)
     tree.add("item2", "message2")
     tree.add("item3", "message2")
     tree.add("item4", "message3")
     tree.add("item2", "message4")
     tree.add("item3", "message4")
     self.assertEqual(len(tree), 4)
     self.assertEqual(tree["item1"], "message0")
     self.assertEqual(tree.get("item1"), "message0")
     self.assertEqual(tree["item2"], "message2\nmessage4")
     self.assertEqual(tree.get("item2"), "message2\nmessage4")
     self.assertEqual(tree.get("item5", "default_buf"), "default_buf")
     self.assertEqual(tree._depth(), 2)
Example #6
0
 def test_008_trace_mode(self):
     """test MsgTree in trace mode"""
     tree = MsgTree(mode=MODE_TRACE)
     tree.add("item1", "message0")
     self.assertEqual(len(tree), 1)
     tree.add("item2", "message2")
     tree.add("item3", "message2")
     tree.add("item4", "message3")
     tree.add("item2", "message4")
     tree.add("item3", "message4")
     self.assertEqual(len(tree), 4)
     self.assertEqual(tree["item1"], "message0")
     self.assertEqual(tree.get("item1"), "message0")
     self.assertEqual(tree["item2"], "message2\nmessage4")
     self.assertEqual(tree.get("item2"), "message2\nmessage4")
     self.assertEqual(tree.get("item5", "default_buf"), "default_buf")
     self.assertEqual(tree._depth(), 2)
     self.assertEqual(len(list(tree.walk())), 4)
     self.assertEqual(list(tree.walk_trace()), \
         [('message0', ['item1'], 1, 0),
          ('message2', ['item2', 'item3'], 1, 1),
          ('message4', ['item2', 'item3'], 2, 0),
          ('message3', ['item4'], 1, 0)])
Example #7
0
 def test_008_trace_mode(self):
     """test MsgTree in trace mode"""
     tree = MsgTree(mode=MODE_TRACE)
     tree.add("item1", "message0")
     self.assertEqual(len(tree), 1)
     tree.add("item2", "message2")
     tree.add("item3", "message2")
     tree.add("item4", "message3")
     tree.add("item2", "message4")
     tree.add("item3", "message4")
     self.assertEqual(len(tree), 4)
     self.assertEqual(tree["item1"], "message0")
     self.assertEqual(tree.get("item1"), "message0")
     self.assertEqual(tree["item2"], "message2\nmessage4")
     self.assertEqual(tree.get("item2"), "message2\nmessage4")
     self.assertEqual(tree.get("item5", "default_buf"), "default_buf")
     self.assertEqual(tree._depth(), 2)
     self.assertEqual(len(list(tree.walk())), 4)
     self.assertEqual(list(tree.walk_trace()), \
         [('message0', ['item1'], 1, 0),
          ('message2', ['item2', 'item3'], 1, 1),
          ('message4', ['item2', 'item3'], 2, 0),
          ('message3', ['item4'], 1, 0)])