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)
Example #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))
Example #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)
Example #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)
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)
Example #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))
Example #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))
Example #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))
Example #9
0
def test_one_value():
    assert two_sum([1], 9) == "No solution"
Example #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])
Example #11
0
	def test_list_range_12(self):
		result = two_sum([17, 10, 18, 7, 65, 25, 40], 24)
		self.assertEqual(result, [0, 3])
Example #12
0
 def test_simple_3(self):
     self.assertEqual(two_sum([3, 7, 12, 15], 18), [0, 3])
Example #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])
 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])
Example #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]
Example #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
Example #17
0
 def test_case_1(self):
     expected = [0, 1]
     result = t.two_sum(self.example1, 9)
     self.assertEqual(expected, result)
Example #18
0
def test_not_enough_elements():
    with pytest.raises(Exception):
        nums = [1]
        target = 11
        index_one, index_two = two_sum(nums, target)
Example #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)
Example #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]])
Example #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]
Example #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]
Example #23
0
def test_correct_sum_first_two_idx():
    assert two_sum([1, 2], 3) == [0, 1]
Example #24
0
 def test_simple(self):
     self.assertEqual(two_sum([2, 7, 11, 15], 9), [0, 1])
Example #25
0
def test_correct_sum_misc_idx():
    assert two_sum([1, 2, 3, 4, 5, 6], 8) == [2, 4]
Example #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])
Example #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))
Example #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))
Example #29
0
 def test_case_6(self):
     expected = [1, 3]
     result = t.two_sum(self.example5, 12)
     self.assertEqual(expected, result)
	def test_list_range_6(self):
		res = two_sum([1,2,3,4,5,6], 11)
		self.assertEqual(res, [4,5])
Example #31
0
	def test_list_range_7(self):
		result = two_sum([1, 10, 10, 8, 6, 5, 4], 12)
		self.assertEqual(result, [3, 6])
	def test_list_range_7(self):
		res = two_sum([2,5,1,7,6,3,8], 15)
		self.assertEqual(res,[3,6])
Example #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])
	def test_list_range_8(self):
		res = two_sum([2,5,1,7,6,3,8,10], 18)
		self.assertEqual(res,[6,7])
Example #35
0
	def test_list_range_3(self):
		result = two_sum([5, 55, 60], 65)
		self.assertEqual(result, [0, 2])
	def test_list_range_9(self):
		res = two_sum([5,4,23,7,2,9,11,6,8], 25)
		self.assertEqual(res,[2,4])
Example #37
0
	def test_list_range_5(self):
		result = two_sum([7, 9, 10, 8, 6], 18)
		self.assertEqual(result, [2, 3])
	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])
Example #39
0
def test_cannot_equal_target():
    assert two_sum([1, 2, 3], 20) == "No solution"
Example #40
0
 def test_list_range_2(self):
   result = two_sum([1, 2], 3)
   self.assertEqual(result,[0, 1])
Example #41
0
def test_correct_sum_0th_and_random_idx():
    assert two_sum([1, 2, 3], 4) == [0, 2]
Example #42
0
 def test_list_range_6(self):
   result = two_sum([2, 6, 1, 5, 10, 4], 5)
   self.assertEqual(result,[2, 5])
Example #43
0
def test_empty_list():
    assert two_sum([], 9) == "No solution"
Example #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])
Example #45
0
 def test_two_sum(self):
     input = [10000, 2, 1, 9999, 2]
     result = two_sum(input)
     self.assertEqual(result, 2)
Example #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])
Example #47
0
 def test_simple_2(self):
     self.assertEqual(two_sum([3, 7, 11, 15], 26), [2, 3])
Example #48
0
 def test_list_range_4(self):
   result = two_sum([2,3,1,7], 8)
   self.assertEqual(result,[2,3])
	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])
Example #50
0
 def test_case_5(self):
     expected = []
     result = t.two_sum(self.example4, 4)
     self.assertEqual(expected, result)
Example #51
0
 def test_list_range_3(self):
   result = two_sum([5, 10, 1], 6)
   self.assertEqual(result,[0, 2])
	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])	
Example #53
0
 def test_list_range_7(self):
   result = two_sum([2, 6, 9, 1, 5, 10, 4], 5)
   self.assertEqual(result,[3, 6])
	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])
Example #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])
	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])
Example #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])
	def test_list_range_5(self):
		res = two_sum([2,3,4,5,6], 9)
		self.assertEqual(res,[1,4])
Example #59
0
 def test_list_range_5(self):
   result = two_sum([5, 1, 2, 3, 4], 3)
   self.assertEqual(result,[1, 2])
Example #60
0
	def test_list_range_6(self):
		result = two_sum([2, 9, 15, 8, 6, 7], 13)
		self.assertEqual(result, [4, 5])