test: refactor asserts to pytest style #2319
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: ops Tests | |
on: [push, pull_request, workflow_call] | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python 3 | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.11' | |
- name: Install tox | |
run: pip install tox~=4.2 | |
- name: Run linting | |
run: tox -e lint | |
static: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python 3 | |
uses: actions/setup-python@v2 | |
- name: Install tox | |
run: pip install tox~=4.2 | |
- name: Run static type checks | |
run: tox -e static | |
test: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-latest] | |
python-version: ["3.8", "3.10"] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install tox | |
run: pip install tox~=4.2 | |
- name: Run unit tests | |
run: tox -e unit | |
test-real-pebble: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
python-version: ["3.8", "3.10"] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Set up Go 1.20 | |
uses: actions/setup-go@v1 | |
with: | |
go-version: "1.20" | |
- name: Install tox | |
run: pip install tox~=4.2 | |
- name: Install Pebble | |
run: go install github.com/canonical/pebble/cmd/pebble@master | |
- name: Start Pebble | |
run: | | |
umask 0 | |
$HOME/go/bin/pebble run --create-dirs --http=:4000 & | |
env: | |
PEBBLE: /tmp/pebble | |
- name: Run Real pebble tests | |
run: tox -e unit -- test/test_real_pebble.py | |
env: | |
RUN_REAL_PEBBLE_TESTS: 1 | |
PEBBLE: /tmp/pebble | |
pip-install: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-latest] | |
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python 3 | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install build dependencies | |
run: pip install wheel build | |
- name: Build | |
run: python -m build | |
# Test that a pip install of the source dist .tar.gz will work | |
- name: Test 'pip install' | |
# Shouldn't happen, but pip install will fail if ls returns multiple lines | |
run: pip install $(ls dist/ops*.gz) |