From 0b0457d69482a09990bd95b849c1c069b23db097 Mon Sep 17 00:00:00 2001 From: davidhallam4-nhs <110543996+davidhallam4-nhs@users.noreply.github.com> Date: Tue, 13 Feb 2024 12:15:35 +0000 Subject: [PATCH] 60 - fix failure where next page url wasn't being prefixed by the https://host --- mesh_client/__init__.py | 4 ++-- poetry.lock | 10 +++++----- pyproject.toml | 2 +- tests/mesh_sandbox_tests.py | 6 ++++++ 4 files changed, 14 insertions(+), 8 deletions(-) diff --git a/mesh_client/__init__.py b/mesh_client/__init__.py index 0540a10..4cb762d 100644 --- a/mesh_client/__init__.py +++ b/mesh_client/__init__.py @@ -532,7 +532,7 @@ def list_messages(self, max_results: Optional[int] = None, workflow_filter: Opti if workflow_filter: params["workflow_filter"] = workflow_filter - result = self._inbox_v2_page(f"{self.mailbox_url}/inbox", params=params) + result = self._inbox_v2_page(params=params) return cast(List[str], result.get("messages", [])) @@ -813,7 +813,7 @@ def _next_messages(page_result: ListMessageResponse_v2) -> Tuple[Optional[str], next_page, messages = _next_messages(result) yield from messages while next_page: - result = self._inbox_v2_page(url=next_page) + result = self._inbox_v2_page(f"{self._url}{next_page}") next_page, messages = _next_messages(result) yield from messages diff --git a/poetry.lock b/poetry.lock index 7820b80..9797a05 100644 --- a/poetry.lock +++ b/poetry.lock @@ -893,13 +893,13 @@ testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "no [[package]] name = "pytest-httpserver" -version = "1.0.8" +version = "1.0.9" description = "pytest-httpserver is a httpserver for pytest" optional = false -python-versions = ">=3.8,<4.0" +python-versions = ">=3.8" files = [ - {file = "pytest_httpserver-1.0.8-py3-none-any.whl", hash = "sha256:24cd3d9f6a0b927c7bfc400d0b3fda7442721b8267ce29942bf307b190f0bb09"}, - {file = "pytest_httpserver-1.0.8.tar.gz", hash = "sha256:e052f69bc8a9073db02484681e8e47004dd1fb3763b0ae833bd899e5895c559a"}, + {file = "pytest_httpserver-1.0.9-py3-none-any.whl", hash = "sha256:5c84c372564b627521784909b8c8b45c5ededbae2406f7624e201dd86ae0610a"}, + {file = "pytest_httpserver-1.0.9.tar.gz", hash = "sha256:9429f26c7ad7b1677dc2fa3bc9e928601f0e9b4ba0388edf961162be1242a662"}, ] [package.dependencies] @@ -1312,4 +1312,4 @@ testing = ["big-O", "flake8 (<5)", "jaraco.functools", "jaraco.itertools", "more [metadata] lock-version = "2.0" python-versions = ">=3.7" -content-hash = "61bd003f1d9cf75905567bfbacfa08664ce0a23d8fb60a305c0857f77827e96d" +content-hash = "189b0dd8349c2d9454a2e39f3600305bdfcedc6d5c8a965088c3a7d30dfbf55f" diff --git a/pyproject.toml b/pyproject.toml index 4a87bd2..75ee9d5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -46,7 +46,7 @@ coverage = "^7.2.7" pytest = "^7.4.0" importlib-metadata = {version = ">=4.11.4", python = "<3.12"} pytest-httpserver = {version = "^1.0.8", python = ">=3.8,<4.0"} -ruff = "^0.2.0" +ruff = "^0" boto3 = "^1.33.7" [tool.poetry.group.local.dependencies] diff --git a/tests/mesh_sandbox_tests.py b/tests/mesh_sandbox_tests.py index 5bb9af6..39fc70d 100644 --- a/tests/mesh_sandbox_tests.py +++ b/tests/mesh_sandbox_tests.py @@ -96,6 +96,12 @@ def test_send_receive(alice: MeshClient, bob: MeshClient): assert bob.list_messages() == [] +def test_iteration_pages(alice: MeshClient, bob: MeshClient): + sent_message_ids = {alice.send_message(bob_mailbox, b"Hello Bob 1", workflow_id=uuid4().hex) for _ in range(25)} + captured_message_ids = set(bob.iterate_message_ids(batch_size=10)) + assert sent_message_ids == captured_message_ids + + def test_send_receive_combine_streams_part1_multiple_of_chunk_size(alice: MeshClient, bob: MeshClient): part1_length = 10 part2_length = 23