From c90044074d78d81642682741cd9d7defdaacb274 Mon Sep 17 00:00:00 2001 From: vakarisz Date: Thu, 6 Oct 2022 14:21:13 +0300 Subject: [PATCH] Island: Remove storage error when node wasn't modified Upserting should throw an error when updating or inserting went wrong, not when a node is already up to date. --- .../cc/repository/mongo_node_repository.py | 6 ------ .../cc/repository/test_mongo_node_repository.py | 15 --------------- 2 files changed, 21 deletions(-) diff --git a/monkey/monkey_island/cc/repository/mongo_node_repository.py b/monkey/monkey_island/cc/repository/mongo_node_repository.py index 8543d5e21..248b0f973 100644 --- a/monkey/monkey_island/cc/repository/mongo_node_repository.py +++ b/monkey/monkey_island/cc/repository/mongo_node_repository.py @@ -55,12 +55,6 @@ class MongoNodeRepository(INodeRepository): except Exception as err: raise StorageError(f"{UPSERT_ERROR_MESSAGE}: {err}") - if result.matched_count != 0 and result.modified_count != 1: - raise StorageError( - f'Error updating node with source ID "{node.machine_id}": Expected to update 1 ' - f"node, but {result.modified_count} were updated" - ) - if result.matched_count == 0 and result.upserted_id is None: raise StorageError( f'Error inserting node with source ID "{node.machine_id}": Expected to insert 1 ' diff --git a/monkey/tests/unit_tests/monkey_island/cc/repository/test_mongo_node_repository.py b/monkey/tests/unit_tests/monkey_island/cc/repository/test_mongo_node_repository.py index 9d1ee6279..338526d76 100644 --- a/monkey/tests/unit_tests/monkey_island/cc/repository/test_mongo_node_repository.py +++ b/monkey/tests/unit_tests/monkey_island/cc/repository/test_mongo_node_repository.py @@ -163,21 +163,6 @@ def test_upsert_communication__replace_one_fails( error_raising_node_repository.upsert_communication(1, 2, CommunicationType.SCANNED) -def test_upsert_communication__replace_one_matched_without_modify( - error_raising_mock_mongo_client, error_raising_node_repository -): - mock_result = MagicMock() - mock_result.matched_count = 1 - mock_result.modified_count = 0 - error_raising_mock_mongo_client.monkey_island.nodes.find_one = MagicMock(return_value=None) - error_raising_mock_mongo_client.monkey_island.nodes.replace_one = MagicMock( - return_value=mock_result - ) - - with pytest.raises(StorageError): - error_raising_node_repository.upsert_communication(1, 2, CommunicationType.SCANNED) - - def test_upsert_communication__replace_one_insert_fails( error_raising_mock_mongo_client, error_raising_node_repository ):