[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: autodep8 for R packages?



Followup: simple load-library tests for R are in autodep8 as of version
0.5 (now in unstable).

On 11/04/16 11:21, Andreas Tille wrote:
> On Sun, Apr 10, 2016 at 07:44:50PM +0200, Gordon Ball wrote:
>> This is my understanding. From [4] "If debian/tests/control is absent,
>> the autodep8 tool can generate an automatic control file.", so anything
>> with existing test rules should not be affected.
> 
> Sounds sensible. 
> 
>>> As an enhancement I would suggest to detect what test suite of R
>>> packages might be used by the package (testthat, ...) and run this one.
>>> This might enable more sophisticated testing.
>>
>> I agree that this would be valuable (much more scope to catch subtle
>> regressions than this test), but actually doing it seems difficult
>> today. I read #752609, and it seems to me that a universal way of
>> running tests is difficult while DESCRIPTION::Suggests are not uniformly
>> translated into debian dependencies.
> 
> The packager could (should?) decide to add stronger dependency if a
> package is needed for running a test.
>  
>> You can try various test-system specific heuristics (eg, `grep testthat
>> tests/*.R && grep-dctrl -F Suggests testthat DESCRIPTION`, if so run
>> those files with additional dependency r-cran-testthat), but awkward
>> corner cases seem likely. Some flag for preventing test generation would
>> also be needed.
> 
> This might be needed anyway. 
> 
>>> PS: BTW, I'd consider the Build-Time tests (see #752609) as similarly
>>> important to CI tests.
>>
>> I think the requirement is the same. If a package can run build-time
>> tests (and hence there is a mechanism for running them, and ensuring the
>> dependencies are available), then this can be fairly easily translated
>> into a CI target.
> 
> I think adding dependencies for full testing as Build-Depends is pretty
> cheap if there would be a chance to run the tests.
> 
> Kind regards
> 
>     Andreas.
>  
>>>> [1]: https://git.chronitis.net/autodep8.git/rrequire/
>>>> [2]: Packages are matched by source name /^r-/ and having a
>>>> ./DESCRIPTION file
>>> [3] https://git.chronitis.net/autodep8.git/blob/rrequire/test/r_test.sh
>>>
>> [4]: https://people.debian.org/~mpitt/autopkgtest/README.package-tests.html
>>
>>
> 


Reply to: