Пример #1
0
 def test_make(self):
     self.assertEqual(Heap.make([2, 1, 0, 1, 9, 9, 7]).head(), 9)
Пример #2
0
 def test_empty_init(self):
     h = Heap()
     self.assertEqual(h.comparator, max)
     self.assertEqual(h.array, list())
Пример #3
0
 def test_sift_up_even_pos(self):
     h = Heap([5, 4, 3, 2, 7]).sift_up(4)
     self.assertEqual(h.head(), 7)
Пример #4
0
 def test_sift_odd_pos(self):
     h = Heap([10, 8, 3, 2, 7, 4]).sift_up(5)
     self.assertEqual(h.array[5], 3)
Пример #5
0
 def test_str(self):
     self.assertEqual(str(Heap([6, 1, 2])), str([6, 1, 2]))
Пример #6
0
 def test_repr(self):
     h = Heap([6, 3, 2, 1, 1, 1])
     self.assertTrue(eval(repr(h)) == h)
Пример #7
0
 def test_len(self):
     self.assertEqual(len(Heap([1, 2, 3])), 3)
Пример #8
0
 def test_in(self):
     self.assertIn(5, Heap([6, 2, 1, 5]))
Пример #9
0
 def test_pop(self):
     self.assertEqual(Heap.make([1, 2, 3, 4, 0]).pop().head(), 3)
Пример #10
0
    def test_iter(self):
        lst = [432, 431, 543, 3241, 44]

        self.assertEqual(list(Heap.make(lst)), sorted(lst, reverse=True))
Пример #11
0
 def test_add_equal_to_maximum(self):
     self.assertEqual(Heap([2], max).add(2).head(), 2)
Пример #12
0
 def test_add_larger_than_maximum(self):
     self.assertEqual(Heap([1], max).add(2).head(), 2)
Пример #13
0
 def test_add_smaller_than_maximum(self):
     self.assertEqual(Heap([1], max).add(0).head(), 1)
Пример #14
0
 def test_head(self):
     self.assertEqual(Heap([3, 2, 1]).head(), 3)
Пример #15
0
 def test_normal_init(self):
     h = Heap([1, 2, 3], min)
     self.assertEqual(h.array, [1, 2, 3])
     self.assertEqual(h.comparator, min)