def login(): data = request.get_json(force=True) form = LoginForm(MultiDict(mapping=data)) if form.validate(): username = data.get('username').lower() password = data.get('password') user = User.query.filter_by(username=username).first() if not user or not user.verify_password(password): return jsonify({ "form_errors": "Nom d\'utilisateur ou mot de passe incorrect" }), 400 return jsonify(user.to_json()) return jsonify({"form_errors": form.errors}), 400
def test_validate_invalid_email_format(self): # Ensure invalid email format throws error. form = LoginForm(email='unknown', password='******') self.assertFalse(form.validate())
def test_validate_success_login_form(self): # Ensure correct data validates. form = LoginForm(email='*****@*****.**', password='******') self.assertTrue(form.validate())