def test_self_convolve(self): input_list = [3, 5, 7] expected_result = [9, 30, 67, 70, 49] result = common.self_convolve(input_list, 2) self.assertEqual(len(expected_result), len(result)) for expected_value, value in zip(expected_result, result): self.assertAlmostEqual(expected_value, value)
def test_compute_self_convolve_with_truncation(self, input_list, num_times, tail_mass_truncation, expected_min_val, expected_result_list): min_val, result_list = common.self_convolve( input_list, num_times, tail_mass_truncation=tail_mass_truncation) self.assertEqual(min_val, expected_min_val) self.assertSequenceAlmostEqual(expected_result_list, result_list)
def test_self_convolve_basic(self, input_list, num_times, expected_result): min_val, result_list = common.self_convolve(input_list, num_times) self.assertEqual(0, min_val) self.assertSequenceAlmostEqual(expected_result, result_list)