Пример #1
0
 def __init__(
     self,
     request,
     separate_replies=False,
     separate_wildcard_uri_keys=True,
     _replies_limit=200,
 ):
     self.es = request.es
     self.separate_replies = separate_replies
     self._replies_limit = _replies_limit
     # Order matters! The KeyValueMatcher must be run last,
     # after all other modifiers have popped off the params.
     self._modifiers = [
         query.Sorter(),
         query.Limiter(),
         query.DeletedFilter(),
         query.AuthFilter(request),
         query.GroupFilter(),
         query.GroupAuthFilter(request),
         query.UserFilter(),
         query.HiddenFilter(request),
         query.AnyMatcher(),
         query.TagsMatcher(),
         query.UriCombinedWildcardFilter(
             request, separate_keys=separate_wildcard_uri_keys
         ),
         query.KeyValueMatcher(),
     ]
     self._aggregations = []
Пример #2
0
    def test_returns_terms_filter(self, pyramid_request, group_service):
        group_service.groupids_readable_by.return_value = ['group-a', 'group-b']

        filter_ = query.GroupAuthFilter(pyramid_request)
        result = filter_({})

        assert result == {'terms': {'group': ['group-a', 'group-b']}}
Пример #3
0
    def test_fetches_readable_groups(self, pyramid_request, group_service):
        pyramid_request.user = mock.sentinel.user

        filter_ = query.GroupAuthFilter(pyramid_request)
        filter_({})

        group_service.groupids_readable_by.assert_called_once_with(mock.sentinel.user)
Пример #4
0
Файл: core.py Проект: kael/h
 def __init__(self,
              request,
              separate_replies=False,
              stats=None,
              _replies_limit=200):
     self.es = request.es
     self.separate_replies = separate_replies
     self.stats = stats
     self._replies_limit = _replies_limit
     # Order matters! The KeyValueMatcher must be run last,
     # after all other modifiers have popped off the params.
     self._modifiers = [
         query.Sorter(),
         query.Limiter(),
         query.DeletedFilter(),
         query.AuthFilter(request),
         query.GroupFilter(),
         query.GroupAuthFilter(request),
         query.UserFilter(),
         query.NipsaFilter(request),
         query.AnyMatcher(),
         query.TagsMatcher(),
         query.KeyValueMatcher()
     ]
     self._aggregations = []
Пример #5
0
 def _default_querybuilder(request, es):
     builder = query.Builder(es_version=es.version)
     builder.append_filter(query.DeletedFilter())
     builder.append_filter(query.AuthFilter(request))
     builder.append_filter(query.UriFilter(request))
     builder.append_filter(query.GroupFilter())
     builder.append_filter(query.GroupAuthFilter(request))
     builder.append_filter(query.UserFilter())
     builder.append_filter(query.NipsaFilter(request))
     builder.append_matcher(query.AnyMatcher())
     builder.append_matcher(query.TagsMatcher())
     return builder
Пример #6
0
 def search(self, search, pyramid_request):
     search.append_modifier(query.GroupAuthFilter(pyramid_request))
     return search