lots of configuration progress.
This commit is contained in:
@@ -102,6 +102,10 @@ class TestIMAPService:
|
||||
with patch('app.imap_service.imaplib.IMAP4_SSL') as mock_imap_ssl:
|
||||
mock_connection = mock_imap_ssl.return_value
|
||||
mock_connection.list.return_value = ('OK', [])
|
||||
mock_connection.login.return_value = None
|
||||
mock_connection.select.return_value = ('OK', [b'1'])
|
||||
mock_connection.close.return_value = None
|
||||
mock_connection.logout.return_value = None
|
||||
|
||||
user = User(email='test@example.com', first_name='Test', last_name='User')
|
||||
user.imap_config = {'server': 'test.com', 'port': 993, 'username': 'user', 'password': 'pass'}
|
||||
@@ -119,6 +123,7 @@ class TestIMAPService:
|
||||
# Mock the IMAP connection to raise an exception
|
||||
with patch('app.imap_service.imaplib.IMAP4_SSL') as mock_imap_ssl:
|
||||
mock_connection = mock_imap_ssl.return_value
|
||||
mock_connection.login.return_value = None
|
||||
mock_connection.list.side_effect = Exception("IMAP error")
|
||||
|
||||
folders = imap_service.get_folders()
|
||||
@@ -193,22 +198,19 @@ class TestIMAPService:
|
||||
|
||||
def test_sync_folders_no_folders(self, app):
|
||||
with app.app_context():
|
||||
# Mock the IMAP connection to return an empty list of folders
|
||||
with patch('app.imap_service.imaplib.IMAP4_SSL') as mock_imap_ssl:
|
||||
mock_connection = mock_imap_ssl.return_value
|
||||
mock_connection.list.return_value = ('OK', [])
|
||||
user = User(email='test@example.com', first_name='Test', last_name='User')
|
||||
user.set_password('testpassword')
|
||||
db.session.add(user)
|
||||
db.session.commit()
|
||||
user.imap_config = {'server': 'localhost', 'port': 5143, 'username': 'user1@example.com', 'password': 'password1', 'use_ssl': False}
|
||||
imap_service = IMAPService(user)
|
||||
|
||||
# Mock the get_folders method to return an empty list
|
||||
with patch.object(imap_service, 'get_folders', return_value=[]):
|
||||
success, message = imap_service.sync_folders()
|
||||
|
||||
user = User(email='test@example.com', first_name='Test', last_name='User')
|
||||
user.set_password('testpassword')
|
||||
db.session.add(user)
|
||||
db.session.commit()
|
||||
user.imap_config = {'server': 'localhost', 'port': 5143, 'username': 'user1@example.com', 'password': 'password1', 'use_ssl': False}
|
||||
imap_service = IMAPService(user)
|
||||
|
||||
success, message = imap_service.sync_folders()
|
||||
|
||||
assert success is False
|
||||
assert message == "No folders found on IMAP server"
|
||||
assert success is False
|
||||
assert message == "No folders found on IMAP server"
|
||||
|
||||
def test_sync_folders_exception(self, app):
|
||||
with app.app_context():
|
||||
@@ -220,12 +222,9 @@ class TestIMAPService:
|
||||
user.imap_config = {'server': 'localhost', 'port': 5143, 'username': 'user1@example.com', 'password': 'password1', 'use_ssl': False }
|
||||
imap_service = IMAPService(user)
|
||||
|
||||
# Mock the IMAP connection to raise an exception
|
||||
with patch('app.imap_service.imaplib.IMAP4_SSL') as mock_imap_ssl:
|
||||
mock_connection = mock_imap_ssl.return_value
|
||||
mock_connection.list.side_effect = Exception("IMAP server error")
|
||||
|
||||
# Mock the get_folders method to raise an exception
|
||||
with patch.object(imap_service, 'get_folders', side_effect=Exception("IMAP server error")):
|
||||
success, message = imap_service.sync_folders()
|
||||
|
||||
assert success is False
|
||||
assert "No folders found on IMAP server" in message
|
||||
assert "Sync error: IMAP server error" in message
|
||||
Reference in New Issue
Block a user