Add functional tests

4 jobs for master in 1 minute and 8 seconds (queued for 18 seconds)
Status Name Job ID Coverage
  Py36
passed test-py3.6 #108149

00:00:11

96.0%
 
  Py37
passed test-py3.7 #108150

00:00:11

96.0%
 
  Py38
passed test-py3.8 #108151

00:00:10

96.0%
 
  Py39
passed test-py3.9 #108152

00:00:35

96.0%