testthat パッケージを使用して、より大きなリポジトリ内にある R パッケージをテストしています。R パッケージ外のファイルの内容をテストしたいと思います。
テスト中に R パッケージの外部にあるファイルを参照できますか?
私が試したこと
再現可能な例は、MyRepo.tar.gzとしてダウンロードできます。
私のリポジトリは「myRepo」と呼ばれ、R パッケージ、「myRpkg」、およびその他のスクリプトでいっぱいのフォルダーが含まれています。
~/MyRepo/
~/MyRepo/MyRpkg
~/MyRepo/Scripts
「MyRpkg」のテストは/tests/
フォルダーにあります
~/myRepo/myRpkg/tests/test.myscript.R
そして、Scripts フォルダー内のファイルをテストできるようにしたいと考えています。
~/MyRepo/Scripts/myscript.sh
スクリプトを読んで、次のような最初の行の内容をテストしたいと思います。
check.script <- readLines("../../../Scripts/myscript.sh")[1]
expect_true(grepl("echo", check.script))
MyRepo ディレクトリから開始すると、これは正常に機能します。
cd ~/MyRepo
R CMD check MyRpkg
しかし、別のディレクトリに移動すると失敗します:
cd
R CMD check MyRepo/MyRpkg