feat: 결재·마스터 실연동 업데이트
This commit is contained in:
@@ -1,12 +1,18 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:get_it/get_it.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:shadcn_ui/shadcn_ui.dart';
|
||||
import 'package:superport_v2/core/common/models/paginated_result.dart';
|
||||
import 'package:superport_v2/core/config/environment.dart';
|
||||
import 'package:superport_v2/core/constants/app_sections.dart';
|
||||
import 'package:superport_v2/features/login/presentation/pages/login_page.dart';
|
||||
import 'package:superport_v2/core/theme/superport_shad_theme.dart';
|
||||
import 'package:superport_v2/core/permissions/permission_manager.dart';
|
||||
import 'package:superport_v2/core/theme/superport_shad_theme.dart';
|
||||
import 'package:superport_v2/features/login/presentation/pages/login_page.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';
|
||||
import 'package:superport_v2/features/masters/group_permission/domain/repositories/group_permission_repository.dart';
|
||||
|
||||
GoRouter _createTestRouter() {
|
||||
return GoRouter(
|
||||
@@ -114,6 +120,108 @@ class _PlaceholderPage extends StatelessWidget {
|
||||
}
|
||||
}
|
||||
|
||||
class _StubGroupRepository implements GroupRepository {
|
||||
@override
|
||||
Future<Group> create(GroupInput input) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<void> delete(int id) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<PaginatedResult<Group>> list({
|
||||
int page = 1,
|
||||
int pageSize = 20,
|
||||
String? query,
|
||||
bool? isDefault,
|
||||
bool? isActive,
|
||||
bool includePermissions = false,
|
||||
bool includeEmployees = false,
|
||||
}) async {
|
||||
return PaginatedResult<Group>(
|
||||
items: [
|
||||
Group(
|
||||
id: 1,
|
||||
groupName: '기본 그룹',
|
||||
description: '테스트',
|
||||
isDefault: true,
|
||||
isActive: true,
|
||||
),
|
||||
],
|
||||
page: 1,
|
||||
pageSize: 1,
|
||||
total: 1,
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
Future<Group> restore(int id) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<Group> update(int id, GroupInput input) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
}
|
||||
|
||||
class _StubGroupPermissionRepository implements GroupPermissionRepository {
|
||||
@override
|
||||
Future<GroupPermission> create(GroupPermissionInput input) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<void> delete(int id) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<PaginatedResult<GroupPermission>> list({
|
||||
int page = 1,
|
||||
int pageSize = 20,
|
||||
int? groupId,
|
||||
int? menuId,
|
||||
bool? isActive,
|
||||
bool includeDeleted = false,
|
||||
}) async {
|
||||
return PaginatedResult<GroupPermission>(
|
||||
items: [
|
||||
GroupPermission(
|
||||
id: 1,
|
||||
group: GroupPermissionGroup(id: groupId ?? 1, groupName: '기본 그룹'),
|
||||
menu: GroupPermissionMenu(
|
||||
id: 10,
|
||||
menuCode: 'DASHBOARD',
|
||||
menuName: '대시보드',
|
||||
path: dashboardRoutePath,
|
||||
),
|
||||
canCreate: true,
|
||||
canRead: true,
|
||||
canUpdate: true,
|
||||
canDelete: true,
|
||||
),
|
||||
],
|
||||
page: 1,
|
||||
pageSize: 1,
|
||||
total: 1,
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
Future<GroupPermission> restore(int id) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<GroupPermission> update(int id, GroupPermissionInput input) {
|
||||
throw UnimplementedError();
|
||||
}
|
||||
}
|
||||
|
||||
void main() {
|
||||
TestWidgetsFlutterBinding.ensureInitialized();
|
||||
|
||||
@@ -132,6 +240,13 @@ void main() {
|
||||
view.resetDevicePixelRatio();
|
||||
});
|
||||
|
||||
await GetIt.I.reset();
|
||||
GetIt.I.registerSingleton<GroupRepository>(_StubGroupRepository());
|
||||
GetIt.I.registerSingleton<GroupPermissionRepository>(
|
||||
_StubGroupPermissionRepository(),
|
||||
);
|
||||
addTearDown(() async => GetIt.I.reset());
|
||||
|
||||
final router = _createTestRouter();
|
||||
await tester.pumpWidget(_TestApp(router: router));
|
||||
await tester.pumpAndSettle();
|
||||
|
||||
Reference in New Issue
Block a user