Exemple #1
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)
Exemple #2
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'})
Exemple #3
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)
Exemple #4
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)
Exemple #5
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)
Exemple #6
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)
Exemple #7
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)
Exemple #8
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])
Exemple #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])
Exemple #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])
Exemple #11
0
 def test_valid_property_false(self):
     """ParserBase - Valid Property"""
     parser = ParserBase(None)
     assert_equal(parser.valid, False)
Exemple #12
0
 def test_valid_property(self):
     """ParserBase - Valid Property"""
     parser = ParserBase(None)
     parser._valid_parses.append('foobar')
     assert_equal(parser.valid, True)
Exemple #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)