Our custom ordering system
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

42 lines
1.4 KiB

def test_password_reset(testapp, parse_latest_mail):
response = testapp.get("/", status=302).follow(status=200)
assert "Please Log In" in response
form = response.form
form["username"] = "TestAdmin"
form["password"] = "jixx"
response = form.submit("Log In")
assert "Credentials are invalid" in response
response = testapp.get("/forgot", status=200)
assert "Forgot your Password?" in response
form = response.form
form["email_or_username"] = "jane@example.com"
response = form.submit("submit").follow()
assert "An email for the password reset was sent" in response
parsed = parse_latest_mail()
assert "If you forgot your password" in parsed.body
response = testapp.get(parsed.link)
assert "You can now set a new password" in response
form = response.form
form["new_password"] = "jixx"
response = form.submit("Reset Password").follow()
assert "You changed your Password." in response
response = testapp.get("/", status=302).follow(status=200)
form = response.form
form["username"] = "TestAdmin"
form["password"] = "jane"
response = form.submit("Log In")
assert "Credentials are invalid" in response
response = testapp.get("/", status=302).follow(status=200)
form = response.form
form["username"] = "TestAdmin"
form["password"] = "jixx"
response = form.submit("Log In").follow()
assert "My Orders" in response