Skip to content

Rout for library/base/R-ex/Extract.data.frame.R

4 messages · Vadim Ogranovich, Uwe Ligges, Martin Maechler +1 more

#
Hi,
 
I am writing a light-weight data frame class and want to borrow the test
cases from the standard data frame. I found the test cases in
library/base/R-ex/Extract.data.frame.R, but surprisingly no
corresponding .Rout files. In fact there is no *.Rout file in the entire
tarball. Not that I cann't generate them, but I am just curious why they
are not there? How does the base package get tested?
 
Thanks,
Vadim
1 day later
#
Vadim Ogranovich wrote:

            
The base packages have their test cases in
...R/tests rather than ....R/src/library/packagename

Uwe Ligges
#

        
UweL> Vadim Ogranovich wrote:
>> Hi,
    >> 
    >> I am writing a light-weight data frame class and want to
    >> borrow the test cases from the standard data frame. I
    >> found the test cases in
    >> library/base/R-ex/Extract.data.frame.R, but surprisingly
    >> no corresponding .Rout files. In fact there is no *.Rout
    >> file in the entire tarball. Not that I cann't generate
    >> them, but I am just curious why they are not there? How
    >> does the base package get tested?
    >> 
    >> Thanks, Vadim

    UweL> The base packages have their test cases in ...R/tests
    UweL> rather than ....R/src/library/packagename

yes, and the *examples* from the help pages are just run, and
not compared to prespecified output in *.Rout.save (sic!) files.
In an *installed* (not the source!) version of R or an R package 
you find the R code for all the examples from the help pages
in <pkg>/R-ex/*.R.   
That's the same for all R packages, not just the standard
packages.

Martin Maechler
#
Martin Maechler wrote:

            
Vadim

I'll expand a bit on Martin's comment. It is hard to test the output of 
all examples because some examples use random numbers, and for others 
the precision may vary a bit on different platforms. I typically add 
important examples to the tests directory, set the random number 
generation, and compare results within tolerances that work on different 
platforms.

Paul Gilbert