@hedhog/admin 0.46.39 → 0.46.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/README.md +960 -960
  2. package/dist/auth/auth.service.d.ts.map +1 -1
  3. package/dist/auth/auth.service.js +6 -4
  4. package/dist/auth/auth.service.js.map +1 -1
  5. package/dist/auth/consts/body.js +24 -24
  6. package/dist/emails/templates.d.ts.map +1 -1
  7. package/dist/emails/templates.js +48 -48
  8. package/dist/emails/templates.js.map +1 -1
  9. package/frontend/menu/components/create-panel.tsx.ejs +55 -55
  10. package/frontend/menu/components/update-panel.tsx.ejs +67 -67
  11. package/frontend/menu/locales/en/admin.menu.json +11 -11
  12. package/frontend/menu/locales/pt/admin.menu.json +11 -11
  13. package/frontend/menu/react-query/handlers.ts.ejs +28 -28
  14. package/frontend/menu/react-query/requests.ts.ejs +56 -56
  15. package/frontend/menu-locale/locales/en/admin.menu-locale.json +11 -11
  16. package/frontend/menu-locale/locales/pt/admin.menu-locale.json +11 -11
  17. package/frontend/menu-screen/locales/en/admin.menu-screen.json +11 -11
  18. package/frontend/menu-screen/locales/pt/admin.menu-screen.json +11 -11
  19. package/frontend/multifactor/components/create-panel.tsx.ejs +55 -55
  20. package/frontend/multifactor/components/update-panel.tsx.ejs +70 -70
  21. package/frontend/multifactor/locales/en/admin.multifactor.json +11 -11
  22. package/frontend/multifactor/locales/pt/admin.multifactor.json +11 -11
  23. package/frontend/multifactor/react-query/handlers.ts.ejs +28 -28
  24. package/frontend/multifactor/react-query/requests.ts.ejs +59 -59
  25. package/frontend/multifactor-locale/locales/en/admin.multifactor-locale.json +11 -11
  26. package/frontend/multifactor-locale/locales/pt/admin.multifactor-locale.json +11 -11
  27. package/frontend/screen/components/create-panel.tsx.ejs +55 -55
  28. package/frontend/screen/components/update-panel.tsx.ejs +67 -67
  29. package/frontend/screen/locales/en/admin.screen.json +11 -11
  30. package/frontend/screen/locales/pt/admin.screen.json +11 -11
  31. package/frontend/screen/react-query/handlers.ts.ejs +28 -28
  32. package/frontend/screen/react-query/requests.ts.ejs +56 -56
  33. package/frontend/screen-locale/locales/en/admin.screen-locale.json +11 -11
  34. package/frontend/screen-locale/locales/pt/admin.screen-locale.json +11 -11
  35. package/frontend/translation/components/create-panel.tsx.ejs +52 -52
  36. package/frontend/translation/components/update-panel.tsx.ejs +67 -67
  37. package/frontend/translation/locales/en/admin.translation.json +11 -11
  38. package/frontend/translation/locales/pt/admin.translation.json +11 -11
  39. package/frontend/translation/react-query/handlers.ts.ejs +28 -28
  40. package/frontend/translation/react-query/requests.ts.ejs +58 -58
  41. package/frontend/translation-namespace/components/create-panel.tsx.ejs +53 -53
  42. package/frontend/translation-namespace/components/update-panel.tsx.ejs +70 -70
  43. package/frontend/translation-namespace/locales/en/admin.translation-namespace.json +11 -11
  44. package/frontend/translation-namespace/locales/pt/admin.translation-namespace.json +11 -11
  45. package/frontend/translation-namespace/react-query/handlers.ts.ejs +28 -28
  46. package/frontend/translation-namespace/react-query/requests.ts.ejs +60 -60
  47. package/frontend/user/components/create-panel.tsx.ejs +52 -52
  48. package/frontend/user/components/update-panel.tsx.ejs +64 -64
  49. package/frontend/user/locales/en/admin.user.json +11 -11
  50. package/frontend/user/locales/pt/admin.user.json +11 -11
  51. package/frontend/user/react-query/handlers.ts.ejs +28 -28
  52. package/frontend/user/react-query/requests.ts.ejs +55 -55
  53. package/hedhog.yaml +783 -783
  54. package/package.json +45 -45
  55. package/src/admin.module.ts +39 -39
  56. package/src/auth/auth.controller.ts +88 -88
  57. package/src/auth/auth.module.ts +41 -41
  58. package/src/auth/auth.service.spec.ts +196 -196
  59. package/src/auth/auth.service.ts +355 -349
  60. package/src/auth/consts/body.ts +27 -27
  61. package/src/auth/dto/change.dto.ts +19 -19
  62. package/src/auth/dto/email.dto.ts +15 -15
  63. package/src/auth/dto/forget.dto.ts +6 -6
  64. package/src/auth/dto/login.dto.ts +21 -21
  65. package/src/auth/dto/otp.dto.ts +11 -11
  66. package/src/auth/dto/reset.dto.ts +14 -14
  67. package/src/auth/enums/multifactor-type.enum.ts +4 -4
  68. package/src/auth/guards/auth.guard.ts +54 -54
  69. package/src/auth/types/user.type.ts +8 -8
  70. package/src/dto/delete.dto.ts +8 -8
  71. package/src/dto/update-ids.dto.ts +9 -9
  72. package/src/emails/index.ts +2 -2
  73. package/src/emails/lib.ts +40 -40
  74. package/src/emails/templates.ts +62 -60
  75. package/src/index.ts +20 -20
  76. package/src/menu/dto/create.dto.ts +25 -25
  77. package/src/menu/dto/order.dto.ts +8 -8
  78. package/src/menu/dto/update.dto.ts +19 -19
  79. package/src/menu/menu.controller.ts +105 -105
  80. package/src/menu/menu.module.ts +18 -18
  81. package/src/menu/menu.service.spec.ts +247 -247
  82. package/src/menu/menu.service.ts +263 -263
  83. package/src/role/dto/create.dto.ts +7 -7
  84. package/src/role/dto/update.dto.ts +4 -4
  85. package/src/role/guards/role.guard.ts +121 -121
  86. package/src/role/role.controller.ts +126 -126
  87. package/src/role/role.module.ts +28 -28
  88. package/src/role/role.service.spec.ts +417 -417
  89. package/src/role/role.service.ts +289 -289
  90. package/src/route/dto/create.dto.ts +13 -13
  91. package/src/route/dto/update.dto.ts +15 -15
  92. package/src/route/route.controller.ts +91 -91
  93. package/src/route/route.module.ts +18 -18
  94. package/src/route/route.service.spec.ts +300 -300
  95. package/src/route/route.service.ts +164 -164
  96. package/src/screen/dto/create.dto.ts +11 -11
  97. package/src/screen/dto/update.dto.ts +19 -19
  98. package/src/screen/screen.controller.ts +93 -93
  99. package/src/screen/screen.module.ts +18 -18
  100. package/src/screen/screen.service.spec.ts +298 -298
  101. package/src/screen/screen.service.ts +179 -179
  102. package/src/types/http-method.ts +8 -8
  103. package/src/user/constants/user.constants.ts +1 -1
  104. package/src/user/dto/create.dto.ts +24 -24
  105. package/src/user/dto/update.dto.ts +41 -41
  106. package/src/user/user.controller.ts +75 -75
  107. package/src/user/user.module.ts +18 -18
  108. package/src/user/user.service.spec.ts +294 -294
  109. package/src/user/user.service.ts +129 -129
  110. package/tsconfig.lib.json +9 -9
  111. package/tsconfig.production.json +20 -20
@@ -1,247 +1,247 @@
1
- // import {
2
- // PageOrderDirection,
3
- // PaginationDTO,
4
- // PaginationService,
5
- // } from '@hedhog/pagination';
6
- // import { PrismaService } from '@hedhog/prisma';
7
- // import { BadRequestException } from '@nestjs/common';
8
- // import { Test, TestingModule } from '@nestjs/testing';
9
- // import { MenuService } from './menu.service';
10
-
11
- // describe('MenuService', () => {
12
- // let menuService: MenuService;
13
- // let prismaService: PrismaService;
14
- // let paginationService: PaginationService;
15
-
16
- // const mockPrismaService = {
17
- // menu: {
18
- // create: jest.fn(),
19
- // update: jest.fn(),
20
- // deleteMany: jest.fn(),
21
- // findUnique: jest.fn(),
22
- // findMany: jest.fn(),
23
- // count: jest.fn(),
24
- // },
25
- // role_menu: {
26
- // deleteMany: jest.fn(),
27
- // createMany: jest.fn(),
28
- // },
29
- // menu_screen: {
30
- // deleteMany: jest.fn(),
31
- // createMany: jest.fn(),
32
- // },
33
- // };
34
-
35
- // const mockPaginationService = {
36
- // paginate: jest.fn(),
37
- // createInsensitiveSearch: jest.fn(),
38
- // };
39
-
40
- // beforeEach(async () => {
41
- // const module: TestingModule = await Test.createTestingModule({
42
- // providers: [
43
- // MenuService,
44
- // { provide: PrismaService, useValue: mockPrismaService },
45
- // { provide: PaginationService, useValue: mockPaginationService },
46
- // ],
47
- // }).compile();
48
-
49
- // menuService = module.get<MenuService>(MenuService);
50
- // prismaService = module.get<PrismaService>(PrismaService);
51
- // paginationService = module.get<PaginationService>(PaginationService);
52
- // });
53
-
54
- // afterEach(() => {
55
- // jest.clearAllMocks();
56
- // });
57
-
58
- // describe('create', () => {
59
- // it('should create a new menu', async () => {
60
- // const createMenuDto = {
61
- // name: 'Test Menu',
62
- // url: '/test',
63
- // icon: 'test-icon',
64
- // order: 1,
65
- // menu_id: undefined,
66
- // };
67
- // mockPrismaService.menu.create.mockResolvedValue(createMenuDto);
68
-
69
- // const result = await menuService.create(createMenuDto);
70
-
71
- // expect(result).toEqual(createMenuDto);
72
- // expect(prismaService.menu.create).toHaveBeenCalledWith({
73
- // data: createMenuDto,
74
- // });
75
- // });
76
- // });
77
-
78
- // describe('update', () => {
79
- // it('should update a menu', async () => {
80
- // const updateDto = { id: 1, data: { name: 'Updated Menu' } };
81
- // mockPrismaService.menu.update.mockResolvedValue(updateDto.data);
82
-
83
- // const result = await menuService.update(updateDto);
84
-
85
- // expect(result).toEqual(updateDto.data);
86
- // expect(prismaService.menu.update).toHaveBeenCalledWith({
87
- // where: { id: updateDto.id },
88
- // data: updateDto.data,
89
- // });
90
- // });
91
- // });
92
-
93
- // describe('delete', () => {
94
- // it('should delete menu', async () => {
95
- // const deleteDto = { ids: [1, 2, 3] };
96
- // mockPrismaService.menu.deleteMany.mockResolvedValue({ count: 3 });
97
-
98
- // const result = await menuService.delete(deleteDto);
99
-
100
- // expect(result).toEqual({ count: 3 });
101
- // expect(prismaService.menu.deleteMany).toHaveBeenCalledWith({
102
- // where: { id: { in: deleteDto.ids } },
103
- // });
104
- // });
105
-
106
- // it('should throw BadRequestException if no ids are provided', async () => {
107
- // await expect(menuService.delete({ ids: null })).rejects.toThrow(
108
- // BadRequestException,
109
- // );
110
- // });
111
- // });
112
-
113
- // describe('listScreens', () => {
114
- // it('should paginate screens', async () => {
115
- // const locale = 'en';
116
- // const menuId = 1;
117
- // const paginationParams: PaginationDTO = {
118
- // page: 1,
119
- // pageSize: 10,
120
- // search: '',
121
- // sortField: '',
122
- // sortOrder: PageOrderDirection.Asc,
123
- // fields: '',
124
- // };
125
-
126
- // const mockScreens = [{ id: 1, name: 'Screen 1' }];
127
- // mockPaginationService.paginate.mockResolvedValue(mockScreens);
128
-
129
- // const result = await menuService.listScreens(
130
- // locale,
131
- // menuId,
132
- // paginationParams,
133
- // );
134
-
135
- // expect(result).toEqual(mockScreens);
136
- // expect(paginationService.paginate).toHaveBeenCalledWith(
137
- // prismaService.screens,
138
- // paginationParams,
139
- // expect.anything(),
140
- // 'screen_locale',
141
- // );
142
- // });
143
- // });
144
-
145
- // describe('updateScreens', () => {
146
- // it('should update screens associated with a menu', async () => {
147
- // const menuId = 1;
148
- // const updateData = { ids: [1, 2, 3] };
149
-
150
- // jest
151
- // .spyOn(prismaService.menu_screen, 'deleteMany')
152
- // .mockResolvedValue(null);
153
- // jest
154
- // .spyOn(prismaService.menu_screen, 'createMany')
155
- // .mockResolvedValue(null);
156
-
157
- // await menuService.updateScreens(menuId, updateData);
158
-
159
- // expect(prismaService.menu_screen.deleteMany).toHaveBeenCalledWith({
160
- // where: { menu_id: menuId },
161
- // });
162
-
163
- // expect(prismaService.menu_screen.createMany).toHaveBeenCalledWith({
164
- // data: updateData.ids.map((screenId) => ({
165
- // menu_id: menuId,
166
- // screen_id: screenId,
167
- // })),
168
- // skipDuplicates: true,
169
- // });
170
- // });
171
- // });
172
-
173
- // describe('updateRoles', () => {
174
- // it('should update role associated with a menu', async () => {
175
- // const menuId = 1;
176
- // const updateData = { ids: [1, 2] };
177
-
178
- // jest.spyOn(prismaService.role_menu, 'deleteMany').mockResolvedValue(null);
179
- // jest.spyOn(prismaService.role_menu, 'createMany').mockResolvedValue(null);
180
-
181
- // await menuService.updateRoles(menuId, updateData);
182
-
183
- // expect(prismaService.role_menu.deleteMany).toHaveBeenCalledWith({
184
- // where: { menu_id: menuId },
185
- // });
186
-
187
- // expect(prismaService.role_menu.createMany).toHaveBeenCalledWith({
188
- // data: updateData.ids.map((roleId) => ({
189
- // menu_id: menuId,
190
- // role_id: roleId,
191
- // })),
192
- // skipDuplicates: true,
193
- // });
194
- // });
195
- // });
196
-
197
- // describe('updateOrder', () => {
198
- // it('should update the order of menu', async () => {
199
- // const orderData = { ids: [1, 2, 3] };
200
-
201
- // jest.spyOn(prismaService.menu, 'count').mockResolvedValue(3);
202
- // jest.spyOn(prismaService.menu, 'update').mockResolvedValue(null);
203
-
204
- // await menuService.updateOrder(orderData);
205
-
206
- // expect(prismaService.menu.count).toHaveBeenCalledWith({
207
- // where: { id: { in: orderData.ids } },
208
- // });
209
-
210
- // expect(prismaService.menu.update).toHaveBeenCalledTimes(
211
- // orderData.ids.length,
212
- // );
213
-
214
- // orderData.ids.forEach((id, index) => {
215
- // expect(prismaService.menu.update).toHaveBeenCalledWith({
216
- // where: { id },
217
- // data: { order: index + 1 },
218
- // });
219
- // });
220
- // });
221
-
222
- // it('should throw BadRequestException if IDs are invalid', async () => {
223
- // const orderData = { ids: [1, 2, 3] };
224
-
225
- // jest.spyOn(prismaService.menu, 'count').mockResolvedValue(2); // IDs não batem com o número esperado
226
-
227
- // await expect(menuService.updateOrder(orderData)).rejects.toThrow(
228
- // BadRequestException,
229
- // );
230
- // });
231
- // });
232
- // /*
233
- // describe('getMenus', () => {
234
- // it('should get menu for a user', async () => {
235
- // const locale = 'en';
236
- // const userId = 1;
237
- // const mockMenus = [{ id: 1, name: 'Menu 1' }];
238
- // mockPrismaService.menu.findMany.mockResolvedValue(mockMenus);
239
-
240
- // const result = await menuService.getMenus(locale, userId);
241
-
242
- // expect(result).toEqual(mockMenus);
243
- // expect(prismaService.menu.findMany).toHaveBeenCalled();
244
- // });
245
- // });
246
- // */
247
- // });
1
+ // import {
2
+ // PageOrderDirection,
3
+ // PaginationDTO,
4
+ // PaginationService,
5
+ // } from '@hedhog/pagination';
6
+ // import { PrismaService } from '@hedhog/prisma';
7
+ // import { BadRequestException } from '@nestjs/common';
8
+ // import { Test, TestingModule } from '@nestjs/testing';
9
+ // import { MenuService } from './menu.service';
10
+
11
+ // describe('MenuService', () => {
12
+ // let menuService: MenuService;
13
+ // let prismaService: PrismaService;
14
+ // let paginationService: PaginationService;
15
+
16
+ // const mockPrismaService = {
17
+ // menu: {
18
+ // create: jest.fn(),
19
+ // update: jest.fn(),
20
+ // deleteMany: jest.fn(),
21
+ // findUnique: jest.fn(),
22
+ // findMany: jest.fn(),
23
+ // count: jest.fn(),
24
+ // },
25
+ // role_menu: {
26
+ // deleteMany: jest.fn(),
27
+ // createMany: jest.fn(),
28
+ // },
29
+ // menu_screen: {
30
+ // deleteMany: jest.fn(),
31
+ // createMany: jest.fn(),
32
+ // },
33
+ // };
34
+
35
+ // const mockPaginationService = {
36
+ // paginate: jest.fn(),
37
+ // createInsensitiveSearch: jest.fn(),
38
+ // };
39
+
40
+ // beforeEach(async () => {
41
+ // const module: TestingModule = await Test.createTestingModule({
42
+ // providers: [
43
+ // MenuService,
44
+ // { provide: PrismaService, useValue: mockPrismaService },
45
+ // { provide: PaginationService, useValue: mockPaginationService },
46
+ // ],
47
+ // }).compile();
48
+
49
+ // menuService = module.get<MenuService>(MenuService);
50
+ // prismaService = module.get<PrismaService>(PrismaService);
51
+ // paginationService = module.get<PaginationService>(PaginationService);
52
+ // });
53
+
54
+ // afterEach(() => {
55
+ // jest.clearAllMocks();
56
+ // });
57
+
58
+ // describe('create', () => {
59
+ // it('should create a new menu', async () => {
60
+ // const createMenuDto = {
61
+ // name: 'Test Menu',
62
+ // url: '/test',
63
+ // icon: 'test-icon',
64
+ // order: 1,
65
+ // menu_id: undefined,
66
+ // };
67
+ // mockPrismaService.menu.create.mockResolvedValue(createMenuDto);
68
+
69
+ // const result = await menuService.create(createMenuDto);
70
+
71
+ // expect(result).toEqual(createMenuDto);
72
+ // expect(prismaService.menu.create).toHaveBeenCalledWith({
73
+ // data: createMenuDto,
74
+ // });
75
+ // });
76
+ // });
77
+
78
+ // describe('update', () => {
79
+ // it('should update a menu', async () => {
80
+ // const updateDto = { id: 1, data: { name: 'Updated Menu' } };
81
+ // mockPrismaService.menu.update.mockResolvedValue(updateDto.data);
82
+
83
+ // const result = await menuService.update(updateDto);
84
+
85
+ // expect(result).toEqual(updateDto.data);
86
+ // expect(prismaService.menu.update).toHaveBeenCalledWith({
87
+ // where: { id: updateDto.id },
88
+ // data: updateDto.data,
89
+ // });
90
+ // });
91
+ // });
92
+
93
+ // describe('delete', () => {
94
+ // it('should delete menu', async () => {
95
+ // const deleteDto = { ids: [1, 2, 3] };
96
+ // mockPrismaService.menu.deleteMany.mockResolvedValue({ count: 3 });
97
+
98
+ // const result = await menuService.delete(deleteDto);
99
+
100
+ // expect(result).toEqual({ count: 3 });
101
+ // expect(prismaService.menu.deleteMany).toHaveBeenCalledWith({
102
+ // where: { id: { in: deleteDto.ids } },
103
+ // });
104
+ // });
105
+
106
+ // it('should throw BadRequestException if no ids are provided', async () => {
107
+ // await expect(menuService.delete({ ids: null })).rejects.toThrow(
108
+ // BadRequestException,
109
+ // );
110
+ // });
111
+ // });
112
+
113
+ // describe('listScreens', () => {
114
+ // it('should paginate screens', async () => {
115
+ // const locale = 'en';
116
+ // const menuId = 1;
117
+ // const paginationParams: PaginationDTO = {
118
+ // page: 1,
119
+ // pageSize: 10,
120
+ // search: '',
121
+ // sortField: '',
122
+ // sortOrder: PageOrderDirection.Asc,
123
+ // fields: '',
124
+ // };
125
+
126
+ // const mockScreens = [{ id: 1, name: 'Screen 1' }];
127
+ // mockPaginationService.paginate.mockResolvedValue(mockScreens);
128
+
129
+ // const result = await menuService.listScreens(
130
+ // locale,
131
+ // menuId,
132
+ // paginationParams,
133
+ // );
134
+
135
+ // expect(result).toEqual(mockScreens);
136
+ // expect(paginationService.paginate).toHaveBeenCalledWith(
137
+ // prismaService.screens,
138
+ // paginationParams,
139
+ // expect.anything(),
140
+ // 'screen_locale',
141
+ // );
142
+ // });
143
+ // });
144
+
145
+ // describe('updateScreens', () => {
146
+ // it('should update screens associated with a menu', async () => {
147
+ // const menuId = 1;
148
+ // const updateData = { ids: [1, 2, 3] };
149
+
150
+ // jest
151
+ // .spyOn(prismaService.menu_screen, 'deleteMany')
152
+ // .mockResolvedValue(null);
153
+ // jest
154
+ // .spyOn(prismaService.menu_screen, 'createMany')
155
+ // .mockResolvedValue(null);
156
+
157
+ // await menuService.updateScreens(menuId, updateData);
158
+
159
+ // expect(prismaService.menu_screen.deleteMany).toHaveBeenCalledWith({
160
+ // where: { menu_id: menuId },
161
+ // });
162
+
163
+ // expect(prismaService.menu_screen.createMany).toHaveBeenCalledWith({
164
+ // data: updateData.ids.map((screenId) => ({
165
+ // menu_id: menuId,
166
+ // screen_id: screenId,
167
+ // })),
168
+ // skipDuplicates: true,
169
+ // });
170
+ // });
171
+ // });
172
+
173
+ // describe('updateRoles', () => {
174
+ // it('should update role associated with a menu', async () => {
175
+ // const menuId = 1;
176
+ // const updateData = { ids: [1, 2] };
177
+
178
+ // jest.spyOn(prismaService.role_menu, 'deleteMany').mockResolvedValue(null);
179
+ // jest.spyOn(prismaService.role_menu, 'createMany').mockResolvedValue(null);
180
+
181
+ // await menuService.updateRoles(menuId, updateData);
182
+
183
+ // expect(prismaService.role_menu.deleteMany).toHaveBeenCalledWith({
184
+ // where: { menu_id: menuId },
185
+ // });
186
+
187
+ // expect(prismaService.role_menu.createMany).toHaveBeenCalledWith({
188
+ // data: updateData.ids.map((roleId) => ({
189
+ // menu_id: menuId,
190
+ // role_id: roleId,
191
+ // })),
192
+ // skipDuplicates: true,
193
+ // });
194
+ // });
195
+ // });
196
+
197
+ // describe('updateOrder', () => {
198
+ // it('should update the order of menu', async () => {
199
+ // const orderData = { ids: [1, 2, 3] };
200
+
201
+ // jest.spyOn(prismaService.menu, 'count').mockResolvedValue(3);
202
+ // jest.spyOn(prismaService.menu, 'update').mockResolvedValue(null);
203
+
204
+ // await menuService.updateOrder(orderData);
205
+
206
+ // expect(prismaService.menu.count).toHaveBeenCalledWith({
207
+ // where: { id: { in: orderData.ids } },
208
+ // });
209
+
210
+ // expect(prismaService.menu.update).toHaveBeenCalledTimes(
211
+ // orderData.ids.length,
212
+ // );
213
+
214
+ // orderData.ids.forEach((id, index) => {
215
+ // expect(prismaService.menu.update).toHaveBeenCalledWith({
216
+ // where: { id },
217
+ // data: { order: index + 1 },
218
+ // });
219
+ // });
220
+ // });
221
+
222
+ // it('should throw BadRequestException if IDs are invalid', async () => {
223
+ // const orderData = { ids: [1, 2, 3] };
224
+
225
+ // jest.spyOn(prismaService.menu, 'count').mockResolvedValue(2); // IDs não batem com o número esperado
226
+
227
+ // await expect(menuService.updateOrder(orderData)).rejects.toThrow(
228
+ // BadRequestException,
229
+ // );
230
+ // });
231
+ // });
232
+ // /*
233
+ // describe('getMenus', () => {
234
+ // it('should get menu for a user', async () => {
235
+ // const locale = 'en';
236
+ // const userId = 1;
237
+ // const mockMenus = [{ id: 1, name: 'Menu 1' }];
238
+ // mockPrismaService.menu.findMany.mockResolvedValue(mockMenus);
239
+
240
+ // const result = await menuService.getMenus(locale, userId);
241
+
242
+ // expect(result).toEqual(mockMenus);
243
+ // expect(prismaService.menu.findMany).toHaveBeenCalled();
244
+ // });
245
+ // });
246
+ // */
247
+ // });