From 3c7c6fc8e2efd1f3e94441129bc849e6d5708c7a Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sun, 27 Sep 2026 20:46:06 +0200 Subject: [PATCH] test: Use httpx2_mock fixture from httpx2-pytest 2 --- pyproject.toml | 2 +- tests/enhetsregisteret/test_get_enhet.py | 30 +++++++++---------- tests/enhetsregisteret/test_get_roller.py | 18 +++++------ tests/enhetsregisteret/test_get_underenhet.py | 18 +++++------ tests/enhetsregisteret/test_search_enhet.py | 26 ++++++++-------- .../test_search_underenhet.py | 10 +++---- 6 files changed, 52 insertions(+), 52 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 04078ae..7268f02 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -41,7 +41,7 @@ pyright = ["basedpyright==1.39.10"] ruff = ["ruff==0.16.4"] tests = [ "coverage>=7.6.12", - "httpx2-pytest>=1", + "httpx2-pytest>=2", "pytest-cov>=6.0.0", "pytest-watcher>=0.4.3", "pytest>=8.3.4", diff --git a/tests/enhetsregisteret/test_get_enhet.py b/tests/enhetsregisteret/test_get_enhet.py index 8e4eda0..8a15e6a 100644 --- a/tests/enhetsregisteret/test_get_enhet.py +++ b/tests/enhetsregisteret/test_get_enhet.py @@ -11,8 +11,8 @@ DATA_DIR = Path(__file__).parent.parent / "data" -def test_get_enhet(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_enhet(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/enheter/112233445", status_code=200, @@ -22,7 +22,7 @@ def test_get_enhet(httpx_mock: HTTPXMock) -> None: org = enhetsregisteret.Client().get_enhet("112233445") - requests = httpx_mock.get_requests() # pyright: ignore[reportUnknownMemberType] + requests = httpx2_mock.get_requests() # pyright: ignore[reportUnknownMemberType] assert len(requests) == 1 assert ( requests[0].headers["user-agent"] @@ -63,8 +63,8 @@ def test_get_enhet(httpx_mock: HTTPXMock) -> None: assert org.slettedato is None -def test_get_enhet_with_spaces_in_organisasjonsnummer(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_enhet_with_spaces_in_organisasjonsnummer(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/enheter/112233445", status_code=200, @@ -78,8 +78,8 @@ def test_get_enhet_with_spaces_in_organisasjonsnummer(httpx_mock: HTTPXMock) -> assert org.organisasjonsnummer == "112233445" -def test_get_enhet_when_deleted(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_enhet_when_deleted(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/enheter/123456789", status_code=200, @@ -101,8 +101,8 @@ def test_get_enhet_when_deleted(httpx_mock: HTTPXMock) -> None: @pytest.mark.parametrize("status_code", [404, 410]) -def test_get_enhet_when_4xx(httpx_mock: HTTPXMock, status_code: int) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_enhet_when_4xx(httpx2_mock: HTTPXMock, status_code: int) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/enheter/818511752", status_code=status_code, @@ -114,8 +114,8 @@ def test_get_enhet_when_4xx(httpx_mock: HTTPXMock, status_code: int) -> None: assert org is None -def test_get_enhet_when_bad_request(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_enhet_when_bad_request(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/enheter/818511752", status_code=400, @@ -136,8 +136,8 @@ def test_get_enhet_when_bad_request(httpx_mock: HTTPXMock) -> None: assert exc_info.value.status_code == 400 -def test_get_enhet_when_http_timeout(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_exception( # pyright: ignore[reportUnknownMemberType] +def test_get_enhet_when_http_timeout(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_exception( # pyright: ignore[reportUnknownMemberType] httpx2.ConnectTimeout("Connection refused"), ) @@ -155,8 +155,8 @@ def test_get_enhet_when_http_timeout(httpx_mock: HTTPXMock) -> None: assert exc_info.value.status_code is None -def test_get_enhet_when_other_error(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_exception( # pyright: ignore[reportUnknownMemberType] +def test_get_enhet_when_other_error(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_exception( # pyright: ignore[reportUnknownMemberType] RuntimeError("Something else than HTTP failed"), ) diff --git a/tests/enhetsregisteret/test_get_roller.py b/tests/enhetsregisteret/test_get_roller.py index 63eaa3e..ab354f6 100644 --- a/tests/enhetsregisteret/test_get_roller.py +++ b/tests/enhetsregisteret/test_get_roller.py @@ -11,8 +11,8 @@ DATA_DIR = Path(__file__).parent.parent / "data" -def test_get_roller_with_person(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_roller_with_person(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/enheter/810004622/roller", status_code=200, @@ -22,7 +22,7 @@ def test_get_roller_with_person(httpx_mock: HTTPXMock) -> None: rollegrupper = enhetsregisteret.Client().get_roller("810004622") - requests = httpx_mock.get_requests() # pyright: ignore[reportUnknownMemberType] + requests = httpx2_mock.get_requests() # pyright: ignore[reportUnknownMemberType] assert len(requests) == 1 assert ( requests[0].headers["user-agent"] @@ -52,8 +52,8 @@ def test_get_roller_with_person(httpx_mock: HTTPXMock) -> None: assert rolle.rekkefolge == 0 -def test_get_roller_with_spaces_in_organisasjonsnummer(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_roller_with_spaces_in_organisasjonsnummer(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/enheter/810004622/roller", status_code=200, @@ -69,8 +69,8 @@ def test_get_roller_with_spaces_in_organisasjonsnummer(httpx_mock: HTTPXMock) -> assert styret.type.kode == "STYR" -def test_get_roller_with_enhet(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_roller_with_enhet(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/enheter/810004622/roller", status_code=200, @@ -115,8 +115,8 @@ def test_get_roller_with_enhet(httpx_mock: HTTPXMock) -> None: @pytest.mark.parametrize("status_code", [404, 410]) -def test_get_underenhet_when_4xx(httpx_mock: HTTPXMock, status_code: int) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_underenhet_when_4xx(httpx2_mock: HTTPXMock, status_code: int) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/enheter/810004622/roller", status_code=status_code, diff --git a/tests/enhetsregisteret/test_get_underenhet.py b/tests/enhetsregisteret/test_get_underenhet.py index 9c97283..3ed7f05 100644 --- a/tests/enhetsregisteret/test_get_underenhet.py +++ b/tests/enhetsregisteret/test_get_underenhet.py @@ -11,8 +11,8 @@ DATA_DIR = Path(__file__).parent.parent / "data" -def test_get_underenhet(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_underenhet(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/underenheter/776655441", status_code=200, @@ -22,7 +22,7 @@ def test_get_underenhet(httpx_mock: HTTPXMock) -> None: org = enhetsregisteret.Client().get_underenhet("776655441") - requests = httpx_mock.get_requests() # pyright: ignore[reportUnknownMemberType] + requests = httpx2_mock.get_requests() # pyright: ignore[reportUnknownMemberType] assert len(requests) == 1 assert ( requests[0].headers["user-agent"] @@ -57,9 +57,9 @@ def test_get_underenhet(httpx_mock: HTTPXMock) -> None: def test_get_underenhet_with_spaces_in_organisasjonsnummer( - httpx_mock: HTTPXMock, + httpx2_mock: HTTPXMock, ) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/underenheter/776655441", status_code=200, @@ -73,8 +73,8 @@ def test_get_underenhet_with_spaces_in_organisasjonsnummer( assert org.organisasjonsnummer == "776655441" -def test_get_underenhet_when_deleted(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_underenhet_when_deleted(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/underenheter/987123456", status_code=200, @@ -96,8 +96,8 @@ def test_get_underenhet_when_deleted(httpx_mock: HTTPXMock) -> None: @pytest.mark.parametrize("status_code", [404, 410]) -def test_get_underenhet_when_4xx(httpx_mock: HTTPXMock, status_code: int) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_get_underenhet_when_4xx(httpx2_mock: HTTPXMock, status_code: int) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/underenheter/987123456", status_code=status_code, diff --git a/tests/enhetsregisteret/test_search_enhet.py b/tests/enhetsregisteret/test_search_enhet.py index ee0be5f..77b222c 100644 --- a/tests/enhetsregisteret/test_search_enhet.py +++ b/tests/enhetsregisteret/test_search_enhet.py @@ -31,8 +31,8 @@ def test_enhet_query() -> None: ) -def test_search_enhet(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_search_enhet(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url=( "https://data.brreg.no/enhetsregisteret/api/enheter" @@ -55,7 +55,7 @@ def test_search_enhet(httpx_mock: HTTPXMock) -> None: ), ) - requests = httpx_mock.get_requests() # pyright: ignore[reportUnknownMemberType] + requests = httpx2_mock.get_requests() # pyright: ignore[reportUnknownMemberType] assert len(requests) == 1 assert ( requests[0].headers["user-agent"] @@ -105,8 +105,8 @@ def test_search_enhet(httpx_mock: HTTPXMock) -> None: assert org.slettedato is None -def test_search_enhet_with_empty_response(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_search_enhet_with_empty_response(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url=("https://data.brreg.no/enhetsregisteret/api/enheter?navn=jibberish"), status_code=200, @@ -130,15 +130,15 @@ def test_search_enhet_with_empty_response(httpx_mock: HTTPXMock) -> None: assert page.items == [] -def test_search_enhet_with_pagination(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_search_enhet_with_pagination(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/enheter?navn=Sesam&size=2", status_code=200, headers={"content-type": "application/json"}, content=(DATA_DIR / "enheter-search-page1-response.json").read_bytes(), ) - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url="https://data.brreg.no/enhetsregisteret/api/enheter?navn=Sesam&page=1&size=2", status_code=200, @@ -153,7 +153,7 @@ def test_search_enhet_with_pagination(httpx_mock: HTTPXMock) -> None: ), ) - assert len(httpx_mock.get_requests()) == 1 # pyright: ignore[reportUnknownMemberType] + assert len(httpx2_mock.get_requests()) == 1 # pyright: ignore[reportUnknownMemberType] assert list(cursor.page_numbers) == [0, 1] @@ -165,7 +165,7 @@ def test_search_enhet_with_pagination(httpx_mock: HTTPXMock) -> None: "SESAM AS", "SESAM FAMILIEBARNEHAGE", ] - assert len(httpx_mock.get_requests()) == 1 # pyright: ignore[reportUnknownMemberType] + assert len(httpx2_mock.get_requests()) == 1 # pyright: ignore[reportUnknownMemberType] # Fetching a new page should trigger an HTTP request: page1 = cursor.get_page(1) @@ -174,13 +174,13 @@ def test_search_enhet_with_pagination(httpx_mock: HTTPXMock) -> None: assert [org.navn for org in page1.items] == [ "SESAM FILMKLUBB", ] - assert len(httpx_mock.get_requests()) == 2 # pyright: ignore[reportUnknownMemberType] + assert len(httpx2_mock.get_requests()) == 2 # pyright: ignore[reportUnknownMemberType] # Fetching a page that does not exist should return None, and not trigger # any HTTP requests: page2 = cursor.get_page(2) assert page2 is None - assert len(httpx_mock.get_requests()) == 2 # pyright: ignore[reportUnknownMemberType] + assert len(httpx2_mock.get_requests()) == 2 # pyright: ignore[reportUnknownMemberType] # Iterating over the pages returns all pages: assert list(cursor.pages) == [page0, page1] @@ -192,7 +192,7 @@ def test_search_enhet_with_pagination(httpx_mock: HTTPXMock) -> None: "SESAM FILMKLUBB", ] # This does not trigger any HTTP requests as we already have all the pages: - assert len(httpx_mock.get_requests()) == 2 # pyright: ignore[reportUnknownMemberType] + assert len(httpx2_mock.get_requests()) == 2 # pyright: ignore[reportUnknownMemberType] # Iterating over the items again works: assert [org.navn for org in cursor.items] == [ diff --git a/tests/enhetsregisteret/test_search_underenhet.py b/tests/enhetsregisteret/test_search_underenhet.py index a3c295d..6ada817 100644 --- a/tests/enhetsregisteret/test_search_underenhet.py +++ b/tests/enhetsregisteret/test_search_underenhet.py @@ -28,8 +28,8 @@ def test_underenhet_query() -> None: ) -def test_search_underenhet(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_search_underenhet(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url=( "https://data.brreg.no/enhetsregisteret/api/underenheter" @@ -50,7 +50,7 @@ def test_search_underenhet(httpx_mock: HTTPXMock) -> None: ), ) - requests = httpx_mock.get_requests() # pyright: ignore[reportUnknownMemberType] + requests = httpx2_mock.get_requests() # pyright: ignore[reportUnknownMemberType] assert len(requests) == 1 assert ( requests[0].headers["user-agent"] @@ -91,8 +91,8 @@ def test_search_underenhet(httpx_mock: HTTPXMock) -> None: assert org.slettedato is None -def test_search_underenhet_with_empty_response(httpx_mock: HTTPXMock) -> None: - httpx_mock.add_response( # pyright: ignore[reportUnknownMemberType] +def test_search_underenhet_with_empty_response(httpx2_mock: HTTPXMock) -> None: + httpx2_mock.add_response( # pyright: ignore[reportUnknownMemberType] method="GET", url=("https://data.brreg.no/enhetsregisteret/api/underenheter?navn=jibberish"), status_code=200,