Как работать с "файлами примеров", используя testthat в R?
Я создаю пакет R, используя testthat
, Многие из функций, с которыми я работаю, требуют ввода файла и / или записи файла для вывода.
В настоящее время моя структура каталогов пакета R выглядит примерно так:
- R_package_name
-/tests
-/testthat.R
-/testthat
-/test_package.R
Например, функции в этой категории будут read.table()
а также write.table()
, Первый читает в каком-то файле, второй пишет.
Что является стандартом для создания "файлов примеров" для тестов с testthat
учитывая структуру пакета R? Я мог бы создать очень маленькие примеры файлов в качестве входных данных в tests
Допустим, я делаю тест для write.table()
:
test_that("check write.table", {
df = data.frame( n = c(2, 3, 5), s = c("aa", "bb", "cc"), b = c(TRUE, FALSE, TRUE))
expect_identical(write.table(df), ???)
})
РЕДАКТИРОВАТЬ: очевидно, макеты возможны в R: https://rdrr.io/a/cran/testthat/man/with_mock.html
1 ответ
Насколько я понимаю, стандартом было хранить данные в пакете как .RData
объект в папке \data данного пакета, и что если вы хотите проверить чтение этих данных, вам необходимо по существу вызвать этот набор данных, записать файл, проверить его чтение, а затем очистить.
Тем не менее, похоже, что может быть способ хранения файлов необработанных данных, ознакомьтесь с этой ссылкой для обработки необработанных данных. Вот еще одна полезная ссылка на создание пакета данных R. создание пакета данных R