def test_place_partial_update(self): request = RequestFactory().get('') request.get_dataset = lambda: self.dataset view = PlaceInstanceView() view.request = request serializer = PlaceSerializer( self.place, context={ 'view': view, 'request': request, 'include_private': True }, data={ 'private-attr': 4, 'new-attr': 5, 'geometry': 'POINT(4 5)' }, partial=True, ) self.assert_(serializer.is_valid()) serializer.save() self.assertEqual(json.loads(self.place.data), { 'public-attr': 1, 'private-attr': 4, 'new-attr': 5 }) self.assertEqual(self.place.geometry.wkt, GEOSGeometry('POINT(4 5)').wkt)
def test_visible_has_truthy_boolean_values(self): # You should be able to use case-insensitive "on", "yes" and "true" for # the visible value (primarily for backwards compatibility). request = RequestFactory().get('') request.get_dataset = lambda: self.dataset view = PlaceInstanceView() view.request = request self.place.visible = False self.place.save() self.place.refresh_from_db() self.assert_(not self.place.visible) serializer = PlaceSerializer( self.place, context={ 'view': view, 'request': request }, data={'visible': 'On'}, partial=True, ) self.assert_(serializer.is_valid()) serializer.save() self.place.refresh_from_db() self.assert_(self.place.visible)
def test_place_has_right_number_of_submissions(self): request = RequestFactory().get('') request.get_dataset = lambda: self.dataset serializer = PlaceSerializer(self.place) serializer.context = {'request': request} self.assertEqual(serializer.data['submission_sets']['comments']['length'], 2)
def test_place_has_right_number_of_submissions(self): request = RequestFactory().get("") request.get_dataset = lambda: self.dataset serializer = PlaceSerializer(self.place) serializer.context = {"request": request} self.assertEqual(serializer.data["submission_sets"]["comments"]["length"], 2)
def test_can_serlialize_a_null_instance(self): request = RequestFactory().get('') request.get_dataset = lambda: self.dataset serializer = PlaceSerializer(None) serializer.context = {'request': request} data = serializer.data self.assertIsInstance(data, dict)
def test_place_has_right_number_of_submissions(self): request = RequestFactory().get('') request.get_dataset = lambda: self.dataset serializer = PlaceSerializer(self.place) serializer.context = {'request': request} self.assertEqual( serializer.data['submission_sets']['comments']['length'], 2)
def test_place_hides_private_data_by_default(self): request = RequestFactory().get('') request.get_dataset = lambda: self.dataset serializer = PlaceSerializer(self.place, context={'request': request}) self.assertIn('public-attr', serializer.data) self.assertNotIn('private-attr', serializer.data)
def test_place_includes_private_data_when_specified(self): request = RequestFactory().get('') request.get_dataset = lambda: self.dataset serializer = PlaceSerializer(self.place, context={ 'request': request, 'include_private': True }) self.assertIn('public-attr', serializer.data) self.assertIn('private-attr', serializer.data)