[R] R CMD check testing environment

Uwe Ligges ligges at statistik.uni-dortmund.de
Sun Aug 22 18:58:56 CEST 2004


Ross Boylan wrote:
> I can't tell from the docs  ("Writing R Extensions" 1.9.1) exactly what
> environment the tests, examples, and vignettes that R CMD check tries to
> run are in.
> 
> In particular:
> 1) how do I get the package loaded?
> 2) how do I access data in the data/ directory?
> 3) where is the material in the other directories?  (e.g., has inst/
> material been installed?  where?)
> 
> Apparently (section 1.3) stuff in demo/ is not checked, which seems odd.
> 
> By inspecting some other packages, it seems the answer to 1) is that the
> package is already loaded, so I don't need to say library(...).  In
> particular, I don't need to figure out what lib.loc is.
> 
> I have some C code as part of the package, so that (well the .so file)
> needs to be loaded too.

Yes. You don't need library() in the the help pages' exmaples, but you 
need it in tests.


> 2) Others seem to just say data(..), but this doesn't work for me.
> I created the data with
> save(gold, e2, q2, file="mspath/data/inputs", compress=TRUE)
> and later renamed the file to inputs.RData.  (check didn't think the
> file counted without the extension).

Indeed, the manuals tells us that saved images have to be called either
*.RData (note the capitalization) or *.rda.


> I have tried to access it in my test script (under tests/) with both
> load and data (e.g., data("inputs"), data("inputs.RData"),
> data(inputs)).  I get
> 
>>data(inputs)
> 
> Warning message: 
> Data set 'inputs' not found in: data(inputs) 

Works for me as "Mytests.R" in "Mypackage":

  library(Mypackage)
  data(MydataInMypackage)
  print(MydataInMypackage)



> For that matter, my assumed answer to 1) doesn't seem to be working out,
> because when I try to access one of my functions it tells me it can't
> find it.  The function name is the same as the package name.
> 
> Perhaps the problem is I have inferred answers from \example{}, and the
> story for tests/ is different.

Right, see above.


> Although I'm currently focussed on running a script in tests/, I'd like
> to know what the story is for \examples in documentation or vignettes.

You won't need library() in the examples ...


> Thanks.
> 
> P.S. Is there a typical way to produce the .Rout.save file used in
> tests/?  What I'm doing is a slightly awkward 2-step process.


Running R CMD check once, looking whether the Rout looks fine (this 
should be the step that takes most of the time, and R can't do it for 
you), rename the file it, finished.


Uwe Ligges




More information about the R-help mailing list