class Restrict(TestCase): def setUp(self): self.my_admin_data = {'username': '******', 'password': '******'} self.my_admin = User(username=self.my_admin_data['username'], is_staff=True, is_superuser=True) self.my_admin.set_password(self.my_admin_data['password']) self.my_admin.save() def test_get_as_anonymous_user(self): response = self.client.get(reverse(f'{APP_NAME}:restrict')) self.assertEqual(response.status_code, 302) def test_get_as_anonymous_user_following_redirects(self): response = self.client.get(reverse(f'{APP_NAME}:restrict'), follow=True) self.assertEqual(response.status_code, 200) def test_get_as_superuser(self): self.client.login(username=self.my_admin_data['username'], password=self.my_admin_data['password']) response = self.client.get(reverse(f'{APP_NAME}:restrict')) self.assertEqual(response.status_code, 200)
def register(): if current_user.is_authenticated: return redirect(url_for('index')) form = RegistrationForm() if form.validate_on_submit(): user = User(username=form.username.data.lower(), email=form.email.data.lower()) user.set_password(form.password.data) db.session.add(user) db.session.commit() flash('Вы успешно зарегистрировались!', 'success') return redirect(url_for('index')) return render_template('register.html', title='Регистрация', form=form)
def register(): form = UserForm(request.form) if request.method == "POST" and form.validate(): user = User.query.filter_by(email=form.email.data).first() if user: flash(u"该邮箱已被注册过了,请登录", "warning") return redirect(url_for("user.login_phone")) else: user = User(email=form.email.data) user.set_password(form.password.data) db.session.add(user) db.session.commit() login_user(user) flash(u"注册成功,系统已为您自动登录", "success") return redirect(request.args.get("next") or url_for("index")) return render_template("user/register.html", form=form)
class NoticeAdminOnly(TestCase): def setUp(self): self.my_admin_data = {'username': '******', 'password': '******'} self.my_admin = User(username=self.my_admin_data['username'], is_staff=True, is_superuser=True) self.my_admin.set_password(self.my_admin_data['password']) self.my_admin.save() def test_get_as_anonymous_user(self): response = self.client.get(reverse(f'{APP_NAME}:notice_admin_only')) self.assertEqual(response.status_code, 200) def test_get_as_superuser(self): self.client.login(username=self.my_admin_data['username'], password=self.my_admin_data['password']) response = self.client.get(reverse(f'{APP_NAME}:notice_admin_only')) self.assertEqual(response.status_code, 200)