def signup_view(request): if request.method == "POST": form = SignupForm(request.POST) if form.is_valid(): data = form.cleaned_data new_user = MyUser.objects.create_user(username=data.get("username"), password=data.get("password")) login(request, new_user) return HttpResponseRedirect(reverse("home")) form = SignupForm() return render(request, "generic_form.html", {"form": form})
def signup_view(request): if request.method == 'POST': form = SignupForm(request.POST) if form.is_valid(): data = form.cleaned_data user = myuser.objects.create_user(username=data.get('username'), password=data.get('password')) login(request, user) return HttpResponseRedirect(reverse("home")) form = SignupForm() return render(request, 'generic_form.html', {"form": form})
def signup_view(request): form = SignupForm() if request.method == 'POST': form = SignupForm(request.POST) if form.is_valid(): data = form.cleaned_data new_user = MyUser.objects.create( username=data.get('username'), displayname=data.get('displayname'), password=data.get('password')) login(request, new_user) return HttpResponseRedirect(reverse('home')) return render(request, 'generic_form.html', {'form': form})
def test_correct_input(self): '''Tests form validity when given correct input. Keyword arguments: self -- the TestSignupForm object ''' username_input = SignupForm( data={ 'username': '******', 'email': '*****@*****.**', 'password1': 'testPassword1', 'password2': 'testPassword1' }) self.assertTrue(username_input.is_valid())
def signup(request): path = request.get_full_path() if request.method == 'POST': form = SignupForm(data=request.POST, auto_id="%s") if form.is_valid(): UserModel = get_user_model() username = form.cleaned_data['username'] email = form.cleaned_data['email'] password = form.cleaned_data['password'] user = UserModel.objects.create_user(username=username, email=email, password=password) user.save() auth_user = authenticate(username=username, password=password) auth_login(request, auth_user) return redirect('/') else: form = SignupForm(auto_id='%s') return render(request, 'signup.html', locals())
def signup_view(request): if request.method == 'POST': form = SignupForm(request.POST) if form.is_valid(): data = form.cleaned_data new_user = MyUser.objects.create_user( firstname=data.get('firstname'), lastname=data.get('lastname'), username=data.get('firstname').lower() + data.get('lastname').lower(), password=data.get('password'), displayname=data.get('displayname')) login(request, new_user) return HttpResponseRedirect(reverse('homepage')) form = SignupForm() return render(request, 'generic_form.html', { 'form': form, 'signup': 'active' })
def test_bad_format_email(self): '''Tests the expected form error and the number of errors present when given an improperly formatted email. Keyword arguments: self -- the TestSignupForm object ''' signup_email_input = SignupForm( data={ 'username': '******', 'email': 'notAnEmail', 'password1': 'testPassword1', 'password2': 'testPassword1' }) num_errors = self._get_num_errors(signup_email_input) form_error = signup_email_input.errors.as_data()['email'][0].message self.assertTrue(form_error == "Enter a valid email address." and num_errors == 1)
def test_incorrect_email(self): '''Tests the expected form error and the number of errors present when given an email already associated with a user. Keyword arguments: self -- the TestSignupForm object ''' signup_email_input = SignupForm( data={ 'username': '******', 'email': '*****@*****.**', 'password1': 'testPassword1', 'password2': 'testPassword1' }) num_error = self._get_num_errors(signup_email_input) form_error = signup_email_input.errors.as_data()['email'][0].message self.assertTrue(form_error == 'A user with that email already exists' and num_error == 1)
def test_mismatching_passwords(self): '''Tests the expected form error and the number of errors present when given mismatching passwords. Keyword arguments: self -- the TestSignupForm object ''' signup_password_input = SignupForm( data={ 'username': '******', 'email': '*****@*****.**', 'password1': 'somePassword1', 'password2': 'anotherPassword1' }) num_errors = self._get_num_errors(signup_password_input) form_error = signup_password_input.errors.as_data( )['password2'][0].message self.assertTrue(form_error == "The two password fields didn’t match." and num_errors == 1)
def test_insecure_password(self): '''Tests the expected form error and the number of errors present when given insecure passwords. Passwords are insecure if they do not include at least 1 lowercase letter, 1 uppercase letter, and 1 number Keyword arguments: self -- the TestSignupForm object ''' signup_password_input = SignupForm( data={ 'username': '******', 'email': '*****@*****.**', 'password1': 'insecurePassword', 'password2': 'insecurePassword' }) num_errors = self._get_num_errors(signup_password_input) form_error = signup_password_input.errors.as_data( )['__all__'][0].message self.assertTrue( form_error == 'Your password must be at least 6 letters long and contain at least one uppercase letter, one lowercase letter, and one digit' and num_errors == 1)