本文整理汇总了Python中horus.views.RegisterController类的典型用法代码示例。如果您正苦于以下问题:Python RegisterController类的具体用法?Python RegisterController怎么用?Python RegisterController使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了RegisterController类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_register_validation
def test_register_validation(self):
from horus.views import RegisterController
from pyramid_mailer.mailer import DummyMailer
from pyramid_mailer.interfaces import IMailer
from horus.interfaces import IUserClass
from horus.tests.models import User
from horus.interfaces import IActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IActivationClass)
self.config.registry.registerUtility(User, IUserClass)
self.config.include('horus')
self.config.registry.registerUtility(DummyMailer(), IMailer)
self.config.add_route('index', '/')
request = self.get_csrf_request(request_method='POST')
request.user = Mock()
controller = RegisterController(request)
response = controller.register()
assert len(response['errors']) == 3
assert 'There was a problem with your submission' in response['form']
示例2: test_activate_invalid
def test_activate_invalid(self):
from horus.views import RegisterController
from pyramid_mailer.interfaces import IMailer
from pyramid_mailer.mailer import DummyMailer
from horus.interfaces import IUserClass
from horus.tests.models import User
from horus.interfaces import IActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IActivationClass)
self.config.registry.registerUtility(User, IUserClass)
self.config.include('horus')
self.config.add_route('index', '/')
self.config.registry.registerUtility(DummyMailer(), IMailer)
user = User(username='sontek', email='[email protected]')
user.password = 'temp'
user.activation = Activation()
self.session.add(user)
self.session.flush()
request = testing.DummyRequest()
request.matchdict = Mock()
get = Mock()
get.return_value = 'invalid'
request.matchdict.get = get
controller = RegisterController(request)
response = controller.activate()
user = User.get_by_username(request, 'sontek')
assert not user.is_activated
assert response.status_int == 404
示例3: test_register_existing_user
def test_register_existing_user(self):
from horus.views import RegisterController
from pyramid_mailer.mailer import DummyMailer
from pyramid_mailer.interfaces import IMailer
from horus.interfaces import IUserClass
from horus.tests.models import User
from horus.interfaces import IActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IActivationClass)
self.config.registry.registerUtility(User, IUserClass)
self.config.include('horus')
self.config.registry.registerUtility(DummyMailer(), IMailer)
self.config.add_route('index', '/')
admin = User(username='sontek', email='[email protected]')
admin.password = 'test123'
self.session.add(admin)
self.session.flush()
request = self.get_csrf_request(post={
'username': 'sontek',
'password': {
'password': 'test123',
'password-confirm': 'test123',
},
'email': '[email protected]'
}, request_method='POST')
view = RegisterController(request)
adict = view.register()
assert isinstance(adict, dict)
assert adict['errors']
示例4: test_register_redirects_if_logged_in
def test_register_redirects_if_logged_in(self):
from horus.views import RegisterController
from pyramid_mailer.mailer import DummyMailer
from pyramid_mailer.interfaces import IMailer
from horus.interfaces import IUserClass
from horus.tests.models import User
from horus.interfaces import IActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IActivationClass)
self.config.registry.registerUtility(User, IUserClass)
self.config.include('horus')
self.config.registry.registerUtility(DummyMailer(), IMailer)
self.config.add_route('index', '/')
self.config.registry.settings['horus.login_redirect'] = 'index'
self.config.registry.settings['horus.logout_redirect'] = 'index'
request = testing.DummyRequest()
request.user = Mock()
controller = RegisterController(request)
response = controller.register()
assert response.status_int == 302
示例5: test_register_creates_user
def test_register_creates_user(self):
from horus.views import RegisterController
from pyramid_mailer.mailer import DummyMailer
from pyramid_mailer.interfaces import IMailer
from horus.interfaces import IUserClass
from horus.tests.models import User
from horus.interfaces import IActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IActivationClass)
self.config.registry.registerUtility(User, IUserClass)
self.config.include('horus')
self.config.registry.registerUtility(DummyMailer(), IMailer)
self.config.add_route('index', '/')
request = self.get_csrf_request(post={
'username': 'admin',
'password': {
'password': 'test123',
'password-confirm': 'test123',
},
'email': '[email protected]'
}, request_method='POST')
request.user = Mock()
controller = RegisterController(request)
response = controller.register()
assert response.status_int == 302
user = User.get_by_username(request, 'admin')
assert user != None
示例6: test_register_no_email_validation
def test_register_no_email_validation(self):
from horus.views import RegisterController
from pyramid_mailer.mailer import DummyMailer
from pyramid_mailer.interfaces import IMailer
from hem.interfaces import IDBSession
from horus.events import NewRegistrationEvent
from horus.interfaces import IUserClass
from horus.tests.models import User
from horus.interfaces import IActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IActivationClass)
self.config.registry.registerUtility(User, IUserClass)
self.config.include('horus')
self.config.registry.registerUtility(DummyMailer(), IMailer)
self.config.add_route('index', '/')
self.config.registry.settings['horus.require_activation'] = False
def handle_registration(event):
request = event.request
session = request.registry.getUtility(IDBSession)
session.commit()
self.config.add_subscriber(handle_registration, NewRegistrationEvent)
request = self.get_csrf_request(post={
'username': 'admin',
'password': {
'password': 'test123',
'password-confirm': 'test123',
},
'email': '[email protected]'
}, request_method='POST')
flash = Mock()
request.session.flash = flash
request.user = Mock()
controller = RegisterController(request)
response = controller.register()
assert response.status_int == 302
user = User.get_by_username(request, 'admin')
assert user.is_activated == True
flash.assert_called_with(
'You have been registered, you may log in now!', 'success')
示例7: test_activate_invalid_user
def test_activate_invalid_user(self):
from horus.views import RegisterController
from pyramid_mailer.interfaces import IMailer
from pyramid_mailer.mailer import DummyMailer
from horus.interfaces import IUserClass
from horus.tests.models import User
from horus.interfaces import IActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IActivationClass)
self.config.registry.registerUtility(User, IUserClass)
self.config.include('horus')
self.config.add_route('index', '/')
self.config.registry.registerUtility(DummyMailer(), IMailer)
bad_act = Activation()
user = User(username='sontek', email='[email protected]')
user.activation = Activation()
user.password = 'foo'
user2 = User(username='jessie', email='[email protected]')
user2.activation = bad_act
user2.password = 'foo2'
self.session.add(user)
self.session.add(user2)
self.session.flush()
request = testing.DummyRequest()
request.matchdict = Mock()
def get(val, ret):
if val == 'code':
return bad_act.code
elif val == 'user_id':
return user.id
request.matchdict.get = get
controller = RegisterController(request)
response = controller.activate()
new_user1 = User.get_by_username(request, 'sontek')
new_user2 = User.get_by_username(request, 'jessie')
assert not new_user1.is_activated
assert not new_user2.is_activated
assert response.status_int == 404
示例8: test_activate_multiple_users
def test_activate_multiple_users(self):
from horus.views import RegisterController
from pyramid_mailer.interfaces import IMailer
from pyramid_mailer.mailer import DummyMailer
from horus.interfaces import IUserClass
from horus.tests.models import User
from horus.interfaces import IActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IActivationClass)
self.config.registry.registerUtility(User, IUserClass)
self.config.include('horus')
self.config.add_route('index', '/')
self.config.registry.registerUtility(DummyMailer(), IMailer)
user = User(username='sontek', email='[email protected]')
user.activation = Activation()
user.password = 'foo'
user1 = User(username='sontek1', email='[email protected]')
user1.activation = Activation()
user1.password = 'foo2'
self.session.add(user)
self.session.add(user1)
self.session.flush()
request = testing.DummyRequest()
request.matchdict = Mock()
def get(key, default):
if key == 'code':
return user1.activation.code
else:
return user1.id
request.matchdict.get = get
controller = RegisterController(request)
response = controller.activate()
user = User.get_by_username(request, 'sontek1')
activations = Activation.get_all(request)
assert len(activations.all()) == 1
assert user.is_activated
assert response.status_int == 302
示例9: test_activate
def test_activate(self):
from horus.views import RegisterController
from pyramid_mailer.interfaces import IMailer
from pyramid_mailer.mailer import DummyMailer
from horus.interfaces import IHorusUserClass
from horus.tests.models import User
from horus.interfaces import IHorusActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IHorusActivationClass)
self.config.registry.registerUtility(User, IHorusUserClass)
self.config.include('horus')
self.config.add_route('index', '/')
self.config.registry.registerUtility(DummyMailer(), IMailer)
user = User(user_name='sontek', email='[email protected]')
user.set_password('foo')
user.activation = Activation()
self.session.add(user)
self.session.flush()
request = testing.DummyRequest()
request.matchdict = Mock()
def get(key, default):
if key == 'code':
return user.activation.code
else:
return user.pk
request.matchdict.get = get
controller = RegisterController(request)
response = controller.activate()
user = User.get_by_user_name(request, 'sontek')
assert user.is_activated
assert response.status_int == 302
示例10: test_registration_craps_out
def test_registration_craps_out(self):
from horus.views import RegisterController
from pyramid_mailer.interfaces import IMailer
from horus.interfaces import IHorusUserClass
from horus.tests.models import User
from horus.interfaces import IHorusActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IHorusActivationClass)
self.config.registry.registerUtility(User, IHorusUserClass)
def send(message):
raise Exception("I broke!")
mailer = Mock()
mailer.send = send
self.config.include('horus')
self.config.registry.registerUtility(mailer, IMailer)
self.config.add_route('index', '/')
request = self.get_csrf_request(post={
'Username': 'admin',
'Password': {
'Password': 'test123',
'Password-confirm': 'test123',
},
'Email': '[email protected]'
}, request_method='POST')
flash = Mock()
request.session.flash = flash
request.user = Mock()
controller = RegisterController(request)
controller.register()
flash.assert_called_with('I broke!', 'error')
示例11: test_register_existing_user
def test_register_existing_user(self):
from horus.views import RegisterController
from pyramid_mailer.mailer import DummyMailer
from pyramid_mailer.interfaces import IMailer
from horus.interfaces import IHorusUserClass
from horus.tests.models import User
from horus.interfaces import IHorusActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IHorusActivationClass)
self.config.registry.registerUtility(User, IHorusUserClass)
self.config.include('horus')
self.config.registry.registerUtility(DummyMailer(), IMailer)
self.config.add_route('index', '/')
admin = User(username='sontek', email='[email protected]')
admin.set_password('test123')
self.session.add(admin)
self.session.flush()
request = self.get_csrf_request(post={
'Username': 'sontek',
'Password': {
'Password': 'test123',
'Password-confirm': 'test123',
},
'Email': '[email protected]'
}, request_method='POST')
flash = Mock()
request.session.flash = flash
controller = RegisterController(request)
controller.register()
flash.assert_called_with(u'That username is already used.', 'error')
示例12: test_register_loads_not_logged_in
def test_register_loads_not_logged_in(self):
from horus.views import RegisterController
from pyramid_mailer.mailer import DummyMailer
from pyramid_mailer.interfaces import IMailer
from horus.interfaces import IUserClass
from horus.tests.models import User
from horus.interfaces import IActivationClass
from horus.tests.models import Activation
self.config.registry.registerUtility(Activation, IActivationClass)
self.config.registry.registerUtility(User, IUserClass)
self.config.registry.registerUtility(DummyMailer(), IMailer)
self.config.include('horus')
self.config.add_route('index', '/')
request = testing.DummyRequest()
request.user = None
controller = RegisterController(request)
response = controller.register()
assert response.get('form', None)