from flask import Flask from flask_mail import Mail, Message from app import app from util.config.validators import BaseValidator class EmailValidator(BaseValidator): name = "mail" @classmethod def validate(cls, config, user, user_password): """ Validates sending email. """ with app.app_context(): test_app = Flask("mail-test-app") test_app.config.update(config) test_app.config.update({ 'MAIL_FAIL_SILENTLY': False, 'TESTING': False }) test_mail = Mail(test_app) test_msg = Message("Test e-mail from %s" % app.config['REGISTRY_TITLE'], sender=config.get('MAIL_DEFAULT_SENDER')) test_msg.add_recipient(user.email) test_mail.send(test_msg)