Skip to content

Commit

Permalink
Unit test for Mersenne primes
Browse files Browse the repository at this point in the history
  • Loading branch information
adamantike authored and sybrenstuvel committed Apr 23, 2016
1 parent 08e609f commit a72efaa
Showing 1 changed file with 19 additions and 0 deletions.
19 changes: 19 additions & 0 deletions tests/test_prime.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,25 @@ def fake_randint(maxvalue):
finally:
rsa.randnum.randint = orig_randint

def test_mersenne_primes(self):
"""Tests first known Mersenne primes.
Mersenne primes are prime numbers that can be written in the form
`Mn = 2**n - 1` for some integer `n`. For the list of known Mersenne
primes, see:
https://en.wikipedia.org/wiki/Mersenne_prime#List_of_known_Mersenne_primes
"""

# List of known Mersenne exponents.
known_mersenne_exponents = [
2, 3, 5, 7, 13, 17, 19, 31, 61, 89, 107, 127, 521, 607, 1279,
2203, 2281, 4423,
]

# Test Mersenne primes.
for exp in known_mersenne_exponents:
self.assertTrue(rsa.prime.is_prime(2**exp - 1))

def test_get_primality_testing_rounds(self):
"""Test round calculation for primality testing."""

Expand Down

0 comments on commit a72efaa

Please sign in to comment.