Ejemplo n.º 1
0
    def test_json_path_records(self):
        """ParserBase - JSON Path Records"""
        expected_records = [
            {
                'foo': 'bar'
            },
            {
                'bar': 'baz'
            }
        ]
        record = {
            'key': [
                {
                    'value': expected_records
                }
            ]
        }
        options = {
            'configuration': {
                'json_path': 'key[].value[]'
            }
        }

        parser = ParserBase(options)
        records = parser._json_path_records(record)
        assert_equal(records, expected_records)
Ejemplo n.º 2
0
 def setup(self):
     """Setup before each method"""
     # pylint: disable=abstract-class-instantiated,attribute-defined-outside-init
     options = {
         'schema': {
             'timestamp': 'string',
             'host': 'string'
         },
         'configuration': {
             'optional_top_level_keys': [
                 'host'
             ],
             'log_patterns': {
                 'host': [
                     'foo*'
                 ]
             },
             'json_path': 'logEvents[].message',
             'envelope_keys': {
                 'env_key_01': 'string'
             },
             'optional_envelope_keys': [
                 'env_key_01'
             ]
         }
     }
     self._parser = ParserBase(options)
Ejemplo n.º 3
0
    def test_validate_schema_all(self):
        """ParserBase - Validate Schema, All Options"""
        options = {
            'schema': {
                'timestamp': 'string',
                'host': 'string',
                'application': 'string',
                'message': 'string'
            },
            'configuration': {
                'envelope_keys': {
                    'env_key_01': 'string',
                    'env_key_02': 'string'
                },
                'optional_envelope_keys': [
                    'env_key_01'
                ],
                'optional_top_level_keys': [
                    'host'
                ]
            }
        }

        parser = ParserBase(options)
        assert_equal(parser._validate_schema(), True)
Ejemplo n.º 4
0
 def test_add_parse_result_invalid(self):
     """ParserBase - Add Parse Result, Valid"""
     parser = ParserBase(None)
     record = {
         'key': 'value'
     }
     parser._add_parse_result(record, False, None)
     assert_equal(parser._invalid_parses, [record])
Ejemplo n.º 5
0
    def test_extract_envelope_none(self):
        """ParserBase - Extract Envelope, None"""
        record = {
            'key': 'value'
        }

        parser = ParserBase(None)
        envelope = parser._extract_envelope(record)
        assert_equal(envelope, None)
Ejemplo n.º 6
0
    def test_parse(self):
        """ParserBase - Parse, Invalid Schema"""
        options = {
            'schema': {
                'key': 'string'
            },
            'configuration': {
                'optional_top_level_keys': [
                    'non_key'
                ]
            }
        }

        assert_equal(ParserBase(options).parse(None), False)
Ejemplo n.º 7
0
    def test_extract_envelope(self):
        """ParserBase - Extract Envelope"""
        options = {
            'configuration': {
                'envelope_keys': [
                    'env_key_01'
                ]
            }
        }
        record = {
            'env_key_01': 'foo',
            'non_env_key': 'bar'
        }

        parser = ParserBase(options)
        envelope = parser._extract_envelope(record)
        assert_equal(envelope, {'env_key_01': 'foo'})
Ejemplo n.º 8
0
    def test_validate_schema_invalid(self):
        """ParserBase - Validate Schema, Invalid"""
        options = {
            'schema': {
                'timestamp': 'string',
                'host': 'string',
                'application': 'string',
                'message': 'string'
            },
            'configuration': {
                'optional_top_level_keys': [
                    'date'
                ]
            }
        }

        parser = ParserBase(options)
        assert_equal(parser._validate_schema(), False)
Ejemplo n.º 9
0
 def test_invalid_parses_property(self):
     """ParserBase - Invalid Parses Property"""
     item = 'foobar'
     parser = ParserBase(None)
     parser._invalid_parses.append(item)
     assert_equal(parser.invalid_parses, [item])
Ejemplo n.º 10
0
 def test_parses_property(self):
     """ParserBase - Parses Property"""
     item = 'foobar'
     parser = ParserBase(None)
     parser._valid_parses.append(item)
     assert_equal(parser.parsed_records, [item])
Ejemplo n.º 11
0
 def test_valid_property_false(self):
     """ParserBase - Valid Property"""
     parser = ParserBase(None)
     assert_equal(parser.valid, False)
Ejemplo n.º 12
0
 def test_valid_property(self):
     """ParserBase - Valid Property"""
     parser = ParserBase(None)
     parser._valid_parses.append('foobar')
     assert_equal(parser.valid, True)
Ejemplo n.º 13
0
 def test_log_schema_type_property(self):
     """ParserBase - Log Schema Type Property"""
     log_type = 'foobar'
     parser = ParserBase(None, log_type)
     assert_equal(parser.log_schema_type, log_type)