2016-09-22 7 views
0

Я отправил свой пакет в CRAN, и он не прошел проверку CRAN R CMD. Это ошибка они получают:Сбой пакета на CRAN из-за теста с использованием testthat

* checking tests ... ERROR 
Running the tests in ‘tests/testthat.R’ failed. 
Last 13 lines of output: 
    Type 'contributors()' for more information and 
    'citation()' on how to cite R or R packages in publications. 

    Type 'demo()' for some demos, 'help()' for on-line help, or 
    'help.start()' for an HTML browser interface to help. 
    Type 'q()' to quit R. 

    > library(testthat) 
    > library(prepdat) 
    > 
    > test_check("prepdat") 
    Error: On CRAN 
    testthat results  ================================================================ 
    OK: 0 SKIPPED: 0 FAILED: 0 
    Execution halted 

и это, как мой тестовый файл выглядит (и здесь есть ссылка на GitHub https://github.com/ayalaallon/prepdat

skip_on_cran() 
library(prepdat) 
data("finalized_stroopdata") 
data("stroopdata") 

context("Finalized table") 

test_finalized_stroopdata <- prep(
    dataset = stroopdata 
    , file_name = NULL 
    , file_path = NULL 
    , id = "subject" 
    , within_vars = c("block", "target_type") 
    , between_vars = c("order") 
    , dvc = "rt" 
    , dvd = "ac" 
    , keep_trials = NULL 
    , drop_vars = c() 
    , keep_trials_dvc = "raw_data$rt > 100 & raw_data$rt < 3000 & raw_data$ac  == 1" 
    , keep_trials_dvd = "raw_data$rt > 100 & raw_data$rt < 3000" 
    , id_properties = c() 
    , sd_criterion = c(1, 1.5, 2) 
    , percentiles = c(0.05, 0.25, 0.75, 0.95) 
    , outlier_removal = 2 
    , keep_trials_outlier = "raw_data$ac == 1" 
    , decimal_places = 0 
    , notification = TRUE 
    , dm = c() 
    , save_results = FALSE 
    , results_name = "results.txt" 
    , results_path = NULL 
    , save_summary = FALSE 
) 

test_that("Finialized table is correct", { 
    expect_equal(test_finalized_stroopdata, finalized_stroopdata) 
}) 

Как я могу это исправить

Любой? помощь будет очень признана,

Ayala

+0

Ваше намерение непонятно для меня. Вы хотите, чтобы это было пропущено на CRAN? –

+0

Да. Он терпит неудачу при проверке CRAN, хотя у меня есть skip_on_cran() – ayalaall

+1

Я думаю, вам нужно включить 'skip_on_cran()' в ваш блок кода 'test_that'. Не могли бы вы попробовать? –

ответ

1

Вы используете skip_on_cran неправильно. Он должен содержаться в вашем блоке test_that:

test_that("Finialized table is correct", { 
    skip_on_cran() 
    expect_equal(test_finalized_stroopdata, finalized_stroopdata) 
}) 
+0

Спасибо. Весь код, кроме 'context()', должен находиться внутри 'test_that', как показано здесь https://github.com/ayalaallon/prepdat/blob/master/tests/testthat/test_prep.R – ayalaall