From 552f58ca86b552bf80abde03c73d3fb8ccffd389 Mon Sep 17 00:00:00 2001 From: vitor-aignosi Date: Tue, 19 Aug 2025 09:29:46 -0300 Subject: [PATCH] SIENTIAPDE-1169 SIENTIAPDE-1169 Update Redis and core scouter tests to include model_tags in data structures, enhancing data organization and consistency across test cases. --- tests/activities/test_redis.py | 49 ++++++++++++++++--- .../sub_workflows/test_core_scouter.py | 6 ++- 2 files changed, 45 insertions(+), 10 deletions(-) diff --git a/tests/activities/test_redis.py b/tests/activities/test_redis.py index bed4c10..f68e48f 100644 --- a/tests/activities/test_redis.py +++ b/tests/activities/test_redis.py @@ -219,7 +219,11 @@ async def test_group_and_hold_data_new_key(redis_activity): 'name': ['sensor1', 'sensor2'], 'value': [25.5, 30.0], 'timestamp': ['2023-01-01 12:00:00'] * 2 - }).to_dict('records') + }).to_dict('records'), + 'model_tags': { + 'sensor1': 'sensor1', + 'sensor2': 'sensor2' + } } # Mock get to return None for new key @@ -271,7 +275,12 @@ async def test_group_and_hold_data_update_existing(redis_activity): 'name': ['sensor1', 'sensor3'], 'value': [25.5, 42.0], 'timestamp': ['2023-01-01 12:00:00'] * 2 - }).to_dict('records') + }).to_dict('records'), + 'model_tags': { + 'sensor1': 'sensor1', + 'sensor2': 'sensor2', + 'sensor3': 'sensor3' + } } # Mock get to return existing data @@ -317,7 +326,11 @@ async def test_group_and_hold_data_with_none_values(redis_activity): 'name': ['sensor1', 'sensor2'], 'value': [None, 30.0], 'timestamp': [datetime(2023, 1, 1, 12, 0, 0)] * 2 - }).to_dict('records') + }).to_dict('records'), + 'model_tags': { + 'sensor1': 'sensor1', + 'sensor2': 'sensor2' + } } # Mock get to return None for new key @@ -341,7 +354,11 @@ async def test_group_and_hold_data_empty_dataframe(redis_activity): 'workflow_name': 'test_workflow', 'schedule_name': 'test_schedule', 'retention_time': 3600, - 'data': DataFrame(columns=['name', 'value', 'timestamp']).to_dict('records') + 'data': DataFrame(columns=['name', 'value', 'timestamp']).to_dict('records'), + 'model_tags': { + 'sensor1': 'sensor1', + 'sensor2': 'sensor2' + } } redis_activity.get = MagicMock(return_value=None) @@ -361,7 +378,11 @@ async def test_group_and_hold_data_error_get(redis_activity): 'schedule_name': 'test_schedule', 'retention_time': 3600, 'model_id': 1, - 'data': DataFrame(columns=['name', 'value', 'timestamp']).to_dict('records') + 'data': DataFrame(columns=['name', 'value', 'timestamp']).to_dict('records'), + 'model_tags': { + 'sensor1': 'sensor1', + 'sensor2': 'sensor2' + } } redis_activity.get = MagicMock(side_effect=Exception('test')) @@ -395,7 +416,11 @@ async def test_group_and_hold_data_error_set(redis_activity): 'schedule_name': 'test_schedule', 'retention_time': 3600, 'model_id': 1, - 'data': DataFrame(columns=['name', 'value', 'timestamp']).to_dict('records') + 'data': DataFrame(columns=['name', 'value', 'timestamp']).to_dict('records'), + 'model_tags': { + 'sensor1': 'sensor1', + 'sensor2': 'sensor2' + } } existing_data = { @@ -434,7 +459,11 @@ async def test_store_data_package(redis_activity): 'name': ['sensor1', 'sensor2'], 'value': [25.5, 30.0], 'timestamp': ['2023-01-01 12:00:00'] * 2 - }).to_dict() + }).to_dict(), + 'model_tags': { + 'sensor1': 'sensor1', + 'sensor2': 'sensor2' + } } await redis_activity.store_data_package(test_data) @@ -467,7 +496,11 @@ async def test_store_data_package_error(redis_activity): 'name': ['sensor1', 'sensor2'], 'value': [25.5, 30.0], 'timestamp': ['2023-01-01 12:00:00'] * 2 - }).to_dict() + }).to_dict(), + 'model_tags': { + 'sensor1': 'sensor1', + 'sensor2': 'sensor2' + } } with pytest.raises(Exception): diff --git a/tests/workflow/sub_workflows/test_core_scouter.py b/tests/workflow/sub_workflows/test_core_scouter.py index e1be284..5e88c5b 100644 --- a/tests/workflow/sub_workflows/test_core_scouter.py +++ b/tests/workflow/sub_workflows/test_core_scouter.py @@ -80,7 +80,8 @@ async def test_core_scouter_workflow_success(mock_workflow, core_scouter): 'schedule_name': 'test_schedule', 'data': 'grouped_data', 'model_id': 'test_model_id', - 'retention_time': 3600 + 'retention_time': 3600, + 'model_tags': {} }, retry_policy=ANY, start_to_close_timeout=ANY @@ -184,7 +185,8 @@ async def test_core_scouter_workflow_with_empty_data(mock_workflow, core_scouter 'schedule_name': 'test_schedule', 'data': {}, 'model_id': 'test_model_id', - 'retention_time': 3600 + 'retention_time': 3600, + 'model_tags': {} }, retry_policy=ANY, start_to_close_timeout=ANY