def leave_message(request, username): if request.is_ajax(): user = get_object_or_404(User, username__iexact = username) form = ComposeForm(request.POST) if form.is_valid(): msg = form.save(sender = request.user) if msg: return render_to_response('umessages/message.html', {'message': msg}) else: return HttpResponse('Failed') else: raise Http404
def test_save_msg(self): """ Test valid data """ valid_data = {'to': 'john, jane', 'body': 'Body'} form = ComposeForm(data=valid_data) self.failUnless(form.is_valid()) # Save the form. sender = get_user_model().objects.get(username='******') msg = form.save(sender) # Check if the values are set correctly self.failUnlessEqual(msg.body, valid_data['body']) self.failUnlessEqual(msg.sender, sender) self.failUnless(msg.sent_at) # Check recipients self.failUnlessEqual(msg.recipients.all()[0].username, 'jane') self.failUnlessEqual(msg.recipients.all()[1].username, 'john')
def test_save_msg(self): """ Test valid data """ valid_data = {"to": "john, jane", "body": "Body"} form = ComposeForm(data=valid_data) self.assertTrue(form.is_valid()) # Save the form. sender = get_user_model().objects.get(username="******") msg = form.save(sender) # Check if the values are set correctly self.assertEqual(msg.body, valid_data["body"]) self.assertEqual(msg.sender, sender) self.assertTrue(msg.sent_at) # Check recipients self.assertEqual(msg.recipients.all()[0].username, "jane") self.assertEqual(msg.recipients.all()[1].username, "john")
def test_invalid_data(self): """ Test the save method of :class:`ComposeForm` We don't need to make the ``to`` field sweat because we have done that in the ``fields`` test. """ invalid_data_dicts = [ # No body {'data': {'to': 'john', 'body': ''}, 'error': ('body', [u'This field is required.'])}, ] for invalid_dict in invalid_data_dicts: form = ComposeForm(data=invalid_dict['data']) self.failIf(form.is_valid()) self.assertEqual(form.errors[invalid_dict['error'][0]], invalid_dict['error'][1])
def test_invalid_data(self): """ Test the save method of :class:`ComposeForm` We don't need to make the ``to`` field sweat because we have done that in the ``fields`` test. """ invalid_data_dicts = [ # No body { "data": { "to": "john", "body": "" }, "error": ("body", ["This field is required."]), } ] for invalid_dict in invalid_data_dicts: form = ComposeForm(data=invalid_dict["data"]) self.assertFalse(form.is_valid()) self.assertEqual(form.errors[invalid_dict["error"][0]], invalid_dict["error"][1])