Example #1
0
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?
Example #2
0
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
Example #3
0
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
Example #4
0
 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)
Example #5
0
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)
Example #6
0
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
Example #7
0
def load_user(user_id):
    return LoggedInUserWrapper(UserRepo.get_user_by_id(user_id))
Example #8
0
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