On 9/4/12 8:38 AM, "Duncan Murdoch" <murdoch.dun...@gmail.com> wrote:
>On 04/09/2012 8:20 AM, Terry Therneau wrote: >> >> On 09/04/2012 05:00 AM, r-devel-requ...@r-project.org wrote: >> > The issue is not just about "CRAN" vs "off CRAN". >> > It is good to think about a more general scheme of >> > "light testing" vs "normal testing" vs "extensive testing", >> > e.g., for the situation where the package implements >> > (simulation/bootstrap/ ..) based inference, and the developer >> > (but not only) should be able to run the extensive tests. >> > >> > Martin >> >> I agree with Martin. A mechanism to specify testing level would be the >>best. >> Then CRAN can choose to set that variable to "3" say, with level 1 for >>extensive and 2 for >> usual. >> I'm quite willing to put up with the nuisance of print() >>enclosures. I prefer it to >> having yet another way to subvert the evaluation model. >> >> I'm a believer in testing everything possible in my packages, and >>wear it it as a badge >> of honor that the survival package has 4 lines of R code in the tests >>directory for every >> 3 in the R directory. But CRAN only needs to run a small subset of >>this. > >We have a mechanism to specify testing level: the --as-cran flag. We >could presumably make it more elaborate by adding other flags, or option >levels, or whatever. > >What I think we shouldn't do is try to create an R-level test that says > > if (testingLevel() > 3) { > doSomething >} > >because tests can be turned on and off, individually. If testingLevel 3 >specified tests (A, B, C), then is our testingLevel higher if we are >running tests (A, B, D, E, F, G)? Why not just test for the presence of >whichever test is most relevant to that particular code block, e.g. > > if ("D" %in% tests()) { > doSomething >} I would prefer the testingLevel() approach of the "D" %in% tests() approach, since testingLevel() provides a natural way to add successively greater test details without having to dig into the code to determine the set of tests. -Greg ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel