def test_converts_dicts_recursively(self):
        input = {u'foo': u'Foo',
                 'bar': 'Bar'}

        self.assertEquals([str, str],
                          map(type, to_utf8_recursively(input).keys()))

        self.assertEquals([str, str],
                          map(type, to_utf8_recursively(input).values()))

        # assertEquals does not make any type comparision.
        # We just test that the value is the same.
        self.assertEquals(input, to_utf8_recursively(input))
Beispiel #2
0
 def get_item_data(self, brain):
     return {
         'title': to_utf8_recursively(brain.Title),
         'url': get_brain_url(brain),
         'modified': brain.modified.strftime(DATETIME_FORMAT),
         'portal_type': brain.portal_type,
         'cssclass': u'',
         }
Beispiel #3
0
    def __call__(self):
        query = to_utf8_recursively(json.loads(self.request.get('query')))

        # ftw.solr hack https://github.com/4teamwork/ftw.solr/issues/42
        if query.get('path') == '/' or (
            isinstance(query.get('path'), dict) and query['path'].get('query') == '/'):
            del query['path']

        limit = int(self.request.get('limit'))
        brains = self._query_catalog(query, limit)

        total_length = self._count_unbatched_length(query)
        response = self.request.RESPONSE 
        response.setHeader(
            'X-total_results_length', str(total_length))
        response.setHeader('X-Theme-Disabled', 'True')
        response.setHeader("Content-type", "application/json")

        return self._serialize_results(brains)
 def test_converts_lists_recursively(self):
     self.assertEquals([str, str],
                       map(type, to_utf8_recursively([u'foo', 'bar'])))
     self.assertEquals(['foo', 'bar'],
                       to_utf8_recursively([u'foo', 'bar']))
 def test_keeps_integers(self):
     self.assertEquals(2, to_utf8_recursively(2))
 def test_converts_strings(self):
     self.assertEquals(str, type(to_utf8_recursively(u'foo')))
     self.assertEquals(str, type(to_utf8_recursively('foo')))