def test_post_with_no_data(self): data = json.dumps([]) request = self.rf.post('extract') request.user = self.user view = views.ExtractSearchView() view.request = request with patch.object(view.request, 'read') as mock_read: mock_read.return_value = data resp = view.post() self.assertEqual(resp.status_code, 400) self.assertEqual(json.loads(resp.content), dict(error="No search criteria provied"))
def test_post(self): data = json.dumps([{ u'page_number': 1, u'column': u'demographics', u'field': u'Surname', u'combine': u'and', u'query': u'Connery', u'queryType': u'Equals' }]) request = self.rf.post('extract') request.user = self.user view = views.ExtractSearchView() view.request = request with patch.object(view.request, 'read') as mock_read: mock_read.return_value = data resp = json.loads(view.post().content) self.assertEqual(1, resp['total_count']) self.assertEqual(self.patient.id, resp['object_list'][0]['patient_id'])
def test_not_logged_in_post(self): view = views.ExtractSearchView() view.request = self.get_not_logged_in_request() with self.assertRaises(PermissionDenied): view.post()