diff options
Diffstat (limited to '.circleci/config.yml')
-rw-r--r-- | .circleci/config.yml | 69 |
1 files changed, 33 insertions, 36 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml index 67d8ab0e..14655862 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -8,14 +8,13 @@ workflows: version: 2 test: jobs: - - test-3.6 - - test-3.7 - - test-3.8 + - test-cli + - test-gui jobs: - test-3.6: &test-template + test-cli: docker: - - image: circleci/python:3.6-buster + - image: circleci/python:3.8-buster working_directory: ~/repo @@ -23,42 +22,40 @@ jobs: - checkout - run: - name: Install Qt5 binaries - command: | - sudo apt-get update - sudo apt-get install xvfb libdbus-1-3 libxkbcommon-x11-0 libxkbcommon-x11-dev - cd ~/ - wget https://download.qt.io/official_releases/qt/5.14/5.14.0/qt-opensource-linux-x64-5.14.0.run - chmod +x qt-opensource-linux-x64-5.14.0.run - xvfb-run ./qt-opensource-linux-x64-5.14.0.run --script ~/repo/.circleci/qt-installer-script.js --platform minimal --verbose + name: Install dependencies + command: | + sudo apt-get update + sudo apt-get -y install tor obfs4proxy + pip install poetry + cd ~/repo/cli + poetry install - run: - name: Install dependencies + name: Run tests command: | - sudo apt-get update - sudo apt-get install -y python3-pip xvfb tor obfs4proxy - sudo pip3 install poetry flake8 - poetry install + cd ~/repo/cli + poetry run pytest -v ./tests + + test-gui: + docker: + - image: circleci/python:3.8-buster + + working_directory: ~/repo + + steps: + - checkout - run: - name: Run flake tests - command: | - # stop the build if there are Python syntax errors or undefined names - flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics - # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + name: Install dependencies + command: | + sudo apt-get update + sudo apt-get install -y xvfb tor obfs4proxy gcc python3-dev + cd ~/repo/desktop + pip install briefcase pytest pytest-briefcase pytest-faulthandler pytest-qt + pip install $(python -c 'import toml; print(" ".join(toml.loads(open("pyproject.toml").read())["tool"]["briefcase"]["app"]["onionshare"]["requires"]))') - run: - name: Run unit tests + name: Run tests command: | - xvfb-run -s "-screen 0 1280x1024x24" poetry run ./tests/run.sh --rungui - - test-3.7: - <<: *test-template - docker: - - image: circleci/python:3.7-buster - - test-3.8: - <<: *test-template - docker: - - image: circleci/python:3.8-buster + cd ~/repo/desktop + xvfb-run ./tests/run.sh |