def test_folder_crud(db, default_account, mock_imapclient, obj_type): mock_imapclient.create_folder = mock.Mock() mock_imapclient.rename_folder = mock.Mock() mock_imapclient.delete_folder = mock.Mock() cat = add_fake_category(db.session, default_account.namespace.id, 'MyFolder') with writable_connection_pool(default_account.id).get() as crispin_client: if obj_type == 'folder': create_folder(crispin_client, default_account.id, cat.id) else: create_label(crispin_client, default_account.id, cat.id) mock_imapclient.create_folder.assert_called_with('MyFolder') cat.display_name = 'MyRenamedFolder' db.session.commit() if obj_type == 'folder': update_folder(crispin_client, default_account.id, cat.id, {'old_name': 'MyFolder'}) else: update_label(crispin_client, default_account.id, cat.id, {'old_name': 'MyFolder'}) mock_imapclient.rename_folder.assert_called_with('MyFolder', 'MyRenamedFolder') category_id = cat.id if obj_type == 'folder': delete_folder(crispin_client, default_account.id, cat.id) else: delete_label(crispin_client, default_account.id, cat.id) mock_imapclient.delete_folder.assert_called_with('MyRenamedFolder') db.session.commit() assert db.session.query(Category).get(category_id) is None
def test_folder_crud(db, default_account, mock_imapclient, obj_type): mock_imapclient.create_folder = mock.Mock() mock_imapclient.rename_folder = mock.Mock() mock_imapclient.delete_folder = mock.Mock() cat = add_fake_category(db.session, default_account.namespace.id, 'MyFolder') with writable_connection_pool(default_account.id).get() as crispin_client: if obj_type == 'folder': create_folder(crispin_client, default_account.id, cat.id) else: create_label(crispin_client, default_account.id, cat.id) mock_imapclient.create_folder.assert_called_with('MyFolder') cat.display_name = 'MyRenamedFolder' db.session.commit() if obj_type == 'folder': update_folder(crispin_client, default_account.id, cat.id, {'old_name': 'MyFolder', 'new_name': 'MyRenamedFolder'}) else: update_label(crispin_client, default_account.id, cat.id, {'old_name': 'MyFolder', 'new_name': 'MyRenamedFolder'}) mock_imapclient.rename_folder.assert_called_with('MyFolder', 'MyRenamedFolder') category_id = cat.id if obj_type == 'folder': delete_folder(crispin_client, default_account.id, cat.id) else: delete_label(crispin_client, default_account.id, cat.id) mock_imapclient.delete_folder.assert_called_with('MyRenamedFolder') db.session.commit() assert db.session.query(Category).get(category_id) is None