def resource(): UserRepo.add_user(username="******", password="******", email="*****@*****.**") user_id = UserRepo.get_all_users()[0].id yield user_id drop_db("gtd_test") #TODO: Read from config?
def test_user_password_verification(resource): UserRepo.add_user(username="******", password="******", email="*****@*****.**") assert UserRepo.verify_user("user1", "mypass") == True assert UserRepo.verify_user("user2", "mypass") == False assert UserRepo.verify_user("user1", "not a real password 65") == False
def test_store_user(resource): UserRepo.add_user(username="******", password="******", email="*****@*****.**") users = UserRepo.get_all_users() assert len(users) == 1 assert users[0].username == "user1" assert users[0].email == "*****@*****.**" resource
def setup_method(self, method): # User details self.username = "******" self.password = "******" self.email = "*****@*****.**" # Create a user id that we can use to log in UserRepo.connect(DB) UserRepo.add_user(username=self.username, password=self.password, email=self.email) # Set up the driver so we can use the browser self.driver = webdriver.Firefox(firefox_options=opts)
def login(): if current_user and current_user.is_authenticated: return redirect("/home") error = None if request.method == "POST": user = UserRepo.get_user_by_username(request.form["username"]) if UserRepo.verify_user(request.form["username"], request.form["password"]): user = LoggedInUserWrapper(user) login_user(user) return redirect("/home") else: error = "Invalid Credentials. Please try again." return render_template("login.html", error=error)
def test_get_user_by_id(resource): UserRepo.add_user(username="******", password="******", email="*****@*****.**") users = UserRepo.get_all_users() assert len(users) == 1 uid = users[0].id stored_user = UserRepo.get_user_by_id(uid) assert stored_user.username == "user1" assert stored_user.email == "*****@*****.**" not_stored_user = UserRepo.get_user_by_id( random_objectid()) #should not be in the database assert not_stored_user == None resource
def load_user(user_id): return LoggedInUserWrapper(UserRepo.get_user_by_id(user_id))
from flask_login import LoginManager from GTDApp.repo import ItemRepo, TaskRepo, UserRepo, ProjectRepo # Initialize the app app = Flask(__name__) app.secret_key = "myspookysecret" # TODO: Make this configurable if os.environ.get("CONFIG_TYPE") == "test": app.config.from_pyfile(os.path.join(os.path.dirname(__file__), "..", "./config/config.cfg.test")) else: app.config.from_pyfile(os.path.join(os.path.dirname(__file__), "..", "./config/config.cfg.default")) # Initialize the login manager for the app login_manager = LoginManager() login_manager.init_app(app) # Connect to the database ItemRepo.connect(app.config["DBNAME"]) TaskRepo.connect(app.config["DBNAME"]) UserRepo.connect(app.config["DBNAME"]) ProjectRepo.connect(app.config["DBNAME"]) from GTDApp.views import index from GTDApp.views import item from GTDApp.views import task from GTDApp.views import project