Add unit test for createDefaultMailbox & setRoleDefaultMailbox method in MailboxAPI

Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
dab246
2025-02-24 15:18:04 +07:00
committed by Dat H. Pham
parent a8cc19ada2
commit 7e0c9bf45c
9 changed files with 413 additions and 18 deletions
@@ -52,7 +52,7 @@ abstract class MailboxDataSource {
Future<bool> handleMailboxRightRequest(Session session, AccountId accountId, MailboxRightRequest request);
Future<(List<Mailbox> mailboxes, Map<Id, SetError> mapErrors)> createDefaultMailbox(Session session, AccountId accountId, List<Role> listRole);
Future<(List<Mailbox> mailboxes, Map<Id, SetError> mapErrors)> createDefaultMailbox(Session session, AccountId accountId, Map<Id, Role> mapRoles);
Future<(List<Mailbox> mailboxes, Map<Id, SetError> mapErrors)> setRoleDefaultMailbox(Session session, AccountId accountId, List<Mailbox> listMailbox);
@@ -141,7 +141,7 @@ class MailboxCacheDataSourceImpl extends MailboxDataSource {
}
@override
Future<(List<Mailbox> mailboxes, Map<Id, SetError> mapErrors)> createDefaultMailbox(Session session, AccountId accountId, List<Role> listRole) {
Future<(List<Mailbox> mailboxes, Map<Id, SetError> mapErrors)> createDefaultMailbox(Session session, AccountId accountId, Map<Id, Role> mapRoles) {
throw UnimplementedError();
}
@@ -130,9 +130,9 @@ class MailboxDataSourceImpl extends MailboxDataSource {
}
@override
Future<(List<Mailbox> mailboxes, Map<Id, SetError> mapErrors)> createDefaultMailbox(Session session, AccountId accountId, List<Role> listRole) {
Future<(List<Mailbox> mailboxes, Map<Id, SetError> mapErrors)> createDefaultMailbox(Session session, AccountId accountId, Map<Id, Role> mapRoles) {
return Future.sync(() async {
return await mailboxAPI.createDefaultMailbox(session, accountId, listRole);
return await mailboxAPI.createDefaultMailbox(session, accountId, mapRoles);
}).catchError(_exceptionThrower.throwException);
}
@@ -456,13 +456,8 @@ class MailboxAPI with HandleSetErrorMixin {
Future<(List<Mailbox> mailboxes, Map<Id, SetError> mapErrors)> createDefaultMailbox(
Session session,
AccountId accountId,
List<Role> listRole
Map<Id, Role> mapRoles,
) async {
final mapRoles = {
for (var role in listRole)
Id(_uuid.v1()) : role
};
final mapCreate = {
for (var id in mapRoles.keys)
id : Mailbox(name: MailboxName(mapRoles[id]!.mailboxName), isSubscribed: IsSubscribed(true))
@@ -292,8 +292,8 @@ class MailboxRepositoryImpl extends MailboxRepository {
}
@override
Future<(List<Mailbox> mailboxes, Map<Id, SetError> mapErrors)> createDefaultMailbox(Session session, AccountId accountId, List<Role> listRole) {
return mapDataSource[DataSourceType.network]!.createDefaultMailbox(session, accountId, listRole);
Future<(List<Mailbox> mailboxes, Map<Id, SetError> mapErrors)> createDefaultMailbox(Session session, AccountId accountId, Map<Id, Role> mapRoles) {
return mapDataSource[DataSourceType.network]!.createDefaultMailbox(session, accountId, mapRoles);
}
@override