menu()不能在R中以非交互方式使用



在测试函数时,当我使用devtools::check()构建和检查包时,它会抛出错误Error: menu() cannot be used non-interactively

下面是一个小示例代码。

yes <- c("Yes", "Definitely", "Positive", "For sure", "Yup", "Yeah",
"Absolutely")
no <- c("Not sure", "Not now", "Negative", "No", "Nope", "Absolutely not")
ask_confirmation <- function(title = NULL, positive = yes, negative = no) {
options <- c(sample(positive, 1), sample(negative, 2)) # Mix which ones
options <- sample(options, 3) # Random order
sel <- menu(options, title = title)
invisible(c("Cancel", options)[sel + 1])
}

如何克服这个问题?如有任何帮助,我们将不胜感激。

我假设您正在测试自己的包。如果是这样,您可以将有问题的示例(调用menu()(放在donttest{ }块中。

参见写入R扩展

最新更新