The workflow ran unittest against a bare checkout, so with the src/ layout apple_notes_cli was never importable and every run failed with ModuleNotFoundError. Local runs passed because `uv run` installs the project automatically, which hid it. Installs with `pip install -e .` first, and smoke-tests the console script so the packaging metadata is covered too. Verified in a clean Python 3.10 venv: 48 tests pass. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
23 lines
518 B
YAML
23 lines
518 B
YAML
name: tests
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
|
|
jobs:
|
|
test:
|
|
runs-on: macos-latest
|
|
strategy:
|
|
matrix:
|
|
python-version: ["3.10", "3.13"]
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
# src/ layout: the package must be installed to be importable.
|
|
- run: python -m pip install -e .
|
|
- run: python -m unittest discover -s tests -v
|
|
- run: apple-notes --help
|