示例#1
0
    def test_valid_event_custom(self):
        SAMPLE_EVENT = """
methods: ["method1", "method2"]
objects: ["object1", "object2"]
bug_numbers: [12345]
notification_emails: ["*****@*****.**", "*****@*****.**"]
record_in_processes: ["content"]
description: This is a test entry for Telemetry.
expiry_version: never
extra_keys:
  key1: test1
  key2: test2
products:
    - fennec
operating_systems:
    - windows
"""
        name = "test_event"
        event = load_event(SAMPLE_EVENT)
        evt = parse_events.EventData("CATEGORY",
                                     name,
                                     event,
                                     strict_type_checks=True)
        ParserError.exit_func()

        self.assertEqual(evt.methods, ["method1", "method2"])
        self.assertEqual(evt.objects, ["object1", "object2"])
        self.assertEqual(evt.record_in_processes, ["content"])
        self.assertEqual(evt.products, ["fennec"])
        self.assertEqual(evt.operating_systems, ["windows"])
        self.assertEqual(sorted(evt.extra_keys), ["key1", "key2"])
示例#2
0
    def test_absent_products(self):
        SAMPLE_EVENT = """
methods: ["method1", "method2"]
objects: ["object1", "object2"]
bug_numbers: [12345]
notification_emails: ["*****@*****.**", "*****@*****.**"]
record_in_processes: ["content"]
description: This is a test entry for Telemetry.
expiry_version: never
"""
        event = load_event(SAMPLE_EVENT)
        self.assertRaises(
            SystemExit, lambda: parse_events.EventData(
                "CATEGORY", "test_event", event, strict_type_checks=True))
示例#3
0
    def test_wrong_collection(self):
        SAMPLE_EVENT = """
objects: ["object1", "object2"]
bug_numbers: [12345]
notification_emails: ["*****@*****.**", "*****@*****.**"]
record_in_processes: ["main"]
description: This is a test entry for Telemetry.
expiry_version: never
release_channel_collection: none
"""
        event = load_event(SAMPLE_EVENT)
        parse_events.EventData("CATEGORY",
                               "test_event",
                               event,
                               strict_type_checks=True)

        self.assertRaises(SystemExit, ParserError.exit_func)
示例#4
0
    def test_valid_event_defaults(self):
        SAMPLE_EVENT = """
objects: ["object1", "object2"]
bug_numbers: [12345]
notification_emails: ["*****@*****.**", "*****@*****.**"]
record_in_processes: ["main"]
description: This is a test entry for Telemetry.
expiry_version: never
"""
        name = "test_event"
        event = load_event(SAMPLE_EVENT)
        evt = parse_events.EventData("CATEGORY",
                                     name,
                                     event,
                                     strict_type_checks=True)
        ParserError.exit_func()

        self.assertEqual(evt.methods, [name])
        self.assertEqual(evt.record_in_processes, ["main"])
        self.assertEqual(evt.objects, ["object1", "object2"])
        self.assertEqual(evt.products, ["all"])
        self.assertEqual(evt.operating_systems, ["all"])
        self.assertEqual(evt.extra_keys, [])