feat: 결재·마스터 실연동 업데이트

This commit is contained in:
JiWoong Sul
2025-10-14 18:10:24 +09:00
parent 1325109fba
commit 8067416c09
66 changed files with 2129 additions and 222 deletions

View File

@@ -2,6 +2,7 @@ import 'package:flutter_test/flutter_test.dart';
import 'package:mocktail/mocktail.dart';
import 'package:superport_v2/core/common/models/paginated_result.dart';
import 'package:superport_v2/core/permissions/permission_manager.dart';
import 'package:superport_v2/features/masters/group/domain/entities/group.dart';
import 'package:superport_v2/features/masters/group/domain/repositories/group_repository.dart';
import 'package:superport_v2/features/masters/group_permission/domain/entities/group_permission.dart';
@@ -24,11 +25,17 @@ void main() {
late _MockPermissionRepository permissionRepository;
late _MockGroupRepository groupRepository;
late _MockMenuRepository menuRepository;
late PermissionManager permissionManager;
final samplePermission = GroupPermission(
id: 1,
group: GroupPermissionGroup(id: 1, groupName: '관리자'),
menu: GroupPermissionMenu(id: 10, menuName: '대시보드'),
menu: GroupPermissionMenu(
id: 10,
menuCode: 'DASHBOARD',
menuName: '대시보드',
path: '/dashboard',
),
canCreate: true,
canRead: true,
canUpdate: false,
@@ -52,10 +59,22 @@ void main() {
permissionRepository = _MockPermissionRepository();
groupRepository = _MockGroupRepository();
menuRepository = _MockMenuRepository();
permissionManager = PermissionManager();
when(
() => permissionRepository.list(
page: any(named: 'page'),
pageSize: any(named: 'pageSize'),
groupId: any(named: 'groupId'),
menuId: any(named: 'menuId'),
isActive: any(named: 'isActive'),
includeDeleted: any(named: 'includeDeleted'),
),
).thenAnswer((_) async => createResult([samplePermission]));
controller = GroupPermissionController(
permissionRepository: permissionRepository,
groupRepository: groupRepository,
menuRepository: menuRepository,
permissionManager: permissionManager,
);
});
@@ -68,6 +87,8 @@ void main() {
query: any(named: 'query'),
isDefault: any(named: 'isDefault'),
isActive: any(named: 'isActive'),
includePermissions: any(named: 'includePermissions'),
includeEmployees: any(named: 'includeEmployees'),
),
).thenAnswer(
(_) async => PaginatedResult<Group>(