Skip to content

Commit 589a8a4

Browse files
authored
VED-381: Fix deletion of old keys. (#608)
1 parent a20bdcf commit 589a8a4

File tree

2 files changed

+15
-5
lines changed

2 files changed

+15
-5
lines changed

redis_sync/src/redis_cacher.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ def upload(bucket_name: str, file_key: str) -> dict:
3636
logger.info("New mapping for %s: %s", key, safe_mapping)
3737
fields_to_delete = [k for k in existing_mapping if k not in safe_mapping]
3838
if fields_to_delete:
39-
redis_client.hdel(key, fields_to_delete)
39+
redis_client.hdel(key, *fields_to_delete)
4040
logger.info("Deleted mapping fields for %s: %s", key, fields_to_delete)
4141

4242
return {"status": "success", "message": f"File {file_key} uploaded to Redis cache."}

redis_sync/tests/test_redis_cacher.py

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,13 +47,20 @@ def test_upload(self):
4747
def test_deletes_extra_fields(self):
4848
mock_data = {"input_key": "input_val"}
4949
mock_transformed_data = {
50-
"hash_name": {"transformed_key": "transformed_val"},
50+
"hash_name": {
51+
"transformed_key_1": "transformed_val_1",
52+
"transformed_key_2": "transformed_val_2"
53+
},
5154
}
5255

5356
self.mock_s3_reader.read = unittest.mock.Mock()
5457
self.mock_s3_reader.read.return_value = mock_data
5558
self.mock_transform_map.return_value = mock_transformed_data
56-
self.mock_redis_client.hgetall.return_value = {"old_key": "old_val"}
59+
self.mock_redis_client.hgetall.return_value = {
60+
"obsolete_key_1": "obsolete_val_1",
61+
"obsolete_key_2": "obsolete_val_2",
62+
"transformed_key_2": "transformed_val_2",
63+
}
5764

5865
bucket_name = "bucket"
5966
file_key = "file-key"
@@ -62,6 +69,9 @@ def test_deletes_extra_fields(self):
6269
self.mock_s3_reader.read.assert_called_once_with(bucket_name, file_key)
6370
self.mock_transform_map.assert_called_once_with(mock_data, file_key)
6471
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"])
72+
self.mock_redis_client.hmset.assert_called_once_with("hash_name", {
73+
"transformed_key_1": "transformed_val_1",
74+
"transformed_key_2": "transformed_val_2"
75+
})
76+
self.mock_redis_client.hdel.assert_called_once_with("hash_name", "obsolete_key_1", "obsolete_key_2")
6777
self.assertEqual(result, {"status": "success", "message": f"File {file_key} uploaded to Redis cache."})

0 commit comments

Comments
 (0)