123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- from django.contrib.auth import get_user_model
- from django.core import mail
- from django.core.urlresolvers import reverse
- from django.test import TestCase
- from misago.conf import settings
- class RegisterDecoratorTests(TestCase):
- def tearDown(self):
- settings.reset_settings()
- def test_register_decorator_calls_valid_view_200(self):
- """register decorator calls valid view"""
- settings.override_setting('account_activation', 'disabled')
- response = self.client.get(reverse('misago:register'))
- self.assertEqual(response.status_code, 200)
- self.assertIn('new registrations are not currently accepted',
- response.content)
- settings.override_setting('account_activation', 'none')
- response = self.client.get(reverse('misago:register'))
- self.assertEqual(response.status_code, 200)
- self.assertIn('Register new account',
- response.content)
- class RegisterViewTests(TestCase):
- def test_register_view_get_returns_200(self):
- """register view returns 200 on GET"""
- response = self.client.get(reverse('misago:register'))
- self.assertEqual(response.status_code, 200)
- def test_register_view_post_creates_active_user(self):
- """register view creates active and signed in user on POST"""
- settings.override_setting('account_activation', 'none')
- response = self.client.post(reverse('misago:register'),
- data={'username': 'Bob',
- 'email': 'bob@bob.com',
- 'password': 'pass123'})
- self.assertEqual(response.status_code, 302)
- response = self.client.get(reverse('misago:index'))
- self.assertIn('Bob', response.content)
- User = get_user_model()
- User.objects.get_by_username('Bob')
- User.objects.get_by_email('bob@bob.com')
- response = self.client.get(reverse('misago:index'))
- self.assertIn('Bob', response.content)
- self.assertIn('Welcome', mail.outbox[0].subject)
- def test_register_view_post_creates_inactive_user(self):
- """register view creates inactive user on POST"""
- settings.override_setting('account_activation', 'user')
- response = self.client.post(reverse('misago:register'),
- data={'username': 'Bob',
- 'email': 'bob@bob.com',
- 'password': 'pass123'})
- self.assertEqual(response.status_code, 302)
- response = self.client.get(reverse('misago:register_completed'))
- self.assertIn('bob@bob.com', response.content)
- User = get_user_model()
- User.objects.get_by_username('Bob')
- User.objects.get_by_email('bob@bob.com')
- self.assertIn('Welcome', mail.outbox[0].subject)
- def test_register_view_post_creates_admin_activated_user(self):
- """register view creates admin activated user on POST"""
- settings.override_setting('account_activation', 'admin')
- response = self.client.post(reverse('misago:register'),
- data={'username': 'Bob',
- 'email': 'bob@bob.com',
- 'password': 'pass123'})
- self.assertEqual(response.status_code, 302)
- response = self.client.get(reverse('misago:register_completed'))
- self.assertIn('administrator', response.content)
- User = get_user_model()
- User.objects.get_by_username('Bob')
- User.objects.get_by_email('bob@bob.com')
- self.assertIn('Welcome', mail.outbox[0].subject)
|