dist: xenial
sudo: true
language: python
python: "3.7"

jobs:
  include:

    - stage: code quality
      name: "pylint & mypy"
      install:
        - pip install git+https://github.com/PyCQA/pylint.git
        - pip install mypy
        - pip install -e .
      script:
        - pylint --rcfile=setup.cfg torba
        - mypy torba
      after_success: skip

    - &tests
      stage: tests
      env: TESTTYPE=unit
      install:
        - pip install tox-travis
      script: tox
    - <<: *tests
      python: "3.6"
    - <<: *tests
      env: TESTTYPE=integration
      install:
        - pip install tox-travis
        - pushd .. && git clone https://github.com/lbryio/electrumx.git --branch lbryumx && popd
        - pushd .. && git clone https://github.com/lbryio/orchstr8.git && popd

after_success:
  - pip install coverage
  - coverage combine tests/
  - bash <(curl -s https://codecov.io/bash)

cache:
  directories:
    - $HOME/.cache/pip
    - $TRAVIS_BUILD_DIR/.tox