context("testing isPrimeRcpp") test_that("isPrimeRcpp generates correct numbers", { options(scipen = 999) expect_equal(isPrimeRcpp(10), FALSE) expect_equal(isPrimeRcpp(c(999983, 10^6)), c(TRUE, FALSE)) expect_equal(isPrimeRcpp(1), FALSE) expect_equal(all(isPrimeRcpp(c(2,3,5,7,11))), TRUE) expect_equal(1e10 + which(isPrimeRcpp((1e10 + 1):(1e10 + 1e4))), primeSieve(1e10, 1e10 + 1e4)) expect_equal(isPrimeRcpp(11:13), c(TRUE, FALSE, TRUE)) expect_true(isPrimeRcpp(.Machine$integer.max)) ## Test Names expect_equal(as.integer(names(isPrimeRcpp(100, namedVector = TRUE))), 100) expect_equal(as.numeric(names(isPrimeRcpp((10^12):(10^12 + 100), namedVector = TRUE))), (10^12):(10^12 + 100)) expect_equal(10000L + which(isPrimeRcpp(10001:15000)), primeSieve(10001, 15000)) expect_equal(1e10 + which(isPrimeRcpp((1e10 + 1):(1e10 + 5000))), primeSieve(1e10, 1e10 + 5000)) ## Test Parallel set.seed(150) samp <- sample(1e12, 10000) expect_equal(isPrimeRcpp(samp), isPrimeRcpp(samp, nThreads = 2)) ## Ensure stdThreadMax returns positive number expect_true(stdThreadMax() > 0) })