0

BioConductorRUnitガイドラインに従おうとしています。最小限の設定に従っているので、次のようになります。

Suggests: RUnit, BiocGenerics説明で

BiocGenerics:::testPackage("MyPackage")MyPackage / tests/runTests.Rにあります

といくつかのtest_XXX.RファイルMyPackage/inst/unitTests/

次のコマンドを使用して単一のテストファイルを実行した場合:

library(RUnit)
source("LIBRARY FILES")
source("MyPackage/inst/unitTests/test_getKeywordValue.R")
test_getKeywordValue()

テストは実行されます(失敗する必要がある場合は失敗します)が、実行すると

R CMD check MyPackage

コマンドは言う:

* checking tests ...
  Running ‘runTests.R’
 OK

MyPackage/inst/unitTestsただし、ディレクトリでテストを実行しないでください...

何が足りないの?

Platform: x86_64-apple-darwin9.8.0  
R version 2.15.2 (2012-10-26)
4

2 に答える 2

0

これに関する BioC ガイドラインはわかりませんが、いくつかの Rmetrics パッケージ用に Martin Maechler によって最初に開発されたスキームを使用する CRAN パッケージがいくつかあります。

これは、このR Wiki の投稿で説明されています。たとえば、RcppArmadillo や RcppGSL、またはその他のパッケージで、これのバリエーションを見ることができます。多くの場合、キーはtests/doRUnit.R、ソースまたはインストール済みパッケージから実行するために必要なピボットを行うファイルです。

于 2013-01-18T16:41:59.697 に答える
0

問題が解決しました。

これが話です:

私のパッケージに、次の行を含む .Rinstignore ファイルを置きました。

test/* 

グロブ スタイルのマッチング (.gitignore など) を期待していましたが、代わりに次のようにRShowDoc("R-exts")言います。

.Rinstignore は、perl スタイルの正規表現マッチングを行います。

したがって、私のルールtest/*は R によって次のように解釈されました。

Ignore all files starting with test followed by 0 or more '/' 

(部分 /* は、0 個以上の / 文字に一致すると解釈されました)

grepこれがどのように機能するかを示す簡単なチェック:

grep("test/*", "inst/unitTests/test_bar.R",perl=TRUE)
[1] 1

ラインの削除

test/* 

.Rinstignore から問題を解決しました。

于 2013-01-21T14:52:37.453 に答える