roxygen2를 사용하여 예제를 실행하지 않는 방법은 무엇입니까?
나는 지금 Bing Maps Key를 갖는 것에 의존하는 지오코딩 기능을 쓰고 있습니다.분명히 저는 제 것을 출판하지 않는 편이 낫습니다. 그리고 그 예시들은 그것 없이는 실패합니다.
사용자가 수동으로 실행하지만 실행되지 않는 예제를 포함하려면 어떻게 해야 합니까?R CMD check
?
사용하다\dontrun{}
#'@examples
#'\dontrun{
#'geocode("3817 Spruce St, Philadelphia, PA 19104")
#'geocode("Philadelphia, PA")
#'dat <- data.frame(value=runif(3),address=c("3817 Spruce St, Philadelphia, PA 19104","Philadelphia, PA","Neverneverland"))
#'geocode(dat)
#'}
사용할 수 있습니다.\donttest{}
예를 들면이 스니펫은 설명서에 제공되지만 RCMD Check로 테스트되지는 않습니다.
자세한 내용은 -->?example
#' @example
\donttest{
2^2
}
이 2^2는 실행할 때 실행되지 않습니다.devtools::check()
편집
최신 릴리즈 노트 또는 NEWS for R 4.0.0에 따른 예\donttest{}
이제 기본적으로 테스트됩니다.그러나 환경 변수를 설정하여 이를 재정의할 수 있습니다._R_CHECK_DONTTEST_EXAMPLES_
로.FALSE
.
RCMD check --as-cran은 이제 테스터에 지시하는 대신 \donttest 예제(example()에 의해 실행됨)를 실행합니다.환경변수 R_CHECK_DONTTEST_EXAMPLES를 거짓값으로 설정하여 개발 중 일시적으로 회피할 수 있습니다.
GitHub 이슈 토론(여기서 인정됨)에 따르면 Hadley Wickham은 다음과 같이 언급했습니다.
일반적으로 CRAN \dontrun{}에 대한 테스트를 실행하지 않으려는 경우 작동할 가능성이 더 높지만 \dontrun{}을(를) 사용하면 초기 제출이 실패할 수 있습니다.
계속해서 사용할 수 있는 다른 방법도 있습니다.donttest{}
해결 방법은 위에서 언급한 논의를 참조하십시오.
사용 중인 사용자를 위해@example path/to/example.R
대신에@examples
사용할 수 있는 태그\dontrun
환경에 직접적인 영향을 미칠 수 있습니다.example.R
파일. 예를 들어.
# example.R
\dontrun{
# this is a long running example
for(i in seq(1, 1e5)) { lm(mpg ~ wt, data = mtcars) }
}
# some other shorter example
2 + 2
Ari, 저도 roxygen2(버전 4.1.0)를 사용합니다.다음은 실제 부품의 시작까지 내 함수(gctemplate) 정의에서 myroxygen2 마크업의 끝입니다.
#' @examples
#' ## List all G-causalities in a VAR system of 5 variables that will be searched in the pattern of 1
#' ## causer (like-independent) variable and 2 like-dependents conditional on 5-(1+2)=2 of the remaining
#' ## variable(s) in the system. Variables are assigned to numbers 1 to nvars.
#' ## "1 2 5 3 4" in the resulting line of gctemplate is to indicate the
#' ## (conditonal, partial, etc.) G-causality from variable 1 to variables 2 and 5
#' ## conditonal on variables 3 and 4.
#' # gctemplate(5,1,2)
#' ## The number of all G-causalities to be searched in the above pattern.
#' #dim(gctemplate(5,1,2))[[1]]
#' @importFrom combinat combn
#' @export
gctemplate <- function(nvars, ncausers, ndependents){
...
저는 지씨의 돈트룬 방법을 알고 있습니다.
제 기술에서 수치 예제와 수치 예제를 설명하는 텍스트는 모두 주석입니다.이 둘 사이에 차이를 만들기 위해 들여쓰기를 사용합니다. "#' 뒤에는 각각 1개의 샤프와 2개의 샤프가 있습니다.저는 항상 패키지에 위의 "#' ##/' #" 기술을 사용합니다.사용자는 기능을 테스트할 때마다 복사-붙여넣기 작업을 수행할 수 있습니다.저에 따르면 이 기술은 소프트웨어 코딩 철학의 고전적인 댓글 폭격과 더 유사합니다.
\dontrun{}
올바른 기능입니까?다음을 참조:
설명을 위해 오류를 유발하는 코드를 포함하는 것이 유용한 경우가 많습니다.\dontrun{}을(를) 사용하면 실행되지 않는 예제에 코드를 포함할 수 있습니다. (이전에는 비슷한 목적으로 \donttest{}를 사용할 수 있었지만 실제로 테스트되었기 때문에 더 이상 권장되지 않습니다.)
출처: https://r-pkgs.org/man.html?q=donttest#man-functions
언급URL : https://stackoverflow.com/questions/12038160/how-to-not-run-an-example-using-roxygen2
'sourcecode' 카테고리의 다른 글
SQL Server에서 서로 다른 데이터 집합을 가진 두 데이터베이스에서 조인을 수행하고 오류가 발생하는 경우 (0) | 2023.06.23 |
---|---|
MongoDB: 경로에 위치(예: '$') 요소가 너무 많습니다. (0) | 2023.06.23 |
메서드 이름 끝에 있는 물음표는 루비에서 무엇을 의미합니까? (0) | 2023.06.23 |
Express + MongoDB를 위한 최고의 세션 스토리지 미들웨어 (0) | 2023.06.23 |
Git: 기본 저장소에서 Active Branch를 변경하는 올바른 방법은 무엇입니까? (0) | 2023.06.23 |