def test_article_is_properly_serialized(self): object_serializer.register(Publishable, lambda r, a: 'Publishable %s' % a.id) object_serializer.register(Article, lambda r, a: 'Article %s' % a.id, FULL) art = Article(id=42) tools.assert_equals('Publishable 42', object_serializer.serialize(None, art))
'url': publishable.get_absolute_url(), 'title': publishable.title, 'publish_from': to_timestamp(publishable.publish_from) * 1000, 'content_type': publishable.content_type.name, 'description': publishable.description, 'photo': serialize_photo(request, publishable.photo, formats=api_settings.PUBLISHABLE_PHOTO_FORMATS) if publishable.photo_id else None, 'authors': [serialize_author(request, a) for a in publishable.authors.all()], 'source': serialize_source(request, publishable.source) if publishable.source_id else None } def serialize_listing(request, listing): return object_serializer.serialize(request, listing.publishable) response_serializer.register('application/json', simplejson.dumps) object_serializer.register(list, serialize_list) object_serializer.register(dict, serialize_dict) object_serializer.register(tuple, serialize_list) object_serializer.register(Page, serialize_page) object_serializer.register(Author, serialize_full_author, FULL) object_serializer.register(Author, serialize_author) object_serializer.register(Source, serialize_source) object_serializer.register(Category, serialize_category) object_serializer.register(Category, serialize_full_category, FULL) object_serializer.register(Photo, serialize_photo) object_serializer.register(Publishable, serialize_publishable) object_serializer.register(Listing, serialize_listing)
def setUp(self): super(TestObjectDetail, self).setUp() self.old_registry = object_serializer._registry.copy() object_serializer.register(Article, lambda a: 'Article %s' % a.pk, FULL)
def serialize_photo(photo, formats=None): if formats is None: formats = api_settings.DEFAULT_PHOTO_FORMATS return dict((f, FormatedPhoto.objects.get_photo_in_format(photo, f, False)) for f in formats) def serialize_publishable(publishable): return { 'id': publishable.id, 'url': publishable.get_absolute_url(), 'content_type': publishable.content_type.name, 'description': publishable.description, # don't use object_serializer to avoid fetching Photo model instance 'photo': serialize_photo(publishable.photo_id, formats=api_settings.PUBLISHABLE_PHOTO_FORMATS), } def serialize_listing(listing): return object_serializer.serialize(listing.publishable, PARTIAL) response_serializer.register('application/json', simplejson.dumps) object_serializer.register(list, serialize_list) object_serializer.register(dict, serialize_dict) object_serializer.register(tuple, serialize_list) object_serializer.register(Page, serialize_page) object_serializer.register(Author, serialize_author) object_serializer.register(Category, serialize_category) object_serializer.register(Photo, serialize_photo) object_serializer.register(Publishable, serialize_publishable) object_serializer.register(Listing, serialize_listing, PARTIAL)
def test_article_is_properly_serialized(self): object_serializer.register(Publishable, lambda r, a: "Publishable %s" % a.id) object_serializer.register(Article, lambda r, a: "Article %s" % a.id, FULL) art = Article(id=42) tools.assert_equals("Publishable 42", object_serializer.serialize(None, art))
def setUp(self): super(TestObjectDetail, self).setUp() self.old_registry = object_serializer._registry.copy() object_serializer.register(Article, lambda r, a: 'Article %s' % a.pk, FULL)