コード例 #1
0
ファイル: tests.py プロジェクト: chasebrewsky/COSC603
 def test_password_valid(self):
     """Form should be valid if passwords match."""
     data = {
         'username': '******',
         'email': '*****@*****.**',
         'password': '******',
         'password_repeated': 'password',
     }
     form = SignupForm(data=data)
     self.assertTrue(form.is_valid())
コード例 #2
0
ファイル: tests.py プロジェクト: chasebrewsky/COSC603
 def test_username_available(self):
     """Form should valid if username is available."""
     data = {
         'username': '******',
         'email': '*****@*****.**',
         'password': '******',
         'password_repeated': 'password',
     }
     form = SignupForm(data=data)
     self.assertTrue(form.is_valid())
コード例 #3
0
ファイル: tests.py プロジェクト: chasebrewsky/COSC603
 def test_form_valid_data(self):
     """Test for all fields valid"""
     form = SignupForm(
         data={
             'username': '******',
             'email': '*****@*****.**',
             'password': '******',
             'password_repeated': 'password7'
         })
     self.assertTrue(form.is_valid())
コード例 #4
0
def signup(request):
    if request.method == "POST":
        form = SignupForm(request.POST)
        if form.is_valid():
            new_user = User.objects.create_user(**form.cleaned_data)
            login(request, new_user)
            return redirect('main')
    else:
        form = SignupForm()
    return render(request, 'registration/signup.html', {'form': form})
コード例 #5
0
ファイル: tests.py プロジェクト: chasebrewsky/COSC603
 def test_password_matches(self):
     """Form should not be valid if passwords don't match"""
     data = {
         'username': '******',
         'email': '*****@*****.**',
         'password': '******',
         'password_repeated': 'password3',
     }
     form = SignupForm(data=data)
     self.assertFalse(form.is_valid())
     self.assertEquals({'__all__': ['Passwords do not match']}, form.errors)
コード例 #6
0
def register():
    form = SignupForm()
    if form.validate_on_submit():
        user = User(username=form.username.data,
                    email=form.email.data,
                    password=form.password.data)
        db.session.add(user)
        db.session.commit()
        flash(f'Welcome, {user.username}! Please Login.')
        return redirect(url_for('login'))
    return render_template('register.html', form=form)
コード例 #7
0
ファイル: tests.py プロジェクト: chasebrewsky/COSC603
 def test_email_exists(self):
     """Form should not be valid if existing email."""
     data = {
         'username': '******',
         'email': '*****@*****.**',
         'password': '******',
         'password_repeated': 'password',
     }
     form = SignupForm(data=data)
     self.assertFalse(form.is_valid())
     self.assertEquals({
         'email': ['User with email already exists'],
     }, form.errors)
コード例 #8
0
ファイル: tests.py プロジェクト: chasebrewsky/COSC603
 def test_username_is_not_blank(self):
     """Form checks if username is blank"""
     data = {
         'username': '',
         'email': '*****@*****.**',
         'password': '******',
         'password_repeated': 'password',
     }
     form = SignupForm(data=data)
     self.assertFalse(form.is_valid())
     self.assertEquals({
         'username': ['This field is required.'],
     }, form.errors)
コード例 #9
0
ファイル: tests.py プロジェクト: chasebrewsky/COSC603
 def test_email_is_not_blank(self):
     """Form is not valid if email is blank"""
     data = {
         'username': '******',
         'email': '',
         'password': '******',
         'password_repeated': 'password',
     }
     form = SignupForm(data=data)
     self.assertFalse(form.is_valid())
     self.assertEquals({
         'email': ['This field is required.'],
     }, form.errors)
コード例 #10
0
def signup(request: HttpRequest):
    if request.method == 'POST':
        form = SignupForm(request.POST)
        if not form.is_valid():
            return render(request, 'signup.html', {'form': form})
        user_model = get_user_model()
        user = user_model.objects.create_user(
            form.cleaned_data['username'],
            form.cleaned_data['email'],
            form.cleaned_data['password'],
            first_name=form.cleaned_data['first_name'],
            last_name=form.cleaned_data['last_name'],
        )
        return render(request, 'signup_success.html', {
            'username': user.get_full_name() or user.email,
        })
    form = SignupForm()
    return render(request, 'signup.html', {'form': form})