From 1f12d53330c09ea6107fa8b1fecfe4b0ac530af2 Mon Sep 17 00:00:00 2001 From: Stuart Wheater Date: Fri, 10 Apr 2026 11:54:51 +0100 Subject: [PATCH 1/2] Permit perf test duration to be set, seconds, by environment variable 'PERF_DURATION_SEC' --- tests/testthat/test-perf-meanDS.R | 4 ++-- tests/testthat/test-perf-varDS.R | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/testthat/test-perf-meanDS.R b/tests/testthat/test-perf-meanDS.R index 794e61b2..5004a995 100644 --- a/tests/testthat/test-perf-meanDS.R +++ b/tests/testthat/test-perf-meanDS.R @@ -30,7 +30,7 @@ test_that("numeric meanDS - performance", { input <- c(0.0, 1.0, 2.0, 3.0, 4.0) - .durationSec <- 30 # seconds + .durationSec <- base::as.integer(base::Sys.getenv("PERF_DURATION_SEC", unset = "30")) # defaults to 30 seconds .count <- 0 .start.time <- Sys.time() .current.time <- .start.time @@ -65,7 +65,7 @@ test_that("numeric meanDS, with NA - performance", { input <- c(0.0, NA, 2.0, NA, 4.0) - .durationSec <- 30 # seconds + .durationSec <- base::as.integer(base::Sys.getenv("PERF_DURATION_SEC", unset = "30")) # defaults to 30 seconds .count <- 0 .start.time <- Sys.time() .current.time <- .start.time diff --git a/tests/testthat/test-perf-varDS.R b/tests/testthat/test-perf-varDS.R index d468c5da..1e81e646 100644 --- a/tests/testthat/test-perf-varDS.R +++ b/tests/testthat/test-perf-varDS.R @@ -30,7 +30,7 @@ test_that("numeric varDS - performance", { input <- c(0.0, 1.0, 2.0, 3.0, 4.0) - .durationSec <- 30 # seconds + .durationSec <- base::as.integer(base::Sys.getenv("PERF_DURATION_SEC", unset = "30")) # defaults to 30 seconds .count <- 0 .start.time <- Sys.time() .current.time <- .start.time @@ -65,7 +65,7 @@ test_that("numeric varDS, with NA - performance", { input <- c(0.0, NA, 2.0, NA, 4.0) - .durationSec <- 30 # seconds + .durationSec <- base::as.integer(base::Sys.getenv("PERF_DURATION_SEC", unset = "30")) # defaults to 30 seconds .count <- 0 .start.time <- Sys.time() .current.time <- .start.time From e75797beb347b98c37e966937c24e0c8f2a4bf1b Mon Sep 17 00:00:00 2001 From: Stuart Wheater Date: Mon, 13 Apr 2026 12:35:23 +0100 Subject: [PATCH 2/2] Refactor perf test duration obtaining --- tests/testthat/perf_tests/perf_rate.R | 5 +++++ tests/testthat/test-perf-meanDS.R | 4 ++-- tests/testthat/test-perf-varDS.R | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/tests/testthat/perf_tests/perf_rate.R b/tests/testthat/perf_tests/perf_rate.R index 90905e12..b8930889 100644 --- a/tests/testthat/perf_tests/perf_rate.R +++ b/tests/testthat/perf_tests/perf_rate.R @@ -45,6 +45,11 @@ perf.reference.save <- function(perf.ref.name, rate, tolerance.lower, tolerance. .perf.reference <<- .perf.reference } +# Obtain performance test duration from PERF_DURATION_SEC environment variable, otherwise default.duration argument, otherwise "30". +perf.testduration <- function(default.duration = 30) { + base::as.integer(base::Sys.getenv("PERF_DURATION_SEC", unset = base::as.character(default.duration))) +} + perf.reference.rate <- function(perf.ref.name) { if (is.null(.perf.reference)) .load.pref() diff --git a/tests/testthat/test-perf-meanDS.R b/tests/testthat/test-perf-meanDS.R index 5004a995..e0915068 100644 --- a/tests/testthat/test-perf-meanDS.R +++ b/tests/testthat/test-perf-meanDS.R @@ -30,7 +30,7 @@ test_that("numeric meanDS - performance", { input <- c(0.0, 1.0, 2.0, 3.0, 4.0) - .durationSec <- base::as.integer(base::Sys.getenv("PERF_DURATION_SEC", unset = "30")) # defaults to 30 seconds + .durationSec <- perf.testduration(30) .count <- 0 .start.time <- Sys.time() .current.time <- .start.time @@ -65,7 +65,7 @@ test_that("numeric meanDS, with NA - performance", { input <- c(0.0, NA, 2.0, NA, 4.0) - .durationSec <- base::as.integer(base::Sys.getenv("PERF_DURATION_SEC", unset = "30")) # defaults to 30 seconds + .durationSec <- perf.testduration(30) .count <- 0 .start.time <- Sys.time() .current.time <- .start.time diff --git a/tests/testthat/test-perf-varDS.R b/tests/testthat/test-perf-varDS.R index 1e81e646..5d9cec4a 100644 --- a/tests/testthat/test-perf-varDS.R +++ b/tests/testthat/test-perf-varDS.R @@ -30,7 +30,7 @@ test_that("numeric varDS - performance", { input <- c(0.0, 1.0, 2.0, 3.0, 4.0) - .durationSec <- base::as.integer(base::Sys.getenv("PERF_DURATION_SEC", unset = "30")) # defaults to 30 seconds + .durationSec <- perf.testduration(30) .count <- 0 .start.time <- Sys.time() .current.time <- .start.time @@ -65,7 +65,7 @@ test_that("numeric varDS, with NA - performance", { input <- c(0.0, NA, 2.0, NA, 4.0) - .durationSec <- base::as.integer(base::Sys.getenv("PERF_DURATION_SEC", unset = "30")) # defaults to 30 seconds + .durationSec <- perf.testduration(30) .count <- 0 .start.time <- Sys.time() .current.time <- .start.time