class RegistrationAutoLoginTestCase(TestCase): backend = DefaultRegistrationBackend() mock_request = mock_request() def test_no_auto_login_with_setting(self): """Auto login feature should be able to off with ``REGISTRATION_AUTO_LOGIN = False``""" self.mock_request.user = AnonymousUser() with override_settings(REGISTRATION_AUTO_LOGIN = False): new_user = self.backend.register( 'bob', '*****@*****.**', request=self.mock_request, ) self.backend.accept( new_user.registration_profile, request=self.mock_request, ) self.backend.activate( new_user.registration_profile.activation_key, password='******',request=self.mock_request, ) self.failIf(self.mock_request.user.is_authenticated()) def test_no_auto_login_with_no_password(self): """Auto login feature should not be occur with no password (programatically activated by Django Admin action) """ self.mock_request.user = AnonymousUser() new_user = self.backend.register( 'bob', '*****@*****.**', request=self.mock_request, ) self.backend.accept( new_user.registration_profile, request=self.mock_request, ) self.backend.activate( new_user.registration_profile.activation_key, request=self.mock_request, ) self.failIf(self.mock_request.user.is_authenticated()) def test_auto_login(self): """Wheather auto login feature works correctly""" self.mock_request.user = AnonymousUser() new_user = self.backend.register( 'bob', '*****@*****.**', request=self.mock_request, ) self.backend.accept( new_user.registration_profile, request=self.mock_request, ) self.backend.activate( new_user.registration_profile.activation_key, password='******',request=self.mock_request, ) self.failUnless(self.mock_request.user.is_authenticated())
def setUp(self): self.backend = DefaultRegistrationBackend() self.mock_request = mock_request() self.admin = User.objects.create_superuser(username='******', email='*****@*****.**', password='******') self.client.login(username='******', password='******') self.admin_url = reverse('admin:index')
def setUp(self): self.backend = DefaultRegistrationBackend() self.mock_request = mock_request() self.admin = User.objects.create_superuser( username='******', email='*****@*****.**', password='******') self.client.login(username='******', password='******') self.admin_url = reverse('admin:index')
def test_invite_to_slack(self): """ Personaがacceptされたとき、Slackに自動的に招待する """ request = mock_request() backend = DefaultRegistrationBackend() with patch.object(SlackInvitationClient, 'invite') as invite: new_user = backend.register(username='******', email='*****@*****.**', request=request) profile = new_user.registration_profile backend.accept(profile, request=request) invite.assert_called_with('*****@*****.**')
def test_invite_to_slack(self): """ Personaがacceptされたとき、Slackに自動的に招待する """ request = mock_request() backend = DefaultRegistrationBackend() with patch.object(SlackInvitationClient, 'invite') as invite: new_user = backend.register( username='******', email='*****@*****.**', request=request) profile = new_user.registration_profile backend.accept(profile, request=request) invite.assert_called_with('*****@*****.**')
class RegistrationNotificationTestCase(TestCase): backend = DefaultRegistrationBackend() mock_request = mock_request() def test_notify_admins(self): with override_settings(REGISTRATION_NOTIFICATION_MANAGERS=False): self.backend.register( 'bob', '*****@*****.**', request=self.mock_request ) self.assertEqual(len(mail.outbox), 1) self.assertEqual(sorted(mail.outbox[0].to), sorted([ '*****@*****.**', '*****@*****.**', ])) def test_notify_managers(self): with override_settings(REGISTRATION_NOTIFICATION_ADMINS=False): self.backend.register( 'bob', '*****@*****.**', request=self.mock_request ) self.assertEqual(len(mail.outbox), 1) self.assertEqual(sorted(mail.outbox[0].to), sorted([ '*****@*****.**', '*****@*****.**', ])) def test_notify_recipients_iterable(self): with override_settings( REGISTRATION_NOTIFICATION_ADMINS = False, REGISTRATION_NOTIFICATION_MANAGERS = False, REGISTRATION_NOTIFICATION_RECIPIENTS=( '*****@*****.**', '*****@*****.**', )): self.backend.register( 'bob', '*****@*****.**', request=self.mock_request ) self.assertEqual(len(mail.outbox), 1) self.assertEqual(sorted(mail.outbox[0].to), sorted([ '*****@*****.**', '*****@*****.**', ])) def test_notify_recipients_function(self): with override_settings( REGISTRATION_NOTIFICATION_ADMINS=False, REGISTRATION_NOTIFICATION_MANAGERS=False, REGISTRATION_NOTIFICATION_RECIPIENTS=lambda:( '*****@*****.**', '*****@*****.**', )): self.backend.register( 'bob', '*****@*****.**', request=self.mock_request ) self.assertEqual(len(mail.outbox), 1) self.assertEqual(sorted(mail.outbox[0].to), sorted([ '*****@*****.**', '*****@*****.**', ])) def test_notify_all(self): with override_settings( REGISTRATION_NOTIFICATION_ADMINS=True, REGISTRATION_NOTIFICATION_MANAGERS=True, REGISTRATION_NOTIFICATION_RECIPIENTS=( '*****@*****.**', '*****@*****.**', )): self.backend.register( 'bob', '*****@*****.**', request=self.mock_request ) self.assertEqual(len(mail.outbox), 1) self.assertEqual(sorted(mail.outbox[0].to), sorted([ '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**', ])) def test_notify_duplicated(self): with override_settings( REGISTRATION_NOTIFICATION_ADMINS=True, REGISTRATION_NOTIFICATION_MANAGERS=True, REGISTRATION_NOTIFICATION_RECIPIENTS=( '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**', ), ADMINS=( ('admin1', '*****@*****.**'), ('admin2', '*****@*****.**'), ('manager1', '*****@*****.**'), ('manager2', '*****@*****.**'), ('recipient1', '*****@*****.**'), ('recipient2', '*****@*****.**'), ), MANAGERS=( ('admin1', '*****@*****.**'), ('admin2', '*****@*****.**'), ('manager1', '*****@*****.**'), ('manager2', '*****@*****.**'), ('recipient1', '*****@*****.**'), ('recipient2', '*****@*****.**'), )): self.backend.register( 'bob', '*****@*****.**', request=self.mock_request ) self.assertEqual(len(mail.outbox), 1) self.assertEqual(sorted(mail.outbox[0].to), sorted([ '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**', '*****@*****.**', ]))
def setUp(self): self.backend = DefaultRegistrationBackend() self.mock_request = mock_request()