From 8deaaf9f024e9ad63d88b58360d8c1e13ece3b2b Mon Sep 17 00:00:00 2001 From: aya Date: Sun, 20 Oct 2024 16:36:10 +0300 Subject: [PATCH 1/3] adding invalid ascending test --- tests/store/test_sorting.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/tests/store/test_sorting.py b/tests/store/test_sorting.py index 512e44b7..e92f78c0 100644 --- a/tests/store/test_sorting.py +++ b/tests/store/test_sorting.py @@ -13,7 +13,7 @@ class TestSorting(StepsStore): self.publish_message(message=message) expected_message_hash_list.append(self.compute_message_hash(self.test_pubsub_topic, message)) for node in self.store_nodes: - store_response = self.get_messages_from_store(node, page_size=5, ascending=ascending) + store_response = self.get_messages_from_store(node, page_size=5, ascending=True) response_message_hash_list = [] for index in range(len(store_response.messages)): response_message_hash_list.append(store_response.message_hash(index)) @@ -21,3 +21,17 @@ class TestSorting(StepsStore): assert response_message_hash_list == expected_message_hash_list[:5], "Message hash mismatch for acending order" else: assert response_message_hash_list == expected_message_hash_list[5:], "Message hash mismatch for descending order" + + def test_store_invalid_ascending(self): + expected_message_hash_list = [] + ascending = "" + for i in range(10): + message = self.create_message(payload=to_base64(f"Message_{i}")) + self.publish_message(message=message) + expected_message_hash_list.append(self.compute_message_hash(self.test_pubsub_topic, message)) + for node in self.store_nodes: + store_response = self.get_messages_from_store(node, page_size=5, ascending=ascending) + response_message_hash_list = [] + for index in range(len(store_response.messages)): + response_message_hash_list.append(store_response.message_hash(index)) + assert response_message_hash_list == expected_message_hash_list[:5], "Message hash mismatch for acending order" From 542fc009b8ea68f940dc95e4e9ba4c8afdf24c76 Mon Sep 17 00:00:00 2001 From: aya Date: Tue, 22 Oct 2024 09:25:59 +0300 Subject: [PATCH 2/3] adding page_size tests --- tests/store/test_page_size.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tests/store/test_page_size.py b/tests/store/test_page_size.py index ee65453e..68001794 100644 --- a/tests/store/test_page_size.py +++ b/tests/store/test_page_size.py @@ -33,3 +33,17 @@ class TestPageSize(StepsStore): for node in self.store_nodes: store_response = self.get_messages_from_store(node, page_size=page_size) assert len(store_response.messages) == page_size, "Message count mismatch" + + def test_exterme_number_page_size(self): + for i in range(150): + self.publish_message(message=self.create_message(payload=to_base64(f"Message_{i}"))) + for node in self.store_nodes: + store_response = self.get_messages_from_store(node, page_size=1000000) + assert len(store_response.messages) == 100, "Message count mismatch" + + def test_negative_number_page_size(self): + for i in range(10): + self.publish_message(message=self.create_message(payload=to_base64(f"Message_{i}"))) + for node in self.store_nodes: + store_response = self.get_messages_from_store(node, page_size=-1) + assert len(store_response.messages) == 10, "Message count mismatch" From d0bde7bd97b7942e302deda06aa683f89c871b21 Mon Sep 17 00:00:00 2001 From: aya Date: Tue, 22 Oct 2024 11:21:44 +0300 Subject: [PATCH 3/3] adding invalid ascending test --- tests/store/test_page_size.py | 23 ++++++++++++++++++++--- tests/store/test_sorting.py | 14 +++++++++----- 2 files changed, 29 insertions(+), 8 deletions(-) diff --git a/tests/store/test_page_size.py b/tests/store/test_page_size.py index 68001794..42cbea77 100644 --- a/tests/store/test_page_size.py +++ b/tests/store/test_page_size.py @@ -1,6 +1,9 @@ import pytest from src.libs.common import to_base64 from src.steps.store import StepsStore +from src.libs.custom_logger import get_custom_logger + +logger = get_custom_logger(__name__) @pytest.mark.usefixtures("node_setup") @@ -34,7 +37,7 @@ class TestPageSize(StepsStore): store_response = self.get_messages_from_store(node, page_size=page_size) assert len(store_response.messages) == page_size, "Message count mismatch" - def test_exterme_number_page_size(self): + def test_extreme_number_page_size(self): for i in range(150): self.publish_message(message=self.create_message(payload=to_base64(f"Message_{i}"))) for node in self.store_nodes: @@ -42,8 +45,22 @@ class TestPageSize(StepsStore): assert len(store_response.messages) == 100, "Message count mismatch" def test_negative_number_page_size(self): + page_size = -1 + for i in range(10): + self.publish_message(message=self.create_message(payload=to_base64(f"Message_{i}"))) + logger.debug(f"requesting stored message with wrong page_size = {page_size}") + for node in self.store_nodes: + store_response = self.get_messages_from_store(node, page_size=page_size) + assert len(store_response.messages) == 10, "Message count mismatch" + + def test_invalid_page_size(self): + page_size = "$2" for i in range(10): self.publish_message(message=self.create_message(payload=to_base64(f"Message_{i}"))) for node in self.store_nodes: - store_response = self.get_messages_from_store(node, page_size=-1) - assert len(store_response.messages) == 10, "Message count mismatch" + try: + store_response = self.get_messages_from_store(node, page_size=page_size) + raise Exception(f"invalid page number {page_size} was acepted !!") + except Exception as e: + logger.debug(f"the invalid page_size {page_size} wasn't accepted ") + assert e.args[0].find("400 Client Error: Bad Request for url"), "Error logged isn't for bad url" diff --git a/tests/store/test_sorting.py b/tests/store/test_sorting.py index e92f78c0..1e8373aa 100644 --- a/tests/store/test_sorting.py +++ b/tests/store/test_sorting.py @@ -1,6 +1,9 @@ import pytest from src.libs.common import to_base64 from src.steps.store import StepsStore +from src.libs.custom_logger import get_custom_logger + +logger = get_custom_logger(__name__) @pytest.mark.usefixtures("node_setup") @@ -13,7 +16,7 @@ class TestSorting(StepsStore): self.publish_message(message=message) expected_message_hash_list.append(self.compute_message_hash(self.test_pubsub_topic, message)) for node in self.store_nodes: - store_response = self.get_messages_from_store(node, page_size=5, ascending=True) + store_response = self.get_messages_from_store(node, page_size=5, ascending=ascending) response_message_hash_list = [] for index in range(len(store_response.messages)): response_message_hash_list.append(store_response.message_hash(index)) @@ -24,14 +27,15 @@ class TestSorting(StepsStore): def test_store_invalid_ascending(self): expected_message_hash_list = [] - ascending = "" - for i in range(10): + ascending = "##" + for i in range(4): message = self.create_message(payload=to_base64(f"Message_{i}")) self.publish_message(message=message) expected_message_hash_list.append(self.compute_message_hash(self.test_pubsub_topic, message)) + logger.debug(f"requesting stored messages with invalid ascending ={ascending}") for node in self.store_nodes: - store_response = self.get_messages_from_store(node, page_size=5, ascending=ascending) + store_response = self.get_messages_from_store(node, ascending=ascending, page_size=2) response_message_hash_list = [] for index in range(len(store_response.messages)): response_message_hash_list.append(store_response.message_hash(index)) - assert response_message_hash_list == expected_message_hash_list[:5], "Message hash mismatch for acending order" + assert response_message_hash_list == expected_message_hash_list[:2], "pages aren't forward as expected"