Skip to content

Commit 59f6d46

Browse files
committed
address comments
1 parent 5b86237 commit 59f6d46

File tree

2 files changed

+44
-45
lines changed

2 files changed

+44
-45
lines changed

redis_sync/tests/test_handler.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,12 @@ def tearDown(self):
4242
def test_handler_success(self):
4343
with patch("log_decorator.logging_decorator", lambda prefix=None: (lambda f: f)):
4444
importlib.reload(redis_sync)
45-
event_data = {'Records': [self.s3_vaccine]}
45+
mock_event = {'Records': [self.s3_vaccine]}
4646
self.mock_get_s3_records.return_value = [self.s3_vaccine]
4747
with patch("redis_sync.process_record") as mock_record_processor:
4848
mock_record_processor.return_value = {'status': 'success', 'message': 'Processed successfully',
4949
'file_key': 'test-key'}
50-
result = redis_sync.handler(event_data, None)
50+
result = redis_sync.handler(mock_event, None)
5151
self.assertEqual(result["status"], "success")
5252
self.assertEqual(result["message"], "Successfully processed 1 records")
5353
self.assertEqual(result["file_keys"], ['test-key'])
@@ -56,31 +56,31 @@ def test_handler_failure(self):
5656
with patch("log_decorator.logging_decorator", lambda prefix=None: (lambda f: f)):
5757
importlib.reload(redis_sync)
5858

59-
event_data = {'Records': [self.s3_vaccine]}
59+
mock_event = {'Records': [self.s3_vaccine]}
6060
with patch("redis_sync.process_record") as mock_record_processor:
6161
self.mock_get_s3_records.return_value = [self.s3_vaccine]
6262
mock_record_processor.side_effect = Exception("Processing error 1")
6363

64-
result = redis_sync.handler(event_data, None)
64+
result = redis_sync.handler(mock_event, None)
6565

6666
self.assertEqual(result, {'status': 'error', 'message': 'Error processing S3 event'})
6767

6868
def test_handler_no_records(self):
6969
with patch("log_decorator.logging_decorator", lambda prefix=None: (lambda f: f)):
7070
importlib.reload(redis_sync)
71-
event_data = {'Records': []}
71+
mock_event = {'Records': []}
7272
self.mock_get_s3_records.return_value = []
73-
result = redis_sync.handler(event_data, None)
73+
result = redis_sync.handler(mock_event, None)
7474
self.assertEqual(result, {'status': 'success', 'message': 'No records found in event'})
7575

7676
def test_handler_exception(self):
7777
with patch("log_decorator.logging_decorator", lambda prefix=None: (lambda f: f)):
7878
importlib.reload(redis_sync)
79-
event_data = {'Records': [self.s3_vaccine]}
79+
mock_event = {'Records': [self.s3_vaccine]}
8080
self.mock_get_s3_records.return_value = [self.s3_vaccine]
8181
with patch("redis_sync.process_record") as mock_record_processor:
8282
mock_record_processor.side_effect = Exception("Processing error 2")
83-
result = redis_sync.handler(event_data, None)
83+
result = redis_sync.handler(mock_event, None)
8484
self.assertEqual(result, {'status': 'error', 'message': 'Error processing S3 event'})
8585

8686
def test_handler_with_empty_event(self):
@@ -93,7 +93,7 @@ def test_handler_with_empty_event(self):
9393
def test_handler_multi_record(self):
9494
with patch("log_decorator.logging_decorator", lambda prefix=None: (lambda f: f)):
9595
importlib.reload(redis_sync)
96-
event_data = {'Records': [self.s3_vaccine, self.s3_supplier]}
96+
mock_event = {'Records': [self.s3_vaccine, self.s3_supplier]}
9797
# If you need S3EventRecord, uncomment the import and use it here
9898
# self.mock_get_s3_records.return_value = [
9999
# S3EventRecord(self.s3_vaccine),
@@ -105,7 +105,7 @@ def test_handler_multi_record(self):
105105
'file_key': 'test-key1'},
106106
{'status': 'success', 'message': 'Processed successfully',
107107
'file_key': 'test-key2'}]
108-
result = redis_sync.handler(event_data, None)
108+
result = redis_sync.handler(mock_event, None)
109109
self.assertEqual(result['status'], 'success')
110110
self.assertEqual(result['message'], 'Successfully processed 2 records')
111111
self.assertEqual(result['file_keys'][0], 'test-key1')
@@ -114,10 +114,10 @@ def test_handler_multi_record(self):
114114
def test_handler_read_event(self):
115115
with patch("log_decorator.logging_decorator", lambda prefix=None: (lambda f: f)):
116116
importlib.reload(redis_sync)
117-
event_data = {'read': 'myhash'}
117+
mock_event = {'read': 'myhash'}
118118
mock_read_event_response = {'field1': 'value1'}
119119
with patch('redis_sync.read_event') as mock_read_event:
120120
mock_read_event.return_value = mock_read_event_response
121-
result = redis_sync.handler(event_data, None)
121+
result = redis_sync.handler(mock_event, None)
122122
mock_read_event.assert_called_once()
123123
self.assertEqual(result, mock_read_event_response)

redis_sync/tests/test_handler_decorator.py

Lines changed: 32 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ def tearDown(self):
4545
patch.stopall()
4646

4747
def test_handler_decorator_success(self):
48-
event_data = {'Records': [self.s3_vaccine]}
48+
mock_event = {'Records': [self.s3_vaccine]}
4949
self.mock_get_s3_records.return_value = [self.s3_vaccine]
5050
bucket_name = self.s3_vaccine['s3']['bucket']['name']
5151
file_key = self.s3_vaccine['s3']['object']['key']
@@ -54,7 +54,7 @@ def test_handler_decorator_success(self):
5454
'bucket_name': bucket_name,
5555
'file_key': file_key}
5656

57-
handler(event_data, None)
57+
handler(mock_event, None)
5858

5959
# Get put_record arguments
6060
args, kwargs = self.mock_firehose_client.put_record.call_args
@@ -72,7 +72,7 @@ def test_handler_decorator_success(self):
7272
self.assertEqual(event["file_keys"], [file_key])
7373

7474
def test_handler_decorator_failure(self):
75-
event_data = {'Records': [self.s3_vaccine]}
75+
mock_event = {'Records': [self.s3_vaccine]}
7676

7777
self.mock_get_s3_records.return_value = [self.s3_vaccine]
7878
bucket_name = self.s3_vaccine['s3']['bucket']['name']
@@ -83,7 +83,7 @@ def test_handler_decorator_failure(self):
8383
'bucket_name': bucket_name,
8484
'file_key': file_key}
8585

86-
handler(event_data, None)
86+
handler(mock_event, None)
8787

8888
# Get put_record arguments
8989
args, kwargs = self.mock_firehose_client.put_record.call_args
@@ -100,12 +100,12 @@ def test_handler_decorator_failure(self):
100100
self.assertEqual(event["file_keys"], [file_key])
101101

102102
def test_handler_decorator_no_records1(self):
103-
event_data = {'Records': []}
103+
mock_event = {'Records': []}
104104

105105
self.mock_get_s3_records.return_value = []
106106
self.mock_record_processor.return_value = {'status': 'success', 'message': 'No records found in event'}
107107

108-
handler(event_data, None)
108+
handler(mock_event, None)
109109

110110
# Get put_record arguments
111111
args, kwargs = self.mock_firehose_client.put_record.call_args
@@ -123,10 +123,10 @@ def test_handler_decorator_no_records1(self):
123123
self.assertNotIn("file_key", event)
124124

125125
def test_handler_decorator_exception(self):
126-
event_data = {'Records': [self.s3_vaccine]}
126+
mock_event = {'Records': [self.s3_vaccine]}
127127
self.mock_get_s3_records.side_effect = Exception("Test exception")
128128

129-
handler(event_data, None)
129+
handler(mock_event, None)
130130

131131
# check put_record arguments
132132
args, kwargs = self.mock_firehose_client.put_record.call_args
@@ -159,44 +159,43 @@ def test_handler_with_empty_event(self):
159159
self.assertEqual(event["message"], "No records found in event")
160160

161161
def test_handler_multi_record(self):
162-
event_data = {'Records': [self.s3_vaccine, self.s3_supplier]}
162+
mock_event = {'Records': [self.s3_vaccine, self.s3_supplier]}
163163

164-
with patch.object(self.mock_get_s3_records,
165-
"return_value",
166-
[S3EventRecord(self.s3_vaccine), S3EventRecord(self.s3_supplier)]):
164+
self.mock_get_s3_records.return_value = [
165+
S3EventRecord(self.s3_vaccine), S3EventRecord(self.s3_supplier)]
167166

168-
# Mock the return value for each record
169-
self.mock_record_processor.side_effect = [
170-
{'status': 'success', 'message': 'Processed successfully',
171-
'file_key': RedisCacheKey.DISEASE_MAPPING_FILE_KEY},
172-
{'status': 'success', 'message': 'Processed successfully',
173-
'file_key': RedisCacheKey.PERMISSIONS_CONFIG_FILE_KEY}
174-
]
167+
# Mock the return value for each record
168+
self.mock_record_processor.side_effect = [
169+
{'status': 'success', 'message': 'Processed successfully',
170+
'file_key': RedisCacheKey.DISEASE_MAPPING_FILE_KEY},
171+
{'status': 'success', 'message': 'Processed successfully',
172+
'file_key': RedisCacheKey.PERMISSIONS_CONFIG_FILE_KEY}
173+
]
175174

176-
handler(event_data, None)
175+
handler(mock_event, None)
177176

178-
# Get put_record arguments
179-
args, kwargs = self.mock_firehose_client.put_record.call_args
180-
record = kwargs.get("Record") or args[1]
181-
data_bytes = record["Data"]
182-
log_json = data_bytes.decode("utf-8")
183-
log_dict = json.loads(log_json)
184-
# check expected content
185-
event = log_dict["event"]
186-
self.assertIn("function_name", event)
187-
self.assertEqual(event["function_name"], "redis_sync_handler")
188-
self.assertEqual(event["status"], "success")
177+
# Get put_record arguments
178+
args, kwargs = self.mock_firehose_client.put_record.call_args
179+
record = kwargs.get("Record") or args[1]
180+
data_bytes = record["Data"]
181+
log_json = data_bytes.decode("utf-8")
182+
log_dict = json.loads(log_json)
183+
# check expected content
184+
event = log_dict["event"]
185+
self.assertIn("function_name", event)
186+
self.assertEqual(event["function_name"], "redis_sync_handler")
187+
self.assertEqual(event["status"], "success")
189188

190189
# test to check that event_read is called when "read" key is passed in the event
191190
def test_handler_read_event(self):
192-
event_data = {'read': 'myhash'}
191+
mock_event = {'read': 'myhash'}
193192
return_key = 'field1'
194193
return_value = 'value1'
195194
mock_read_event_response = {return_key: return_value}
196195

197196
with patch('redis_sync.read_event') as mock_read_event:
198197
mock_read_event.return_value = mock_read_event_response
199-
handler(event_data, None)
198+
handler(mock_event, None)
200199

201200
# get put_record arguments
202201
args, kwargs = self.mock_firehose_client.put_record.call_args

0 commit comments

Comments
 (0)