WenjieDu/TSDB

View on GitHub
.github/workflows/testing_ci.yml

Summary

Maintainability
Test Coverage
name: CI

on:
    push:
        branches:
            - main
            - dev
            - temp_test_branch  # if in need, create such a temporary branch to test some functions

    pull_request:
        branches:
            - dev

jobs:
    test:
        runs-on: ${{ matrix.os }}
        strategy:
            fail-fast: false
            matrix:
                os: [ ubuntu-latest, windows-latest, macOS-latest ]
                python-version: [ "3.8","3.11" ]

        steps:
            - uses: actions/checkout@v3
            - name: Set up Python ${{ matrix.python-version }}
              uses: actions/setup-python@v3
              with:
                  python-version: ${{ matrix.python-version }}

            - name: Install dependencies
              run: |
                  python -m pip install --upgrade pip
                  pip install -r requirements.txt
                  pip install pytest pytest-cov
                  pip install coverage

            - name: Test with pytest
              run: |
                  python -m pytest -rA tests/test_tsdb.py -s --cov=tsdb

            - name: Write the LCOV report
              run: |
                  python -m coverage lcov

            - name: Submit report
              uses: coverallsapp/github-action@master
              continue-on-error: true
              with:
                  github-token: ${{ secrets.GITHUB_TOKEN }}
                  path-to-lcov: 'coverage.lcov'