chjackson / flexsurv

The flexsurv R package for flexible parametric survival and multi-state modelling
http://chjackson.github.io/flexsurv/
54 stars 28 forks source link

Cleaned tests, added CI & Code Coverage #72

Closed jrdnmdhl closed 4 years ago

jrdnmdhl commented 4 years ago

Cleaned Tests:

Cleaned up tests by removing print statements, suppressing spurious warnings, and avoiding blocks with no tests.

image

Added CI & Code Coverage:

Added continuous integration and code coverage reporting, including badges in the readme. Please note that getting the code coverage to work may require 5 minutes of configuration on github and codecov.io to work after the PR.

image

However, in order to get the code coverage to work, I had to comment out 12 tests in test_deriv.r and test_spline.R that were failing only when running the code coverage report. These failed tests all seemed to be based on bad model fits, but I have no idea what's causing it. You can find these tests by searching for "FAILS WHEN RUNNING CODE COVERAGE".

chjackson commented 4 years ago

Thanks Jordan. I'd really like to add this, but we can't remove tests of pretty basic stuff, like the spline models. I'm not familiar at all with covr. I ran covr::package_coverage(quiet=FALSE, clean=FALSE)locally and found it gave vastly different likelihoods in the original Royston and Parmar paper example. Could you work out why it's doing that? Isn't it running the same code on the same machine?

jrdnmdhl commented 4 years ago

Initially I was stumped, but I decided to try rolling back to the last major version of the covr package and surprisingly that worked. Accordingly, I have re-enabled the disabled tests and it produces code coverage. I will create an issue on the covr repository to see what they think might be going on.

chjackson commented 4 years ago

Thanks!

jrdnmdhl commented 4 years ago

Clicking on the travisCI badge in the readme should allow you to login into travisCI using your github account and get it configured. You'll also likely need to tell github to allow Travis to use the branch. Similar story with codecov. Let me know if I can help.