Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[JOSS Review] Add test coverage #12

Closed
fawda123 opened this issue Mar 11, 2024 · 4 comments
Closed

[JOSS Review] Add test coverage #12

fawda123 opened this issue Mar 11, 2024 · 4 comments

Comments

@fawda123
Copy link

fawda123 commented Mar 11, 2024

Consider adding test covering to your CI, including the badge showing percentage of the package that's covered. You've got a bunch of tests in tests/testthat, but it would be nice to see how much of the package is covered. This should be pretty straightforward with usethis::use_coverage().

openjournals/joss-reviews#6389

@k-doering-NOAA
Copy link

I ran covr::package_coverage() on a clone of the main branch and coverage is indeed high! It would be worth showing off with a badge on the readme.

covr::package_coverage()
SSN2 Coverage: 85.78%
R/SSN_to_SSN2.R: 0.00%
src/init.c: 0.00%     
R/pseudoR2.R: 33.33%
R/create_netgeometry.R: 42.86%
R/utils.R: 44.44%
R/ssn_import_predpts.R: 49.23%
R/AIC.R: 50.00%
R/ssn_get_data.R: 50.00%
R/partition.R: 53.33%
R/laploglik.R: 54.55%
R/ssn_import.R: 58.33%
R/checks.R: 59.32%
R/ssn_put_data.R: 61.29%
R/get_anisotropy_corrected.R: 61.90%
R/get_cholprods.R: 65.22%
R/augment.R: 70.37%
R/get_dist_predbk_object.R: 72.50%
R/random.R: 73.33%
R/deviance.R: 75.00%
R/restruct_ssn_missing.R: 75.00%
R/ssn_update_path.R: 75.00%
R/anova.R: 75.34%
R/local.R: 76.32%
R/get_eigenprods.R: 77.27%
R/optim.R: 78.95%
R/randcov_vector.R: 79.41%
R/get_data_object_glm.R: 79.47%
R/predict_glm.R: 79.80%
R/logLik.R: 80.00%
R/ssn_split_predpts.R: 80.00%
R/createBinaryID.R: 80.56%
R/loocv_glm.R: 80.58%
R/get_cov_matrix.R: 81.48%
R/ssn_write.R: 82.61%
R/predict.R: 82.69%
R/residuals.R: 83.33%
R/get_data_object.R: 84.85%
R/ssn_get_netgeometry.R: 85.71%
R/use_laploglik.R: 85.94%
R/plot.R: 86.07%
R/loocv.R: 86.52%
R/tidy.R: 87.08%
R/get_dist_pred_object.R: 87.08%
R/print.SSN.R: 87.50%
R/ssn_rbinom.R: 87.50%
R/ssn_create_distmat.R: 87.69%
R/ssn_glm.R: 88.46%
R/glances.R: 88.89%
src/test_fc_UNIX.c: 89.47%
R/copy_lsn_to_temp.R: 90.00%
R/cov_initial_search_glm.R: 90.82%
R/ssn_subset.R: 90.85%
R/ssn_get_stream_distmat.R: 90.91%
R/ssn_rinvgauss.R: 90.91%
R/covmatrix.R: 91.07%
R/partition_vector.R: 91.30%
R/ssn_rpois.R: 91.67%
R/ssn_rnorm.R: 92.42%
R/fitted.R: 93.33%
R/ssn_rgamma.R: 93.75%
R/ssn_rnbinom.R: 93.75%
R/coef.R: 94.12%
R/get_Torgegram_initial_object.R: 94.44%
R/cov_initial_search.R: 94.51%
R/get_model_stats_glm.R: 95.86%
R/ssn_rbeta.R: 96.15%
R/get_model_stats.R: 96.27%
R/get_cov_vector.R: 96.97%
R/initial.R: 97.37%
R/initial_NA.R: 97.75%
R/laploglik_products.R: 97.95%
R/Torgegram.R: 98.11%
R/ssn_lm.R: 98.39%
R/use_gloglik.R: 98.39%
R/get_dist_object.R: 98.61%
R/print.R: 99.34%
R/amongSitesDistMat.R: 100.00%
R/confint.R: 100.00%
R/cooks.distance.R: 100.00%
R/cov_betahat_adjust.R: 100.00%
R/cov_estimate.R: 100.00%
R/cov_matrix.R: 100.00%
R/cov_vector.R: 100.00%
R/formula.R: 100.00%
R/get.rid.fc.R: 100.00%
R/getObsRelationshipsDF.R: 100.00%
R/getPredRelationshipsDF.R: 100.00%
R/glance.R: 100.00%
R/gloglik.R: 100.00%
R/gloglik_products.R: 100.00%
R/hatvalues.R: 100.00%
R/influence.R: 100.00%
R/labels.R: 100.00%
R/model.frame.R: 100.00%
R/model.matrix.R: 100.00%
R/names.SSN.R: 100.00%
R/optim2orig.R: 100.00%
R/orig2optim.R: 100.00%
R/params.R: 100.00%
R/ssn_simulate.R: 100.00%
R/summary.R: 100.00%
R/summary.SSN.R: 100.00%
R/transform_anis.R: 100.00%
R/varcomp.R: 100.00%
R/vcov.R: 100.00%

@michaeldumelle
Copy link
Collaborator

Thank you for the great suggestion @fawda123, and thanks @k-doering-NOAA for locally running covr::package_coverage(). I would very much love to add this badge, and I recognize the importance of incorporating CI test coverage. Unfortunately, USEPA GitHub does not currently allow their repositories to use certain cloud-based services, one of which is codecov.io. So I cannot incorporate the badge, but maybe there is another way to communicate the coverage of the package as indicated by covr::package_coverage()? Also tagging @mikemahoney218. Thank you!

@fawda123
Copy link
Author

@michaeldumelle that's a bummer, but I understand the limitations. It's possible you could fork the repo to your personal account and setup the codecov CI there? Then you could just put the link to the badge from your account on the USEPA readme? This isn't ideal though as it's not really continuous integration - youd' have to make sure that the USEPA repo is always in sync with your personal. So maybe not... just a suggestion, I don't think you should do this. You can close this issue if you like.

@michaeldumelle
Copy link
Collaborator

@fawda123 thanks, and I agree it is a total bummer! A few of us are in discussions about adding coverage CI to USEPA repositories, so if this becomes feasible in the future, I will certainly add the codecov CI badge to the SSN2 README.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants