示例#1
0
 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)})
示例#2
0
 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)})
示例#3
0
 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)})
示例#4
0
 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)})
示例#5
0
 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})
示例#6
0
 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, [])
示例#7
0
 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}])
示例#8
0
 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)})
示例#9
0
 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, [])
示例#10
0
 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)
示例#11
0
 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)})
示例#12
0
 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)})
示例#13
0
 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)})
示例#14
0
 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)
示例#15
0
 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})
示例#16
0
 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)
示例#17
0
 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)