Esempio n. 1
0
    def test_normal(self):
        items1 = list(range(100))
        items2 = [-i for i in range(100, -1, -1)]
        assert merge(items1, items2) == items2 + items1

        items1 = sorted([randint(0, 1000) for _ in range(1000)])
        items2 = sorted([randint(0, 1000) for _ in range(1000)])
        assert merge(items1, items2) == sorted(items1 + items2)
 def test_merge_on_large_list_with_negatives(self):
     T1 = [1, 1, 1, 5, 6, 7, 8]
     T2 = [9, 15, 16, 20]
     result = merge(T1, T2)
     assert result == [1, 1, 1, 5, 6, 7, 8, 9, 15, 16, 20]
     T3 = [-15, -10, 0, 5, 6]
     T4 = [12, 15, 20, 25, 30]
     result = merge(T3, T4)
     assert result == [-15, -10, 0, 5, 6, 12, 15, 20, 25, 30]
 def test_merge(self):
     items1 = [1, 4, 5]  #sorted
     items2 = [2, 3, 6]  #sorted
     assert merge(items1, items2) == [1, 2, 3, 4, 5, 6]
     items3 = []  #empty
     items4 = [1]
     assert merge(items3, items4) == [1]
     items5 = [2, 3, 7]
     assert merge(items2, items5) == [2, 2, 3, 3, 6, 7]
Esempio n. 4
0
 def test_merge_on_non_numerical_data(self):
     '''Two sorted lists are combined in a larger sorted list.'''
     # on strings
     items1 = ['A', 'C', 'E', 'X']
     items2 = ['B', 'D', 'Y', 'Z']
     assert merge(items1,
                  items2) == ['A', 'B', 'C', 'D', 'E', 'X', 'Y', 'Z']
     # on tuples
     items1 = [(1, 'A'), (8, 'class')]
     items2 = [(2, 'baboon')]
     assert merge(items1, items2) == [(1, 'A'), (2, 'baboon'), (8, 'class')]
 def test_merge_on_small_list_with_decimal(self):
     T1 = [5, 6]
     T2 = [9, 10]
     result = merge(T1, T2)
     assert result == [5, 6, 9, 10]
     T3 = [20, 25, 76]
     T4 = [80, 89, 95]
     result = merge(T3, T4)
     assert result == [20, 25, 76, 80, 89, 95]
     T5 = [-20, 20, 25.5, 30]
     T6 = [35.2, 35.5, 40]
     result = merge(T5, T6)
     assert result == [-20, 20, 25.5, 30, 35.2, 35.5, 40]
Esempio n. 6
0
 def test_merge(self):
     items1, items2 = [1, 2], [3, 4]  # in order
     list1 = merge(items1, items2)
     assert list1 == [1, 2, 3, 4]
     items1, items2 = [1, 2, 3], [3, 4, 5]  # duplicate input
     list1 = merge(items1, items2)
     assert list1 == [1, 2, 3, 3, 4, 5]
     items1, items2 = [1, 2, 3], [4, 5, 6]
     list1 = merge(items1, items2)
     assert list1 == [1, 2, 3, 4, 5, 6]
     items1, items2 = [1, 2, 3, 4], [3, 4, 5,
                                     6]  # multiple duplicates/overlap
     list1 = merge(items1, items2)
     assert list1 == [1, 2, 3, 3, 4, 4, 5, 6]
Esempio n. 7
0
 def test_merge(self):
     first, second = [0, 1, 3, 5, 7, 9,
                      11], [0, 1, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20]
     combined = merge(first, second)
     assert combined == [
         0, 0, 1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 16, 18, 20
     ]
     third, fourth = ['Absol', 'Charizard', 'Mew', 'Misdreavous'
                      ], ['Absol', 'Gyrados', 'Milotic', 'Pikachu']
     combined2 = merge(third, fourth)
     assert combined2 == [
         'Absol', 'Absol', 'Charizard', 'Gyrados', 'Mew', 'Milotic',
         'Misdreavous', 'Pikachu'
     ]
Esempio n. 8
0
 def test_edges(self):
     assert merge([], []) == []
     items = list(range(100))
     assert merge(items, []) == items
     assert merge([], items) == items
     assert merge(items, items) == sorted(items + items)
Esempio n. 9
0
 def test_merge_larger_l2(self):
     l1 = [5]
     l2 = [1, 2, 3, 6, 7, 9]
     l3 = merge(l1, l2)
     assert l3 == [1, 2, 3, 5, 6, 7, 9]
Esempio n. 10
0
 def test_merge_larger_l1(self):
     l1 = [2, 3, 4, 5]
     l2 = [1]
     l3 = merge(l1, l2)
     assert l3 == [1, 2, 3, 4, 5]
Esempio n. 11
0
 def test_reverse_merge(self):
     l1 = [3, 4]
     l2 = [1, 2]
     l3 = merge(l1, l2)
     assert l3 == [1, 2, 3, 4]
Esempio n. 12
0
 def test_merge_on_lists_different_sizes(self):
     '''Two sorted lists are combined in a larger sorted list.'''
     items1 = [1, 2, 4, 5]
     items2 = [3, 8]
     assert merge(items1, items2) == [1, 2, 3, 4, 5, 8]
Esempio n. 13
0
 def test_merge_on_integers(self):
     '''Two sorted lists are combined in a larger sorted list.'''
     items1 = [1, 2, 4, 5]
     items2 = [3, 6, 7, 8]
     assert merge(items1, items2) == [1, 2, 3, 4, 5, 6, 7, 8]