From 4a259aaae80bb596b9af0388ff88e824469e0724 Mon Sep 17 00:00:00 2001 From: Radoslaw Kaminski Date: Wed, 12 Mar 2025 13:07:16 +0000 Subject: [PATCH] add more cases --- src/steps/da.py | 3 ++- tests/dos_robustness/test_large_volume.py | 20 ++++++++++++++++++-- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/src/steps/da.py b/src/steps/da.py index cffe4a9..44428fc 100644 --- a/src/steps/da.py +++ b/src/steps/da.py @@ -76,11 +76,12 @@ class StepsDataAvailability(StepsCommon): def get_data_range(self, node, app_id, start, end, client_node=None, **kwargs): timeout_duration = kwargs.get("timeout_duration", 65) + interval = kwargs.get("interval", 0.1) send_invalid = kwargs.get("send_invalid", False) query = prepare_get_range_request(app_id, start, end) - @retry(stop=stop_after_delay(timeout_duration), wait=wait_fixed(0.1), reraise=True) + @retry(stop=stop_after_delay(timeout_duration), wait=wait_fixed(interval), reraise=True) def get_range(): response = [] try: diff --git a/tests/dos_robustness/test_large_volume.py b/tests/dos_robustness/test_large_volume.py index 37bfae2..3b6cb8b 100644 --- a/tests/dos_robustness/test_large_volume.py +++ b/tests/dos_robustness/test_large_volume.py @@ -1,6 +1,6 @@ import pytest -from src.libs.common import generate_text_data, to_app_id, to_index +from src.libs.common import delay, generate_text_data, to_app_id, to_index from src.libs.custom_logger import get_custom_logger from src.steps.da import StepsDataAvailability @@ -13,7 +13,8 @@ class TestLargeVolume(StepsDataAvailability): @pytest.mark.parametrize( "setup_4_node_cluster,raw_data_size", [ - ({"subnet_size": 32, "dispersal_factor": 8}, 70), # => ~~0.58kB + ({"subnet_size": 4, "dispersal_factor": 1}, 50), # => ~~0.5kB + ({"subnet_size": 64, "dispersal_factor": 32}, 800), # => ~~ 4kB ({"subnet_size": 2048, "dispersal_factor": 512}, 51 * 1024), # => ~~244kB, spec limit: 248kB ], indirect=["setup_4_node_cluster"], @@ -27,3 +28,18 @@ class TestLargeVolume(StepsDataAvailability): raise Exception(f"Dispersal was not successful with error {ex}") assert response.status_code == 200 + + delay(5) + rcv_data = self.get_data_range(self.node2, to_app_id(1), to_index(0), to_index(5), timeout_duration=20, interval=1) + assert rcv_data is not None + + @pytest.mark.usefixtures("setup_2_node_cluster") + @pytest.mark.parametrize( + "setup_2_node_cluster,raw_data_size", + [ + ({"subnet_size": 2, "dispersal_factor": 2}, 50), + ], + indirect=["setup_2_node_cluster"], + ) + def test_large_volume_dispersal_2node(self, raw_data_size): + self.test_large_volume_dispersal(raw_data_size)