refactor tests
Publish container image / Build and push (push) Successful in 32s

This commit is contained in:
2026-07-26 23:49:40 +02:00
parent 5ef10d28fe
commit ce9f1e3d20
32 changed files with 1546 additions and 1923 deletions
+20 -26
View File
@@ -32,37 +32,31 @@ def runtime(opencode: object, gitea: object) -> Runtime:
)
async def test_close_releases_provider_clients_in_order() -> None:
events: list[str] = []
value = runtime(ClosingClient("opencode", events), ClosingClient("gitea", events))
await value.close()
assert events == ["opencode", "gitea"]
async def test_close_still_releases_gitea_when_opencode_close_fails() -> None:
@pytest.mark.parametrize(
("opencode_error", "gitea_error", "expected_error"),
[
(None, None, None),
(RuntimeError("opencode close failed"), None, "opencode close failed"),
(None, RuntimeError("gitea close failed"), "gitea close failed"),
],
ids=["success", "opencode-failure", "gitea-failure"],
)
async def test_close_releases_provider_clients_in_order(
opencode_error: Exception | None,
gitea_error: Exception | None,
expected_error: str | None,
) -> None:
events: list[str] = []
value = runtime(
ClosingClient("opencode", events, RuntimeError("opencode close failed")),
ClosingClient("gitea", events),
ClosingClient("opencode", events, opencode_error),
ClosingClient("gitea", events, gitea_error),
)
with pytest.raises(RuntimeError, match="opencode close failed"):
await value.close()
assert events == ["opencode", "gitea"]
async def test_close_propagates_gitea_close_failure_after_opencode_closes() -> None:
events: list[str] = []
value = runtime(
ClosingClient("opencode", events),
ClosingClient("gitea", events, RuntimeError("gitea close failed")),
)
with pytest.raises(RuntimeError, match="gitea close failed"):
if expected_error is None:
await value.close()
else:
with pytest.raises(RuntimeError, match=expected_error):
await value.close()
assert events == ["opencode", "gitea"]