def test_largest_palindrome_from_triple_digit_factors(self): value, factors = largest_palindrome(min_factor=100, max_factor=999) self.assertEqual(value, 906609) self.assertFactorsEqual(factors, {(913, 993)})
def test_largest_palindrome_from_four_digit_factors(self): value, factors = largest_palindrome(min_factor=1000, max_factor=9999) self.assertEqual(value, 99000099) self.assertFactorsEqual(factors, {(9901, 9999)})
def test_largest_palindrome_from_single_digit_factors(self): value, factors = largest_palindrome(min_factor=1, max_factor=9) self.assertEqual(value, 9) self.assertFactorsEqual(factors, {(1, 9), (3, 3)})
def test_largest_palindrome_from_double_digit_factors(self): value, factors = largest_palindrome(min_factor=10, max_factor=99) self.assertEqual(value, 9009) self.assertFactorsEqual(factors, {(91, 99)})
def test_largest_palindrome_from_triple_digit_factors(self): value, factors = largest_palindrome(max_factor=999, min_factor=100) self.assertEqual(value, 906609) self.assertEqual(set(factors), {913, 993})
def test_empty_for_largest_palindrome_if_none_in_range(self): value, factors = largest_palindrome(min_factor=15, max_factor=15) self.assertIsNone(value) self.assertEqual(factors, [])
def test_largest_palindrome_from_single_digit_factors(self): value, factors = largest_palindrome(max_factor=9) self.assertEqual(value, 9) self.assertIn(set(factors), [{1, 9}, {3, 3}])
def test_empty_for_largest_palindrome_if_none_in_range(self): value, factors = largest_palindrome(min_factor=15, max_factor=15) self.assertIsNone(value) self.assertFactorsEqual(factors, [])
def test_error_for_largest_if_min_is_more_than_max(self): with self.assertRaisesWithMessage(ValueError): value, factors = largest_palindrome(min_factor=2, max_factor=1)
def test_empty_for_largest_palindrome_if_none_in_range(self): with self.assertRaisesWithMessage(ValueError): value, factors = largest_palindrome(min_factor=15, max_factor=15)
def test_largest_palindrome_from_double_digit_factors(self): value, factors = largest_palindrome(max_factor=99, min_factor=10) self.assertEqual(value, 9009) self.assertEqual(set(factors), {91, 99})