Exemplo n.º 1
0
    def test_without_data_should_not_validate(self):
        form = SignUpForm()
        assert not form.validate()

        assert form.errors == {
            'email': ['Sähköpostiosoite on pakollinen.'],
            'username': ['Tämä kenttä on pakollinen.'],
            'password': ['Tämä kenttä on pakollinen.']
        }
Exemplo n.º 2
0
 def test_should_validate_when_all_data_present(self):
     data = MultiDict([
         ('email', '*****@*****.**'),
         ('username', 'johndoe'),
         ('password', 'password'),
     ])
     form = SignUpForm(data)
     assert form.validate()
     assert form.errors == {}
Exemplo n.º 3
0
 def test_should_not_validate_if_not_unique_username(self):
     UserFactory(username='******')
     data = MultiDict([
         ('email', '*****@*****.**'),
         ('username', 'johndoe'),
         ('password', 'password')
     ])
     form = SignUpForm(data)
     assert not form.validate()
     assert form.errors == {'username': ['Käyttäjänimi jo käytössä.']}
Exemplo n.º 4
0
 def test_should_not_validate_if_not_unique_email(self):
     UserFactory(email='*****@*****.**')
     data = MultiDict([
         ('email', '*****@*****.**'),
         ('username', 'johndoe'),
         ('password', 'password'),
     ])
     form = SignUpForm(data)
     assert not form.validate()
     assert form.errors == {'email': ['Sähköposti jo käytössä.']}
Exemplo n.º 5
0
def sign_up():
    if current_user.is_authenticated():
        flash(
            'Olet jo kirjautuneena sisään. '
            'Luodaksesi uuden tilin, kirjaudu ensin ulos.',
            'info'
            )
        return redirect(url_for('frontpage.index'))

    form = SignUpForm(request.form)
    if request.method == 'POST' and form.validate():
        user = User()
        form.populate_obj(user)
        db.session.add(user)
        db.session.commit()
        send_registration_mail(user)
        flash(
            'Sähköpostiisi lähetettiin tilisi aktivointilinkki',
            'info'
        )
        return redirect(url_for('frontpage.index'))
    else:
        return render_template('auth/sign_up.html', form=form)