Nothing
context("testing primeSieve")
test_that("primeSieve generates correct numbers", {
options(scipen = 999)
expect_equal(primeSieve(10), c(2L, 3L, 5L, 7L))
expect_equal(max(primeSieve(1000)), 997L)
expect_equal(min(primeSieve(1000)), 2L)
expect_equal(primeSieve(1), integer(0))
expect_equal(primeSieve(2), 2L)
expect_equal(primeSieve(6,8), 7)
expect_equal(primeSieve(999982, 10^6), 999983)
expect_equal(primeSieve(1e10, 1e10 + 20), 10000000019)
expect_equal(primeSieve(2, 7), c(2, 3, 5, 7))
expect_equal(primeSieve(10.1), primeSieve(10))
expect_equal(primeSieve(2.1, 10.9), primeSieve(3, 7))
expect_equal(primeSieve(1, 1), integer(0))
expect_equal(primeSieve(31625, 31630), 31627)
expect_equal(2L + length(primeSieve(5, 1e5)), length(primeSieve(1e5)))
## Primes obtained from https://primes.utm.edu
expect_equal(primeSieve(1e8, 1e8 + 100), c(100000007, 100000037, 100000039, 100000049, 100000073, 100000081))
## Primes obtained from http://compoasso.free.fr/primelistweb/page/prime/liste_online_en.php
expect_equal(primeSieve(1e10, 1e10 + 100), c(10000000019, 10000000033, 10000000061, 10000000069, 10000000097))
## Primes obtained from http://compoasso.free.fr/primelistweb/page/prime/liste_online_en.php
expect_equal(primeSieve(1e12 - 100, 1e12), c(999999999937, 999999999959, 999999999961, 999999999989))
## Large prime gap greater than 1e15 http://www.trnicely.net/gaps/gaps3.html
expect_equal(primeSieve(1693182318746371, 1693182318746371 + 1132),
c(1693182318746371, 1693182318747503))
## Test Parallel
funTestPar <- function(b1, b2, nT = 2) {
ser <- primeSieve(b1, b2)
par <- primeSieve(b1, b2, nThreads = nT)
all.equal(par, ser)
}
expect_true(funTestPar(1, 1e7))
expect_true(funTestPar(1e12, 1e12 + 1e7))
expect_true(funTestPar(1e15, 1e15 + 1e7))
# The following test can be used for fuller coverage but are commented
# because they take a bit of time. All results were confirmed with
# primesieve by Kim Walisch
gc()
expect_equal(length(primeSieve(633318687598976, 633318707598976)), 587185)
gc()
expect_equal(length(primeSieve(12e8)), 60454705)
gc()
expect_equal(length(primeSieve(39582118599936, 39582718599936, nThreads = 4)), 19161558)
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.