Repository: openego/ding0 (language: python)

Issue:
Migrate tests from travis-cI to github actions
Tests are failing due to limited execution time of travis-ci (max. 10m). I recommend to switch to github actions that offers [6h per job](https://docs.github.com/en/actions/reference/usage-limits-billing-and-administration). Do you agree, @gplssm ?


Discussion / hints:

Fix patch:
diff --git a/README.md b/README.md
index 3ec3db82..af584aac 100644
--- a/README.md
+++ b/README.md
@@ -1,8 +1,10 @@
 <img align="right" width="300" height="300" src="https://raw.githubusercontent.com/openego/ding0/dev/doc/images/DING0_Logo_300px.png">
 
+
+[![Coverage Status](https://coveralls.io/repos/github/openego/ding0/badge.svg?branch=dev)](https://coveralls.io/github/openego/ding0?branch=dev)
+[![Tests & coverage](https://github.com/openego/ding0/actions/workflows/tests-coverage.yml/badge.svg)](https://github.com/openego/ding0/actions/workflows/tests-coverage.yml)
 [![Documentation Status](https://readthedocs.org/projects/ding0/badge/?version=dev)](http://dingo.readthedocs.io/en/dev)
 [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.834751.svg)](https://doi.org/10.5281/zenodo.834751)
-[![Build Status](https://travis-ci.org/openego/ding0.svg?branch=dev)](https://travis-ci.org/openego/ding0)
 
 DING0
 =====
diff --git a/requirements.txt b/requirements.txt
index cd85f647..a356f8ba 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,6 +1,6 @@
 networkx == 2.5.1
 geopy == 2.1.0
-pandas == 1.2.4
+pandas <= 1.2.4
 pyproj == 3.0.1
 sqlalchemy <= 1.3.24
 geoalchemy2 == 0.6.3


Test patch:
diff --git a/.github/workflows/tests-coverage.yml b/.github/workflows/tests-coverage.yml
new file mode 100644
index 00000000..96ab4974
--- /dev/null
+++ b/.github/workflows/tests-coverage.yml
@@ -0,0 +1,34 @@
+# Tests with pytest the package and monitors the covarage and sends it to coveralls.io
+# Coverage is only send to coveralls.io when no pytest tests fail
+name: "Tests & coverage"
+
+on: [push]
+
+jobs:
+  build:
+    runs-on: ubuntu-latest
+    strategy:
+      fail-fast: false
+      matrix:
+        python-version: [ '3.6', '3.7', '3.8' ]
+    steps:
+    - name: Checkout repo
+      uses: actions/checkout@v2
+    - name: Set up Python
+      uses: actions/setup-python@v2
+      with:
+        python-version: ${{ matrix.python-version }}
+    - name: Install dependencies
+      run: |
+        pip3 install --upgrade pip
+        pip3 install -e $GITHUB_WORKSPACE[dev]
+        pip3 install coveralls
+    - name: Run tests and coverage
+      run: |
+        coverage run --source=ding0 -m pytest -vv
+    - name: Run coveralls
+      run: |
+        coveralls
+      env:
+        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+        COVERALLS_SERVICE_NAME: github
\ No newline at end of file