name: Linux_CI

on: [push, pull_request]

jobs:
  build:

    runs-on: ubuntu-latest
    strategy:
      matrix:
        python-version: ['3.9']

    name: Python ${{ matrix.python-version }} CI

    steps:
    - uses: actions/checkout@v2
    - run: git fetch --prune --unshallow

    - name: Setup python
      uses: actions/setup-python@v2
      with:
        python-version: ${{ matrix.python-version }}
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        python -m pip install -r requirements.txt
    - name: install coverage
      run: pip install coverage
    - name: install mypy
      run: pip install mypy
    - name: install pycodestyle
      run: pip install pycodestyle
    - name: install pytest-xdist
      run: pip install pytest-xdist
    - name: mypy check
      run: |
        mypy -p AerialNavigation
        mypy -p ArmNavigation
        mypy -p Bipedal
        mypy -p InvertedPendulumCart
        mypy -p Localization
        mypy -p Mapping
        mypy -p PathPlanning
        mypy -p PathTracking
        mypy -p SLAM
    - name: do diff style check
      run: bash rundiffstylecheck.sh
    - name: do all unit tests
      run: bash runtests.sh




