Ich trage zu einem R-Paket bei, das umfangreichen C-Code für die Berechnung verwendet.Unit-Tests für Code im Ordner/src eines R-Pakets?
Wir haben begonnen, Tests für R-Funktionen unter Verwendung des testthat-Pakets zu schreiben, indem wir die Tests in inst/tests
nach instructions here platzieren.
Ist das Testpaket für den direkten Test von C-Funktionen geeignet (z. B. solche ohne R-Schnittstellen)? Oder finden wir ein separates C-Testpaket? Wenn ja, 1) Wo sollten diese Tests hingehen, 2) Wie bekomme ich sie während R CMD check
, und 3) ist ein C-Test-Paket in diesem Zusammenhang besonders geeignet?
Es gibt eine Menge R-Funktionen, die C-Funktionen aufrufen, und ich kann diese aus R testen. Es gibt jedoch auch C-Funktionen, die nie von R aufgerufen werden, und wir produzieren mehr von diesen, wenn wir sie neu berechnen es ist wirklich keine eigenständige Bibliothek. –
Ich folge, dass das Schreiben von R-Wrappern in C-Funktionen mit Rcpp, basierend auf der [Rcpp-Paketbeschreibung] (http://cran.r-project.org/web/packages/Rcpp/index.html), die besagt " ein Framework, das es ermöglicht, C++ - Funktionen und -Klassen der R-Ebene auszusetzen ". Vielleicht ist der Ansatz, den ich geerbt habe, suboptimal, aber wir haben viele Listen mit variierten Parametern bestanden. –
Wenn Sie auf Rcpp lesen (insbesondere, was wir _Rcpp Attribute_ nennen), werden Sie sehen, dass das Wrapping von C (und C++) Funktionen jetzt trivial und voll automatisiert ist. –