Example #1
0
def test_register_returns_errors_when_validation_fails():
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = invalid_form()

    result = controller.register()

    assert result == {"form": "invalid form"}
Example #2
0
def test_register_returns_errors_when_validation_fails():
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = invalid_form()

    result = controller.register()

    assert result == {"form": "invalid form"}
Example #3
0
def test_register_no_event_when_validation_fails(event, notify):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = invalid_form()

    controller.register()

    assert not event.called
    assert not notify.called
Example #4
0
def test_register_no_event_when_validation_fails(event, notify):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = invalid_form()

    controller.register()

    assert not event.called
    assert not notify.called
Example #5
0
def test_register_adds_new_user_to_session(user_model):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })

    controller.register()

    assert user_model.return_value in request.db.added
Example #6
0
def test_register_event_redirects_on_success():
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })

    result = controller.register()

    assert isinstance(result, httpexceptions.HTTPRedirection)
Example #7
0
def test_register_event_redirects_on_success():
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })

    result = controller.register()

    assert isinstance(result, httpexceptions.HTTPRedirection)
Example #8
0
def test_register_adds_new_user_to_session(user_model):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })

    controller.register()

    assert user_model.return_value in request.db.added
Example #9
0
def test_register_sends_activation_email(activation_email,
                                         mailer):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })

    controller.register()

    assert activation_email.return_value in mailer.outbox
Example #10
0
def test_register_sends_activation_email(activation_email,
                                         mailer):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })

    controller.register()

    assert activation_email.return_value in mailer.outbox
Example #11
0
def test_register_event_when_validation_succeeds(event, notify, user_model):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })
    new_user = user_model.return_value

    controller.register()

    event.assert_called_with(request, new_user)
    notify.assert_called_with(event.return_value)
Example #12
0
def test_register_generates_activation_email_from_user(activation_email,
                                                       user_model):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })
    new_user = user_model.return_value

    controller.register()

    activation_email.assert_called_with(request, new_user)
Example #13
0
def test_register_creates_new_activation(activation_model,
                                         user_model):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })
    new_user = user_model.return_value

    controller.register()

    assert new_user.activation == activation_model.return_value
Example #14
0
def test_register_creates_new_activation(activation_model,
                                         user_model):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })
    new_user = user_model.return_value

    controller.register()

    assert new_user.activation == activation_model.return_value
Example #15
0
def test_register_generates_activation_email_from_user(activation_email,
                                                       user_model):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })
    new_user = user_model.return_value

    controller.register()

    activation_email.assert_called_with(request, new_user)
Example #16
0
def test_register_event_when_validation_succeeds(event, notify, user_model):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })
    new_user = user_model.return_value

    controller.register()

    event.assert_called_with(request, new_user)
    notify.assert_called_with(event.return_value)
Example #17
0
def test_register_creates_user_from_form_data(user_model):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
        "random_other_field": "something else",
    })

    controller.register()

    user_model.assert_called_with(username="******",
                                  email="*****@*****.**",
                                  password="******")
Example #18
0
def test_register_creates_user_from_form_data(user_model):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
        "random_other_field": "something else",
    })

    controller.register()

    user_model.assert_called_with(username="******",
                                  email="*****@*****.**",
                                  password="******")
Example #19
0
def test_register_sends_email(activation_email, mailer):
    request = DummyRequest(method='POST')
    controller = RegisterController(request)
    controller.form = form_validating_to({
        "username": "******",
        "email": "*****@*****.**",
        "password": "******",
    })
    activation_email.return_value = {
        'recipients': ['*****@*****.**'],
        'subject': 'subject',
        'body': 'body'
    }

    controller.register()

    mailer.send.assert_called_once_with(request,
                                        recipients=['*****@*****.**'],
                                        subject='subject',
                                        body='body')