summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authormarcandre <marcandre@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-08-10 18:17:41 +0000
committermarcandre <marcandre@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-08-10 18:17:41 +0000
commit2401c512ef2e7ad90b133d18960b9279b9417eb8 (patch)
tree71ee28418860cd687dad0d7632f71e6f4b8091c8 /test
parent3433653240499b62751d2cea7dd61f082b82f1c7 (diff)
* lib/prime.rb: Optimize prime?
Adapted from patch by Jabari Zakiya [#12665] * test/test_prime.rb: Improve test git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rw-r--r--test/test_prime.rb17
1 files changed, 7 insertions, 10 deletions
diff --git a/test/test_prime.rb b/test/test_prime.rb
index b48ccae319..7f15894abf 100644
--- a/test/test_prime.rb
+++ b/test/test_prime.rb
@@ -140,17 +140,14 @@ class TestPrime < Test::Unit::TestCase
end
def test_prime?
- # zero and unit
- assert_not_predicate(0, :prime?)
- assert_not_predicate(1, :prime?)
-
- # small primes
- assert_predicate(2, :prime?)
- assert_predicate(3, :prime?)
+ PRIMES.each do |p|
+ assert_predicate(p, :prime?)
+ end
- # squared prime
- assert_not_predicate(4, :prime?)
- assert_not_predicate(9, :prime?)
+ composites = (0..PRIMES.last).to_a - PRIMES
+ composites.each do |c|
+ assert_not_predicate(c, :prime?)
+ end
# mersenne numbers
assert_predicate((2**31-1), :prime?)