From b2d586eb22decaeb707e1c40280969855247e91b Mon Sep 17 00:00:00 2001 From: Zilong-Li Date: Fri, 15 Dec 2023 09:31:18 +0100 Subject: [PATCH] add test-coverage workflow --- .Rbuildignore | 2 + .covrignore | 1 + .github/.gitignore | 1 + .github/workflows/test-coverage.yaml | 55 ++++++++++++++++++++++++++++ README.Rmd | 3 +- README.md | 2 + 6 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 .covrignore create mode 100644 .github/.gitignore create mode 100644 .github/workflows/test-coverage.yaml diff --git a/.Rbuildignore b/.Rbuildignore index 1f01835..6e0e30d 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -10,3 +10,5 @@ ^Makefile ^README.html .*\.tar\.gz$ +^.covrignore$ +^\.github$ diff --git a/.covrignore b/.covrignore new file mode 100644 index 0000000..589cb64 --- /dev/null +++ b/.covrignore @@ -0,0 +1 @@ +src/htslib-1.18/ diff --git a/.github/.gitignore b/.github/.gitignore new file mode 100644 index 0000000..2d19fc7 --- /dev/null +++ b/.github/.gitignore @@ -0,0 +1 @@ +*.html diff --git a/.github/workflows/test-coverage.yaml b/.github/workflows/test-coverage.yaml new file mode 100644 index 0000000..bb36381 --- /dev/null +++ b/.github/workflows/test-coverage.yaml @@ -0,0 +1,55 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +on: + push: + branches: [main, dev] + pull_request: + branches: [main, dev] + +name: test-coverage + +jobs: + test-coverage: + runs-on: ubuntu-latest + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + + steps: + - uses: actions/checkout@v3 + + - uses: r-lib/actions/setup-r@v2 + with: + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::covr + needs: coverage + + - name: Test coverage + run: | + covr::codecov( + quiet = FALSE, + clean = FALSE, + install_path = file.path(normalizePath(Sys.getenv("RUNNER_TEMP"), winslash = "/"), "package") + ) + shell: Rscript {0} + + - name: Show testthat output + if: always() + run: | + ## -------------------------------------------------------------------- + find ${{ runner.temp }}/package -name 'testthat.Rout*' -exec cat '{}' \; || true + shell: bash + + - name: Upload test results + if: failure() + uses: actions/upload-artifact@v3 + with: + name: coverage-test-failures + path: ${{ runner.temp }}/package + + - name: Upload coverage reports to Codecov + uses: codecov/codecov-action@v3 + env: + CODECOV_TOKEN: ${{ secrets.COV_TEST }} diff --git a/README.Rmd b/README.Rmd index 4867e86..c7971b2 100644 --- a/README.Rmd +++ b/README.Rmd @@ -18,6 +18,7 @@ knitr::opts_chunk$set( ![R-CMD-check](https://github.com/Zilong-Li/vcfppR/actions/workflows/check-release.yaml/badge.svg) +[![CRAN status](https://www.r-pkg.org/badges/version/vcfppR)](https://CRAN.R-project.org/package=vcfppR) The vcfppR package implements various useful functions for manipulating the VCF/BCF file in R using the C++ API of [vcfpp.h](https://github.com/Zilong-Li/vcfpp). @@ -98,4 +99,4 @@ allsvs <- sv$summary[-1] bar <- barplot(allsvs, ylim = c(0, 1.1*max(allsvs)), main = "Variant Count (all SVs)") text(bar, allsvs+4500, paste("n: ", allsvs, sep="")) -``` \ No newline at end of file +``` diff --git a/README.md b/README.md index 43c85f0..83233ed 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,8 @@ ![R-CMD-check](https://github.com/Zilong-Li/vcfppR/actions/workflows/check-release.yaml/badge.svg) +[![CRAN +status](https://www.r-pkg.org/badges/version/vcfppR)](https://CRAN.R-project.org/package=vcfppR) The vcfppR package implements various useful functions for manipulating