def test_prime_factors(self): # Loop downwards so we don't have to keep re-seiving the prime list for num in xrange(10000,2,-1): factors = primes.prime_factors(num) if not factors: self.assertTrue(primes.is_prime(num), 'No factor list returned for non-prime %d' % num) continue product = reduce(op.mul, factors) self.assertEqual(product, num, 'Incorrect factor list for %d: (%s) = %d' % (num, "*".join(map(str, factors)), product))
def test_is_prime(self): for p in primes.primes(20000): self.assertTrue(primes.is_prime(p), 'Prime %d fails prime check' % p)