SIENTIAPDE-1094
Refactor Redis activity tests to improve initialization and assertion logic
This commit is contained in:
@@ -141,9 +141,9 @@ async def test_prepare_activity(_mock_kafka_init,
|
|||||||
|
|
||||||
await activities.prepare_activity(input_data)
|
await activities.prepare_activity(input_data)
|
||||||
|
|
||||||
assert activities.notification_handler.base_notification.pipeline_name == input_data[
|
assert activities.notification_handler.base_notification.pipeline == input_data[
|
||||||
'workflow_name']
|
'workflow_name']
|
||||||
assert activities.notification_handler.base_notification.schedule_name == input_data[
|
assert activities.notification_handler.base_notification.trigger == input_data[
|
||||||
'schedule_name']
|
'schedule_name']
|
||||||
assert activities.notification_handler.base_notification.model_name == input_data[
|
assert activities.notification_handler.base_notification.model_name == input_data[
|
||||||
'model_name']
|
'model_name']
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
import json
|
from unittest.mock import MagicMock, patch, ANY
|
||||||
from unittest.mock import MagicMock, patch
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
import pytest
|
import pytest
|
||||||
import numpy as np
|
import numpy as np
|
||||||
@@ -9,65 +8,36 @@ from scouter.activities.redis import Redis
|
|||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
@patch('scouter.activities.redis.redis.Redis')
|
@patch('scouter.activities.redis.RedisBase.__init__')
|
||||||
def redis_activity(_mock_redis_client):
|
def redis_activity(_mock_redis_init):
|
||||||
logger = MagicMock()
|
logger = MagicMock()
|
||||||
notification_handler = MagicMock(spec=NotificationHandler)
|
notification_handler = MagicMock(spec=NotificationHandler)
|
||||||
return Redis(host='localhost', port=6379,
|
activity = Redis(host='localhost', port=6379,
|
||||||
logger=logger, notification_handler=notification_handler,
|
logger=logger, notification_handler=notification_handler,
|
||||||
username='test', password='test')
|
username='test', password='test')
|
||||||
|
|
||||||
|
activity.redis_client = MagicMock()
|
||||||
|
activity.logger = logger
|
||||||
|
activity.notification_handler = notification_handler
|
||||||
|
return activity
|
||||||
|
|
||||||
|
|
||||||
@patch('scouter.activities.redis.redis.Redis')
|
@patch('scouter.activities.redis.RedisBase.__init__')
|
||||||
def test_redis_initialization(mock_redis_client):
|
def test_redis_initialization(mock_redis_init):
|
||||||
"""Test Redis activity initialization"""
|
"""Test Redis activity initialization"""
|
||||||
redis_activity = Redis(host='localhost', port=6379,
|
logger = MagicMock()
|
||||||
logger=MagicMock(), notification_handler=MagicMock(),
|
notification_handler = MagicMock(spec=NotificationHandler)
|
||||||
username='test', password='test')
|
Redis(host='localhost', port=6379,
|
||||||
assert redis_activity.host == 'localhost'
|
logger=logger, notification_handler=notification_handler,
|
||||||
assert redis_activity.port == 6379
|
username='test', password='test')
|
||||||
assert redis_activity.username == 'test'
|
mock_redis_init.assert_called_once_with(
|
||||||
assert redis_activity.password == 'test'
|
ANY,
|
||||||
mock_redis_client.assert_called_once_with(
|
'localhost',
|
||||||
host='localhost',
|
6379,
|
||||||
port=6379,
|
'test',
|
||||||
decode_responses=True,
|
'test',
|
||||||
username='test',
|
logger,
|
||||||
password='test'
|
notification_handler
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def test_get_existing_key(redis_activity):
|
|
||||||
"""Test getting an existing key from Redis"""
|
|
||||||
test_data = {'key': 'value'}
|
|
||||||
redis_activity.redis_client.get.return_value = json.dumps(test_data)
|
|
||||||
|
|
||||||
result = redis_activity.get('test_key')
|
|
||||||
|
|
||||||
assert result == test_data
|
|
||||||
redis_activity.redis_client.get.assert_called_once_with('test_key')
|
|
||||||
|
|
||||||
|
|
||||||
def test_get_nonexistent_key(redis_activity):
|
|
||||||
"""Test getting a non-existent key from Redis"""
|
|
||||||
redis_activity.redis_client.get.return_value = None
|
|
||||||
|
|
||||||
result = redis_activity.get('nonexistent_key')
|
|
||||||
|
|
||||||
assert result is None
|
|
||||||
redis_activity.redis_client.get.assert_called_once_with('nonexistent_key')
|
|
||||||
|
|
||||||
|
|
||||||
def test_set_key(redis_activity):
|
|
||||||
"""Test setting a key in Redis"""
|
|
||||||
test_data = {'key': 'value'}
|
|
||||||
|
|
||||||
redis_activity.set('test_key', test_data, ttl=300)
|
|
||||||
|
|
||||||
redis_activity.redis_client.set.assert_called_once_with(
|
|
||||||
'test_key',
|
|
||||||
json.dumps(test_data),
|
|
||||||
ex=300
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user