@@ -39,5 +39,29 @@ def test_upload(self):
3939
4040 self .mock_s3_reader .read .assert_called_once_with (bucket_name , file_key )
4141 self .mock_transform_map .assert_called_once_with (mock_data , file_key )
42- self .mock_redis_client .hmset .assert_called ()
42+ self .mock_redis_client .hmset .assert_any_call ("vacc_to_diseases" , {"b" : "c" })
43+ self .mock_redis_client .hmset .assert_any_call ("diseases_to_vacc" , {"c" : "b" })
44+ self .mock_redis_client .hdel .assert_not_called ()
45+ self .assertEqual (result , {"status" : "success" , "message" : f"File { file_key } uploaded to Redis cache." })
46+
47+ def test_deletes_extra_fields (self ):
48+ mock_data = {"input_key" : "input_val" }
49+ mock_transformed_data = {
50+ "hash_name" : {"transformed_key" : "transformed_val" },
51+ }
52+
53+ self .mock_s3_reader .read = unittest .mock .Mock ()
54+ self .mock_s3_reader .read .return_value = mock_data
55+ self .mock_transform_map .return_value = mock_transformed_data
56+ self .mock_redis_client .hgetall .return_value = {"old_key" : "old_val" }
57+
58+ bucket_name = "bucket"
59+ file_key = "file-key"
60+ result = RedisCacher .upload (bucket_name , file_key )
61+
62+ self .mock_s3_reader .read .assert_called_once_with (bucket_name , file_key )
63+ self .mock_transform_map .assert_called_once_with (mock_data , file_key )
64+ self .mock_redis_client .hgetall .assert_called_once_with ("hash_name" )
65+ self .mock_redis_client .hmset .assert_called_once_with ("hash_name" , {"transformed_key" : "transformed_val" })
66+ self .mock_redis_client .hdel .assert_called_once_with ("hash_name" , ["old_key" ])
4367 self .assertEqual (result , {"status" : "success" , "message" : f"File { file_key } uploaded to Redis cache." })
0 commit comments