Ejemplo n.º 1
0
    def test_return_correct_coordinates(self):
        expected1 = [2, 4]
        expected2 = [1, 2]

        result1 = t.two_sum(self.example3, self.target3)
        result2 = t.two_sum(self.example4, self.target4)

        self.assertEqual(expected1, result1)
        self.assertEqual(expected2, result2)
Ejemplo n.º 2
0
 def test_two_sum(self):
     array = [2, 7, 11, 15]
     # test two_sum
     self.assertEqual([1, 2], two_sum(array, 9))
     self.assertEqual([2, 4], two_sum(array, 22))
     # test two_sum1
     self.assertEqual([1, 2], two_sum1(array, 9))
     self.assertEqual([2, 4], two_sum1(array, 22))
     # test two_sum2
     self.assertEqual([1, 2], two_sum2(array, 9))
     self.assertEqual([2, 4], two_sum2(array, 22))
Ejemplo n.º 3
0
 def test_two_sum(self):
     test_patterns = [
         ([1, 2, 3], 4, [0, 2]),
         ([1234, 5678, 9012], 14690, [1, 2]),
         ([2, 2, 3], 4, [0, 1]),
     ]
     for num, t, expected in test_patterns:
         with self.subTest(num=num, t=t, expected=expected):
             self.assertEqual(two_sum(numbers=num, target=t), expected)
Ejemplo n.º 4
0
 def test_two_sum(self):
     for _ in range(1000):
         array = [random.randint(1, 20) for _ in range(10)]
         x = random.randint(1, 100)
         n = len(array)
         result = False
         for i in range(n):
             for j in range(i + 1, n):
                 if array[i] + array[j] == x:
                     result = True
         self.assertEqual(two_sum(x, array), result)
Ejemplo n.º 5
0
def run_2_sum():
    numbers = {}
    with open('data/algo1_programming_prob_2sum.txt', 'r') as file:
        for line in file:
            numbers[int(line)] = True
    satisfied = 0
    for target in range(-10000, 10001):
        if target % 100 == 0:
            print(target)
        if two_sum(numbers, target):
            satisfied += 1
    print('targets satisfied: %s' % satisfied)
Ejemplo n.º 6
0
 def test_add_neg(self):
     # test that a single negative number won't break it
     l = [-1, 2, 4, 5]
     self.assertEqual(two_sum(l, 1), (0, 1))
     self.assertEqual(two_sum(l, 3), (0, 2))
     self.assertEqual(two_sum(l, 4), (0, 3))
     # test that a negative target won't break it
     l2 = [-5, 1, 3, 4, 5]
     self.assertEqual(two_sum(l2, -4), (0, 1))
     self.assertEqual(two_sum(l2, -2), (0, 2))
     self.assertEqual(two_sum(l2, -1), (0, 3))
     self.assertEqual(two_sum(l2, 0), (0, 4))
Ejemplo n.º 7
0
 def test_dual_neg(self):
     # test that it can add two negative numbers
     l = [-2, -3, -4, -10]
     self.assertEqual(two_sum(l, -5), (0, 1))
     self.assertEqual(two_sum(l, -6), (0, 2))
     self.assertEqual(two_sum(l, -12), (0, 3))
     self.assertEqual(two_sum(l, -7), (1, 2))
     self.assertEqual(two_sum(l, -13), (1, 3))
     self.assertEqual(two_sum(l, -14), (2, 3))
Ejemplo n.º 8
0
 def test_base_case(self):
     l = [2, 3, 5, 7]
     result = two_sum(l, 8)
     self.assertEqual(result, (1, 2))
     result2 = two_sum(l, 5)
     self.assertEqual(result2, (0, 1))
     result3 = two_sum(l, 12)
     self.assertEqual(result3, (2, 3))
     result4 = two_sum(l, 7)
     self.assertEqual(result4, (0, 2))
     result5 = two_sum(l, 9)
     self.assertEqual(result5, (0, 3))
     # this test also ensures that it won't return (2, 2)
     # which is an edge case that wasn't included
     self.assertEqual(two_sum(l, 10), (1, 3))
Ejemplo n.º 9
0
def test_one_value():
    assert two_sum([1], 9) == "No solution"
Ejemplo n.º 10
0
	def test_list_range_10(self):
		result = two_sum([4, 10, 13, 8, 6, 5, 4, 23, 34, 88], 57)
		self.assertEqual(result, [7, 8])
Ejemplo n.º 11
0
	def test_list_range_12(self):
		result = two_sum([17, 10, 18, 7, 65, 25, 40], 24)
		self.assertEqual(result, [0, 3])
Ejemplo n.º 12
0
 def test_simple_3(self):
     self.assertEqual(two_sum([3, 7, 12, 15], 18), [0, 3])
Ejemplo n.º 13
0
	def test_list_range_8(self):
		result = two_sum([1, 10, 10, 8, 6, 5, 4, 56], 60)
		self.assertEqual(result, [6, 7])
Ejemplo n.º 14
0
 def test_two_sum(self):
     self.assertEqual(two_sum([2, 7, 11, 15], 9), [0, 1])
     self.assertEqual(two_sum([3, 2, 4], 6), [1, 2])
Ejemplo n.º 15
0
def test_two_sum_1():
    test_list = [2, 7, 11, 15]
    test_target = 9

    assert two_sum(test_list, test_target) == [0, 1]
Ejemplo n.º 16
0
def test_finds_the_right_indices():
    nums = [1, 2, 3, 5, 8]
    target = 11
    index_one, index_two = two_sum(nums, target)
    assert index_one == 2
    assert index_two == 4
Ejemplo n.º 17
0
 def test_case_1(self):
     expected = [0, 1]
     result = t.two_sum(self.example1, 9)
     self.assertEqual(expected, result)
Ejemplo n.º 18
0
def test_not_enough_elements():
    with pytest.raises(Exception):
        nums = [1]
        target = 11
        index_one, index_two = two_sum(nums, target)
Ejemplo n.º 19
0
def test_no_sums_in_elements():
    with pytest.raises(Exception):
        nums = [1, 2, 3]
        target = 200
        index_one, index_two = two_sum(nums, target)
Ejemplo n.º 20
0
 def test_function(self):
     self.assertEqual(two_sum([2, 7, 9, 11], 9), [[0, 1]])
     self.assertEqual(two_sum([1, 2, 3, 4, 5], 5), [[1, 2], [0, 3]])
     self.assertEqual(two_sum([2, 1, 5, 3, 2], 4), [[1, 3], [0, 4]])
Ejemplo n.º 21
0
def test_true():
    """True case test."""
    assert two_sum([1, 2, 5, 6, 7], 9) == [1, 4]
    assert two_sum_dict([1, 2, 5, 6, 7], 9) == [1, 4]
Ejemplo n.º 22
0
def test_two_sum():
    assert sorted(two_sum([1, 2, 3], 4)) == [0, 2]
    assert sorted(two_sum([1234, 5678, 9012], 14690)) == [1, 2]
    assert sorted(two_sum([2, 2, 3], 4)) == [0, 1]
Ejemplo n.º 23
0
def test_correct_sum_first_two_idx():
    assert two_sum([1, 2], 3) == [0, 1]
Ejemplo n.º 24
0
 def test_simple(self):
     self.assertEqual(two_sum([2, 7, 11, 15], 9), [0, 1])
Ejemplo n.º 25
0
def test_correct_sum_misc_idx():
    assert two_sum([1, 2, 3, 4, 5, 6], 8) == [2, 4]
Ejemplo n.º 26
0
 def test_list_range_10(self):
     result = two_sum ([1, 3, 5, 7, 2, 9, 4, 6, 10], 5)
     self.assertEqual(result,[1,4])
Ejemplo n.º 27
0
 def test_add_zero(self):
     l = [2, 3, 0, 6]
     result = two_sum(l, 3)
     self.assertEqual(result, (1, 2))
     self.assertEqual(two_sum(l, 2), (0, 2))
     self.assertEqual(two_sum(l, 6), (2, 3))
Ejemplo n.º 28
0
 def test_two_sum(self):
     li = [3, 1, 4, 1, 5, 9, 2, 6]
     merge_sort(li, 0, len(li) - 1)
     self.assertEqual(two_sum(li, 12), (3, 7))
Ejemplo n.º 29
0
 def test_case_6(self):
     expected = [1, 3]
     result = t.two_sum(self.example5, 12)
     self.assertEqual(expected, result)
Ejemplo n.º 30
0
	def test_list_range_6(self):
		res = two_sum([1,2,3,4,5,6], 11)
		self.assertEqual(res, [4,5])
Ejemplo n.º 31
0
	def test_list_range_7(self):
		result = two_sum([1, 10, 10, 8, 6, 5, 4], 12)
		self.assertEqual(result, [3, 6])
Ejemplo n.º 32
0
	def test_list_range_7(self):
		res = two_sum([2,5,1,7,6,3,8], 15)
		self.assertEqual(res,[3,6])
Ejemplo n.º 33
0
	def test_list_range_9(self):
		result = two_sum([100, 50, 70, 80, 6, 5, 4, 2, 5], 150)
		self.assertEqual(result, [0, 1])
Ejemplo n.º 34
0
	def test_list_range_8(self):
		res = two_sum([2,5,1,7,6,3,8,10], 18)
		self.assertEqual(res,[6,7])
Ejemplo n.º 35
0
	def test_list_range_3(self):
		result = two_sum([5, 55, 60], 65)
		self.assertEqual(result, [0, 2])
Ejemplo n.º 36
0
	def test_list_range_9(self):
		res = two_sum([5,4,23,7,2,9,11,6,8], 25)
		self.assertEqual(res,[2,4])
Ejemplo n.º 37
0
	def test_list_range_5(self):
		result = two_sum([7, 9, 10, 8, 6], 18)
		self.assertEqual(result, [2, 3])
Ejemplo n.º 38
0
	def test_list_range_10(self):
		res = two_sum([2,5,1,7,6,3,8,54,12,9], 19)
		self.assertEqual(res,[3,8])
Ejemplo n.º 39
0
def test_cannot_equal_target():
    assert two_sum([1, 2, 3], 20) == "No solution"
Ejemplo n.º 40
0
 def test_list_range_2(self):
   result = two_sum([1, 2], 3)
   self.assertEqual(result,[0, 1])
Ejemplo n.º 41
0
def test_correct_sum_0th_and_random_idx():
    assert two_sum([1, 2, 3], 4) == [0, 2]
Ejemplo n.º 42
0
 def test_list_range_6(self):
   result = two_sum([2, 6, 1, 5, 10, 4], 5)
   self.assertEqual(result,[2, 5])
Ejemplo n.º 43
0
def test_empty_list():
    assert two_sum([], 9) == "No solution"
Ejemplo n.º 44
0
 def test_list_range_8(self):
   result = two_sum([7, 6, 0, 22, 3, 41, 6, 5], 12)
   self.assertEqual(result,[0, 7])
Ejemplo n.º 45
0
 def test_two_sum(self):
     input = [10000, 2, 1, 9999, 2]
     result = two_sum(input)
     self.assertEqual(result, 2)
Ejemplo n.º 46
0
 def test_list_range_10(self):
   result = two_sum([3, 7, 6, 1, 22, 2, 41, 6, 5], 6)
   self.assertEqual(result,[3, 8])
Ejemplo n.º 47
0
 def test_simple_2(self):
     self.assertEqual(two_sum([3, 7, 11, 15], 26), [2, 3])
Ejemplo n.º 48
0
 def test_list_range_4(self):
   result = two_sum([2,3,1,7], 8)
   self.assertEqual(result,[2,3])
Ejemplo n.º 49
0
	def test_list_range_11(self):
		res = two_sum([13,4,6,8,9,12,15,25,78,23,5], 38)
		self.assertEqual(res,[0,7])
Ejemplo n.º 50
0
 def test_case_5(self):
     expected = []
     result = t.two_sum(self.example4, 4)
     self.assertEqual(expected, result)
Ejemplo n.º 51
0
 def test_list_range_3(self):
   result = two_sum([5, 10, 1], 6)
   self.assertEqual(result,[0, 2])
Ejemplo n.º 52
0
	def test_list_range_12(self):
		res = two_sum([2,5,1,7,6,3,8,54,12,9,15,30], 42)
		self.assertEqual(res,[8,11])	
Ejemplo n.º 53
0
 def test_list_range_7(self):
   result = two_sum([2, 6, 9, 1, 5, 10, 4], 5)
   self.assertEqual(result,[3, 6])
Ejemplo n.º 54
0
	def test_list_range_13(self):
		res = two_sum([12,4,67,8,5,23,55,16,9,11,2,50,78], 105)
		self.assertEqual(res,[6,11])
Ejemplo n.º 55
0
 def test_list_range_9(self):
   result = two_sum([7, 6, 0, 0, 13, 41, 6, 2, ], 15)
   self.assertEqual(result,[4, 7])
Ejemplo n.º 56
0
	def test_list_range_14(self):
		res = two_sum([2,5,1,7,6,3,8,54,12,9,78,45,32,90], 144)
		self.assertEqual(res,[7,13])
Ejemplo n.º 57
0
 def test_list_range_14(self):
   result = two_sum([2, 0, 0, 1, 1, 1, 10, 1, 52, 20, 3, 0], 2)
   self.assertEqual(result,[0, 1])
Ejemplo n.º 58
0
	def test_list_range_5(self):
		res = two_sum([2,3,4,5,6], 9)
		self.assertEqual(res,[1,4])
Ejemplo n.º 59
0
 def test_list_range_5(self):
   result = two_sum([5, 1, 2, 3, 4], 3)
   self.assertEqual(result,[1, 2])
Ejemplo n.º 60
0
	def test_list_range_6(self):
		result = two_sum([2, 9, 15, 8, 6, 7], 13)
		self.assertEqual(result, [4, 5])