From 30a940c7f126389bae3b4c567e5ca79e09de7fb0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20Vinot?= Date: Mon, 16 Dec 2019 15:24:04 +0100 Subject: [PATCH] fix: Properly test custom objects --- .../overwrite_file/definition.json | 6 +++--- tests/testlive_comprehensive.py | 12 ++++++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/tests/mispevent_testfiles/overwrite_file/definition.json b/tests/mispevent_testfiles/overwrite_file/definition.json index 162b773..47c16f5 100644 --- a/tests/mispevent_testfiles/overwrite_file/definition.json +++ b/tests/mispevent_testfiles/overwrite_file/definition.json @@ -449,9 +449,9 @@ ] } }, - "version": 17, + "version": 1, "description": "File object describing a file with meta-information", "meta-category": "file", - "uuid": "688c46fb-5edb-40a3-8273-1af7923e2215", - "name": "file" + "uuid": "688c46fb-5edb-40a3-8273-1af7923e0000", + "name": "overwrite_file" } diff --git a/tests/testlive_comprehensive.py b/tests/testlive_comprehensive.py index 847fdbd..68e34d8 100644 --- a/tests/testlive_comprehensive.py +++ b/tests/testlive_comprehensive.py @@ -1081,6 +1081,18 @@ class TestComprehensive(unittest.TestCase): obj = MISPObject(obj_json['Object']['name']) obj.from_dict(**obj_json) self.assertEqual(obj.get_attributes_by_relation('test_overwrite')[0].value, 'blah') + + # FULL object add & update with custom template + new_object = MISPObject('overwrite_file', misp_objects_path_custom='tests/mispevent_testfiles') + new_object.add_attribute('test_overwrite', 'barbaz') + new_object.add_attribute('filename', 'barbaz.exe') + new_object = self.admin_misp_connector.add_object(first, new_object, pythonify=True) + self.assertEqual(new_object.get_attributes_by_relation('test_overwrite')[0].value, 'barbaz', new_object) + + new_object.force_misp_objects_path_custom('tests/mispevent_testfiles', 'overwrite_file') + new_object.add_attribute('filename', 'foobar.exe') + new_object = self.admin_misp_connector.update_object(new_object, pythonify=True) + self.assertEqual(new_object.get_attributes_by_relation('filename')[1].value, 'foobar.exe', new_object) finally: # Delete event self.admin_misp_connector.delete_event(first)