Example #1
0
def test_searches_parsers_params_parser_filter_and_query_string_space(
        dummy_request):
    from snovault.elasticsearch.searches.parsers import ParamsParser
    dummy_request.environ['QUERY_STRING'] = (
        'type=File&status=released&file_type=bed+bed3%2B')
    p = ParamsParser(dummy_request)
    assert p.get_key_filters(key='file_type',
                             params=p.get_must_match_filters()) == [
                                 ('file_type', 'bed bed3+')
                             ]
    assert p.get_search_term_filters() == []
    assert p.get_query_string(params=p.get_search_term_filters()) == ''
    assert p.get_query_string(params=p.get_key_filters(
        key='file_type')) == 'file_type=bed+bed3%2B'
Example #2
0
def test_searches_parsers_params_parser_get_key_filters(dummy_request):
    from snovault.elasticsearch.searches.parsers import ParamsParser
    dummy_request.environ['QUERY_STRING'] = (
        'type=Experiment&type=File&status=archived&type!=Item&status!=released'
    )
    p = ParamsParser(dummy_request)
    assert p.get_key_filters(key='status') == [('status', 'archived'),
                                               ('status!', 'released')]
Example #3
0
def test_searches_parsers_params_parser_filtered_is_param(dummy_request):
    from snovault.elasticsearch.searches.parsers import ParamsParser
    dummy_request.environ['QUERY_STRING'] = (
        'type=File&status=released&file_type=bed+bed3%2B')
    p = ParamsParser(dummy_request)
    assert p.is_param('status', 'released')
    assert not p.is_param('status', 'released', params=p.get_type_filters())
    assert p.is_param('file_type',
                      'bed bed3+',
                      params=p.get_key_filters(
                          key='file_type', params=p.get_must_match_filters()))