У меня есть функция вида func(expr, data.sizes)
, где параметр expr
является выражением, а параметр data.sizes
обычно, как следует из названия, представляет собой вектор или последовательность размеров данных. (например: c(10, 100, 1000)
или 10^seq(1, 3)
)
Я хотел бы написать несколько тестовых примеров для параметров моей функции, используя testthat
, но я новичок в модульном тестировании в R, поэтому я хотел бы знать, как можно проверить условия для параметра (ов) функции, используя testthat
?
Например, я хочу проверить возможное значение NA для параметра data.size
в моей функции, и я написал этот фрагмент для проверки в своей консоли: (функция доступна в Global Env.)
test_that("NA test for data.sizes", {
expect_false(is.na(data.sizes %in% func(expression, data.sizes = c(10, 100))))
})
который выдает ошибку:
* object 'data.sizes' not found
1: expect_false(is.na(data.sizes %in% func(expression, data.sizes = c(10,
10)))) at :2
2: quasi_label(enquo(object), label, arg = "object")
3: eval_bare(get_expr(quo), get_env(quo))
4: data.sizes %in% func(expression, data.sizes = c(10, 10))
Что я могу делать неправильно? Также каков синтаксис в целом для применения тестовых условий к параметрам функции с помощью testthat?