def test_small(self): max_number = 2 * 10**5 self.assertEqual(max_pairwise_product([1, 2, 3]), 6) self.assertEqual(max_pairwise_product([9, 3, 2]), 27) self.assertEqual(max_pairwise_product([7, 3, 7, 2]), 49) self.assertEqual(max_pairwise_product([max_number, max_number]), 40000000000)
def test_small(self): print("test_small start") self.assertEqual(max_pairwise_product([1, 2, 3]), 6) self.assertEqual(max_pairwise_product([9, 3, 2]), 27) self.assertEqual(max_pairwise_product([7, 3, 7, 2]), 49) self.assertEqual(max_pairwise_product([3, 3, 3, 3]), 9) self.assertEqual(max_pairwise_product([1, 31, 30, 3]), 930) print("test_small complete")
def test_large(self): print("test_large start") self.assertEqual(max_pairwise_product([4] * (2 * 10**5)), 16) self.assertEqual(max_pairwise_product([x for x in range(10**5)]), (10**5 - 1) * (10**5 - 2)) self.assertEqual(max_pairwise_product([1] * (2 * 10**5)), 1) self.assertEqual(max_pairwise_product([1] * (2 * 10**5)), 1) self.assertEqual(max_pairwise_product([1] * (2 * 10**5)), 1)
def test_stress(self): number_of_iterations = 10 array_size = 100 max_number = 2 * 10**5 for _ in range(number_of_iterations): numbers = [randint(0, max_number) for _ in range(array_size)] self.assertEqual(max_pairwise_product(list(numbers)), max_pairwise_product_naive(numbers))
def test_bin_r(self): number_of_iterations = 10 array_size = 100 for _ in range(number_of_iterations): numbers = [(randint(0, 1)) for _ in range(array_size)] self.assertEqual(max_pairwise_product(list(numbers)), max_pairwise_product_naive(numbers))
def test_small(self): self.assertEqual(max_pairwise_product([1, 2, 3]), 6) self.assertEqual(max_pairwise_product([9, 3, 2]), 27) self.assertEqual(max_pairwise_product([7, 3, 7, 2]), 49)
def test_small(self): self.assertEqual(max_pairwise_product([1, 2, 3]), 6) self.assertEqual(max_pairwise_product([9, 3, 2]), 27) self.assertEqual(max_pairwise_product([7, 3, 7, 2]), 49) self.assertEqual(max_pairwise_product([5, 1, 6, 8, 7]), 56) self.assertEqual(max_pairwise_product([7, 3, 0, 2, 9, 8]), 72)
from test_helper import run_common_tests, failed, passed, check_tests_pass from maximum_pairwise_product import max_pairwise_product if __name__ == '__main__': run_common_tests() check_tests_pass("maximum_pairwise_product_unit_tests.py") all_tests_passed = True tests = [ ([1, 2], 2), ([2, 1], 2), ([3, 5], 15), ([5, 3], 15), ([7, 7], 49), ([5, 1, 5], 25), ([1, 5, 5], 25), ([i + 1 for i in range(10**5)], (10**5 - 1) * (10**5)), ] for array, answer in tests: if max_pairwise_product(array) != answer: all_tests_passed = False failed("Wrong answer for A={}".format(array)) break if all_tests_passed: passed()
def test_small(self): self.assertEqual(max_pairwise_product([1, 2, 3]), 6) self.assertEqual(max_pairwise_product([9, 3, 2]), 27) self.assertEqual(max_pairwise_product([7, 3, 7, 2]), 49) self.assertEqual(max_pairwise_product([12, 10]), 120) self.assertEqual(max_pairwise_product([100000, 90000]), 9000000000)