R パッケージ ( https://github.com/beerda/hexmatrix )をテストするために testthat を使用しています。最近、C++ のテストを開始testthat::use_catch()
しました。C++ Catch を使用した単体テスト用のパッケージをセットアップする必要がある を実行し、いくつかのテストを作成しました。によって実行された場合、テストは正しく実行されdevtools::test()
ます。ただし、R CMD check
またはを実行しようとするdevtools::check()
と、次のエラー メッセージが表示されます。
Running ‘testthat.R’ (1.8s)
Running the tests in ‘tests/testthat.R’ failed.
Last 13 lines of output:
> test_check("hexmatrix")
── Error (test-cpp.R:1:1): (code run outside of `test_that()`) ─────────────────
Error: The xml2 package must be installed in order to use `run_cpp_tests()`
ℹ Do you need to run `install.packages('xml2')`?
Backtrace:
█
1. └─testthat::run_cpp_tests("hexmatrix") test-cpp.R:1:0
2. └─testthat:::check_installed("xml2", "run_cpp_tests()")
══ testthat results ═══════════════════════════════════════════════════════════
Error (test-cpp.R:1:1): (code run outside of `test_that()`)
[ FAIL 1 | WARN 0 | SKIP 0 | PASS 909 ]
Error: Test failures
Execution halted
xml2 パッケージがインストールされ、rlang::check_installed("xml2") が TRUE を返します。
何らかの形で接続されているかどうかわからない: コマンドを手動で実行しようとするとrun_cpp_tests("hexmatrix")
、次のエラーが表示されます。
Error in read_xml.raw(charToRaw(enc2utf8(x)), "UTF-8", ..., as_html = as_html, :
XML declaration allowed only at the start of the document [64]
何がうまくいかないのか誰にも分かりませんか?前もって感謝します。