Beispiel #1
0
    def test_key_remapping(self):
        class RemapVisitor(SearchVisitor):
            key_mappings = {
                'target_value': ['someValue', 'legacy-value'],
            }

        tree = event_search_grammar.parse(
            'someValue:123 legacy-value:456 normal_value:hello')
        assert RemapVisitor().visit(tree) == [
            SearchFilter(
                key=SearchKey(name='target_value'),
                operator='=',
                value=SearchValue('123'),
            ),
            SearchFilter(
                key=SearchKey(name='target_value'),
                operator='=',
                value=SearchValue('456'),
            ),
            SearchFilter(
                key=SearchKey(name='normal_value'),
                operator='=',
                value=SearchValue('hello'),
            ),
        ]
Beispiel #2
0
def parse_search_query(query):
    try:
        tree = event_search_grammar.parse(query)
    except IncompleteParseError as e:
        raise InvalidSearchQuery("%s %s" % (
            "Parse error: %r (column %d)." % (e.expr.name, e.column()),
            "This is commonly caused by unmatched-parentheses. Enclose any text in double quotes.",
        ))
    return IssueSearchVisitor(allow_boolean=False).visit(tree)
Beispiel #3
0
    def test_key_remapping(self):
        class RemapVisitor(SearchVisitor):
            key_mappings = {"target_value": ["someValue", "legacy-value"]}

        tree = event_search_grammar.parse("someValue:123 legacy-value:456 normal_value:hello")
        assert RemapVisitor().visit(tree) == [
            SearchFilter(
                key=SearchKey(name="target_value"), operator="=", value=SearchValue("123")
            ),
            SearchFilter(
                key=SearchKey(name="target_value"), operator="=", value=SearchValue("456")
            ),
            SearchFilter(
                key=SearchKey(name="normal_value"), operator="=", value=SearchValue("hello")
            ),
        ]
Beispiel #4
0
    def test_key_remapping(self):
        class RemapVisitor(SearchVisitor):
            key_mappings = {
                'target_value': ['someValue', 'legacy-value'],
            }

        tree = event_search_grammar.parse('someValue:123 legacy-value:456 normal_value:hello')
        assert RemapVisitor().visit(tree) == [
            SearchFilter(
                key=SearchKey(name='target_value'),
                operator='=',
                value=SearchValue('123'),
            ),
            SearchFilter(
                key=SearchKey(name='target_value'),
                operator='=',
                value=SearchValue('456'),
            ),
            SearchFilter(
                key=SearchKey(name='normal_value'),
                operator='=',
                value=SearchValue('hello'),
            ),
        ]
def parse_search_query(query):
    tree = event_search_grammar.parse(query)
    return IssueSearchVisitor().visit(tree)
Beispiel #6
0
def parse_search_query(query):
    tree = event_search_grammar.parse(query)
    return IssueSearchVisitor().visit(tree)