def test_unit_auth_form_with_invalid_user(self): """ This is the unit test for user_auth.auth_forms. It tests if it operates correctly with invalid request which will be trying to register with username that is already in our database. """ # mock forms. with patch('user_auth.auth_forms.forms') as form: form.CharField = MagicMock(return_value="charfield") form.EmailField = MagicMock(return_value="emailfield") with patch('user_auth.auth_forms.User') as user: user.objects.get = MagicMock(return_value=False) user.objects.create_user = MagicMock() user.objects.create_user.return_value = MagicMock() user.save = MagicMock() with patch('user_auth.auth_forms.UserInfo') as user_info: user_info.objects.create = MagicMock() user_info.save = MagicMock() ins = RegisterForm() ins.cleaned_data = MagicMock(return_value=None) ins.register_form() # asserts self.assertTrue(user_info.objects.create.called) self.assertTrue(user.objects.get.called) self.assertTrue(user.objects.create_user.called)