name: 'Tests' on: push: branches: [ '**' ] defaults: run: shell: bash jobs: build: env: DISPLAY: :0 test-python: runs-on: ubuntu-22.04 strategy: matrix: python-version: [ '3.10' ] # '3.7', '3.8', '3.9' name: 'Python' steps: - uses: actions/checkout@v2 - name: 'Install Python' uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} - name: 'Install pip' run: | function execute() { echo -e "\033[0;34m$*\033[0m"; "$@"; } execute python -m pip install --upgrade pip - name: 'Update Packages' run: | function execute() { echo -e "\033[0;34m$*\033[0m"; "$@"; } execute sudo apt update -y && sudo apt upgrade -y - name: 'Install Dependencies' run: | function execute() { echo -e "\033[0;34m$*\033[0m"; "$@"; } execute sudo apt install -y libmpv1 xvfb - name: 'Start Xvfb' run: | echo -e "\033[0;34msudo /usr/bin/Xvfb $DISPLAY -screen 0 1920x1080x24 &\033[0m"; sudo /usr/bin/Xvfb $DISPLAY -screen 0 1920x1080x24 & - name: 'Create Virtual Environment' run: | function execute() { echo -e "\033[0;34m$*\033[0m"; "$@"; } execute python -m venv venv execute source venv/bin/activate execute python -m pip install wheel execute python -m pip install -r tests/requirements.txt - name: 'Run Python Tests' run: | function execute() { echo -e "\033[0;34m$*\033[0m"; "$@"; } source venv/bin/activate execute python -m pytest