コード例 #1
0
 def test_messages_count(self):
     with open("InputTestData/multiplelongidmef.xml", "r") as input_file:
         idmef_parser = IdmefParser(input_file)
         i = 0
         for _ in idmef_parser.parse_file_partially():
             i += 1
     self.assertEqual(i, 2,
                      "Number of messages is different as it is in file")
コード例 #2
0
 def test_alerts(self):
     with open("InputTestData/multiplelongidmef.xml", "r") as input_file:
         idmef_parser = IdmefParser(input_file)
         message_generator = idmef_parser.parse_file_partially()
         self.generic_test(message_generator.__next__(),
                           "Alert",
                           expected_children_length=6)
         self.generic_test(message_generator.__next__(), "Alert",
                           {"messageid": "abc123456789"}, 7)
コード例 #3
0
    def test_parsed_from_string(self):
        idmef_parser = IdmefParser(get_idmef_string())
        alert = idmef_parser.parse_string()
        self.generic_test(alert, "Alert", {"messageid": "123d45"}, 13)

        linkage_names = get_linkage_names(alert)
        self.assertEqual(len(linkage_names), 4,
                         message("Linkage name", "elementscount"))
        self.assertListEqual(linkage_names,
                             ["FsObject", "FsObject", "FsObject", "FsObject"])
コード例 #4
0
 def test_chosen_values_second_message(self):
     with open("InputTestData/multiplelongidmef.xml", "r") as input_file:
         idmef_parser = IdmefParser(input_file)
         message_generator = idmef_parser.parse_file_partially()
         message_generator.__next__()
         services = message_generator.__next__().findall("Target/Service")
         self.assertEqual(len(services), 1,
                          message("Impact", "elementscount"))
         service = services[0]
         self.generic_test(service, "Service", {"ident": "t01-4"}, 2)
コード例 #5
0
 def test_chosen_values_first_message(self):
     with open("InputTestData/multiplelongidmef.xml", "r") as input_file:
         idmef_parser = IdmefParser(input_file)
         message_generator = idmef_parser.parse_file_partially()
         impacts = message_generator.__next__().findall("Assessment/Impact")
         self.assertEqual(len(impacts), 1, message("Impact",
                                                   "elementscount"))
         impact = impacts[0]
         self.generic_test(impact, "Impact", {
             "severity": "high",
             "completion": "succeeded",
             "type": "admin"
         }, 0)
コード例 #6
0
def convert_single_ideamessage():
    with open("InputTestData/longidmef.xml") as input_idmef:
        idmef_parser = IdmefParser(input_idmef)
        message_converter = IdmefToIdeaMessageConverter()
        input_message = idmef_parser.parse_file_partially().__next__()
        return message_converter.modify_data(input_message)
コード例 #7
0
 def get_root(self):
     with open("InputTestData/longidmef.xml", "r") as input_file:
         idmef_parser = IdmefParser(input_file)
         result_root = idmef_parser.parse_file_partially()
         result_root = result_root.__next__()
     return result_root