# Workflow derived from https://github.com/r-lib/actions/tree/master/examples
# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help
on:
  push:
    branches: [main, master]
  pull_request:
    branches: [main, master]

name: test-coverage

jobs:
  test-coverage:
    runs-on: ubuntu-latest
    env:
      GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}

    steps:
      - uses: actions/checkout@v2
      - uses: n1hility/cancel-previous-runs@v2
        with:
          token: ${{ secrets.GITHUB_TOKEN }}

      - uses: r-lib/actions/setup-r@v2
        with:
          use-public-rspm: true

      # As cmdstanr is not yet on CRAN, configure the action to only install the
      # 'Depends' packages by default and then manually specify the 'Suggests'
      # packages that are needed for R CMD CHECK
      - uses: r-lib/actions/setup-r-dependencies@v2
        with:
          dependencies: NA
          extra-packages: |
            R.rsp
            knitr
            rcmdcheck
            rmarkdown
            lme4
            mice
            BH
            MCMCglmm
            ape
            stan-dev/cmdstanr
            RcppEigen
            emmeans
            projpred
            RWiener
            rtdists
            extraDistr
            spdep
            mnormt
            splines2
            arm
            statmod
            diffobj
            usethis
            testthat
            covr

      - name: Build Cmdstan
        run: |
          cmdstanr::check_cmdstan_toolchain(fix = TRUE)
          cmdstanr::install_cmdstan(cores = parallel::detectCores())
        shell: Rscript {0}

      - name: Test coverage
        run: covr::codecov()
        shell: Rscript {0}
