def create_account(self, db_session, email_address, response): try: account = db_session.query(GenericAccount).filter_by( email_address=email_address).one() except sqlalchemy.orm.exc.NoResultFound: namespace = Namespace() account = GenericAccount(namespace=namespace) account.email_address = response['email'] account.password = response['password'] account.date = datetime.datetime.utcnow() provider_name = self.provider_name account.provider = provider_name if provider_name == 'custom': account.imap_endpoint = (response['imap_server_host'], response['imap_server_port']) account.smtp_endpoint = (response['smtp_server_host'], response['smtp_server_port']) # Hack to ensure that account syncs get restarted if they were stopped # because of e.g. invalid credentials and the user re-auths. # TODO(emfree): remove after status overhaul. if account.sync_state != 'running': account.sync_state = None return account
def make_imap_account(db_session, email_address): import platform from inbox.models.backends.generic import GenericAccount from inbox.models import Namespace account = GenericAccount(email_address=email_address, sync_host=platform.node(), provider='custom') account.password = '******' account.namespace = Namespace() db_session.add(account) db_session.commit() return account
def generic_account(db): import platform from inbox.models.backends.generic import GenericAccount from inbox.models import Namespace ns = Namespace() account = GenericAccount(email_address="*****@*****.**", sync_host=platform.node(), provider="custom") account.namespace = ns account.create_emailed_events_calendar() account.password = "******" db.session.add(account) db.session.commit() return account
def test_gracefully_handle_new_namespace(db, api_client): new_namespace = Namespace() new_account = GenericAccount() new_account.password = '******' new_namespace.account = new_account db.session.add(new_namespace) db.session.add(new_account) db.session.commit() cursor = get_cursor(api_client, int(time.time()), new_namespace) url = url_concat('/n/{}/delta/streaming'.format(new_namespace.public_id), {'timeout': .1, 'cursor': cursor}) r = api_client.get_raw(url) assert r.status_code == 200
def create_account(db_session, email_address, response): provider_name = provider_from_address(email_address) if provider_name == "unknown": raise NotSupportedError('Inbox does not support the email provider.') try: account = db_session.query(GenericAccount).filter_by( email_address=email_address).one() except sqlalchemy.orm.exc.NoResultFound: namespace = Namespace() account = GenericAccount(namespace=namespace) account.email_address = response['email'] account.password = response['password'] account.date = datetime.datetime.utcnow() account.provider = provider_name return account
def create_account(db_session, email_address, response): provider_name = provider_from_address(email_address) if provider_name == "unknown": raise NotSupportedError('Inbox does not support the email provider.') try: account = db_session.query(GenericAccount).filter_by( email_address=email_address).one() except sqlalchemy.orm.exc.NoResultFound: namespace = Namespace() account = GenericAccount(namespace=namespace) account.email_address = response['email'] account.password = response['password'] account.date = datetime.datetime.utcnow() account.provider = provider_name return account
def create_account(self, db_session, email_address, response): try: account = db_session.query(GenericAccount).filter_by( email_address=email_address).one() except sqlalchemy.orm.exc.NoResultFound: namespace = Namespace() account = GenericAccount(namespace=namespace) account.email_address = response['email'] account.password = response['password'] account.date = datetime.datetime.utcnow() provider_name = self.provider_name account.provider = provider_name if provider_name == 'custom': account.imap_endpoint = (response['imap_server_host'], response['imap_server_port']) account.smtp_endpoint = (response['smtp_server_host'], response['smtp_server_port']) return account
def create_account(self, db_session, email_address, response): try: account = db_session.query(GenericAccount).filter_by( email_address=email_address).one() except sqlalchemy.orm.exc.NoResultFound: namespace = Namespace() account = GenericAccount(namespace=namespace) account.email_address = response['email'] account.password = response['password'] account.date = datetime.datetime.utcnow() provider_name = self.provider_name account.provider = provider_name if provider_name == 'custom': account.imap_endpoint = (response['imap_server_host'], response['imap_server_port']) account.smtp_endpoint = (response['smtp_server_host'], response['smtp_server_port']) return account
def create_account(self, db_session, email_address, response): try: account = db_session.query(GenericAccount).filter_by(email_address=email_address).one() except sqlalchemy.orm.exc.NoResultFound: namespace = Namespace() account = GenericAccount(namespace=namespace) account.email_address = response["email"] if response.get("name"): account.name = response["name"] account.password = response["password"] account.date = datetime.datetime.utcnow() provider_name = self.provider_name account.provider = provider_name if provider_name == "custom": account.imap_endpoint = (response["imap_server_host"], response["imap_server_port"]) account.smtp_endpoint = (response["smtp_server_host"], response["smtp_server_port"]) # Ensure account has sync enabled after authing. account.enable_sync() return account