Skip to content

Add opt-in live TVMaze integration tests#169

Merged
IrishPrime merged 1 commit into
mainfrom
145/tvmaze-integration-tests
May 11, 2026
Merged

Add opt-in live TVMaze integration tests#169
IrishPrime merged 1 commit into
mainfrom
145/tvmaze-integration-tests

Conversation

@IrishPrime

Copy link
Copy Markdown
Owner

Introduce a parallel pytest test suite that exercises the real TVMaze API end-to-end. The new tests live under tests/integration/ and are gated behind an integration marker so they are skipped by default; the default unit tests remain fully offline.

Run the integration tests with:

uv run pytest -m integration

Each test issues real HTTP requests to https://api.tvmaze.com, so they require network access. They answer the question "do the unit test mocks still match what TVMaze actually returns?" without dragging the default test run onto the network or making CI depend on a live third party.

The new suite contains 23 cases: 21 parametrized filename/expected- metadata pairs covering Nielsen's filename-parsing patterns through TVMaze fetch, plus 2 cases that should raise ValueError during fetch.

addopts is reshaped from a string into a list. The list form makes the embedded -m "not integration" unambiguous to argument splitting and avoids needing escaped quotes in TOML.

Bump patch version.

Resolve #145.

Introduce a parallel `pytest` test suite that exercises the real TVMaze
API end-to-end. The new tests live under `tests/integration/` and are
gated behind an `integration` marker so they are skipped by default; the
default unit tests remain fully offline.

Run the integration tests with:

    uv run pytest -m integration

Each test issues real HTTP requests to `https://api.tvmaze.com`, so they
require network access. They answer the question "do the unit test mocks
still match what TVMaze actually returns?" without dragging the default
test run onto the network or making CI depend on a live third party.

The new suite contains 23 cases: 21 parametrized filename/expected-
metadata pairs covering Nielsen's filename-parsing patterns through
TVMaze fetch, plus 2 cases that should raise `ValueError` during
fetch.

`addopts` is reshaped from a string into a list. The list form makes
the embedded `-m "not integration"` unambiguous to argument splitting
and avoids needing escaped quotes in TOML.

Bump patch version.

Resolve #145.
@IrishPrime IrishPrime self-assigned this May 11, 2026
@IrishPrime IrishPrime merged commit 6531749 into main May 11, 2026
3 checks passed
@IrishPrime IrishPrime deleted the 145/tvmaze-integration-tests branch May 11, 2026 17:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add opt-in live TVMaze integration tests

1 participant