def register_account(): form = RegistrationForm(request.form) if request.method == 'POST' and form.validate(): #also check that account does not exist already password = pwd_context.hash(form.password.data) try: hotp_secret = duo.activate(form.qr_url.data) # hotp_secret = 'a85adc3516351791c05ef40bde772c24' db.insert_user(form.email.data, password, hotp_secret) except UniqueViolationException as e: flash( "An account with that email already exists. Try another one.") return redirect(url_for('register_account')) except Exception as e: flash( "I\'m sorry. Try again later. Let the adminstrator know about the error: {} {}" .format(type(e), e)) return redirect(url_for('register_account')) else: flash("Thanks for registering.") app.logger.debug("Received {} {}:{}".format( form.email.data, form.password.data, password)) return redirect(url_for('generate_passcode')) else: return render_template('register.html', title='Register New Account', form=form, urls={r: url_for(r) for r in routes})
def test_insert_user_db(self): """ Tests if a user is registered successfully with the right information """ mockuser = self.create_mock_user('Test Name', '*****@*****.**', 'testusername', 'testpassword') db.insert_user(mockuser) user = db.get_user('testusername', 'testpassword') self.assertEqual(user['name'], mockuser['name']) self.assertEqual(user['email'], mockuser['email']) self.assertEqual(user['username'], mockuser['username']) self.assertEqual(user['password'], mockuser['password'])
def create_user(): """ If a POST request is made, creates a new user. Renders the create_user page. """ if request.method == 'GET': return render_template('create_user.html', users=db.get_all_users()) new_name = request.form['newUserName'] if new_name != None: db.insert_user(new_name) return redirect(url_for('create_user'))