@scality/data-browser-library 1.0.0-preview.8 → 1.0.1

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 (303) hide show
  1. package/dist/components/DataBrowserUI.d.ts +12 -0
  2. package/dist/components/DataBrowserUI.js +99 -0
  3. package/dist/components/Editor.d.ts +1 -1
  4. package/dist/components/Editor.js +3 -3
  5. package/dist/components/__tests__/BucketAccessor.test.js +214 -0
  6. package/dist/components/__tests__/BucketCorsPage.test.d.ts +1 -0
  7. package/dist/components/__tests__/BucketCorsPage.test.js +263 -0
  8. package/dist/components/__tests__/BucketCreate.test.d.ts +1 -0
  9. package/dist/components/__tests__/BucketCreate.test.js +574 -0
  10. package/dist/components/__tests__/BucketDetails.test.d.ts +1 -0
  11. package/dist/components/__tests__/BucketDetails.test.js +421 -0
  12. package/dist/components/__tests__/BucketLifecycleFormPage.test.d.ts +14 -0
  13. package/dist/components/__tests__/BucketLifecycleFormPage.test.js +618 -0
  14. package/dist/components/__tests__/BucketLifecycleList.test.d.ts +1 -0
  15. package/dist/components/__tests__/BucketLifecycleList.test.js +325 -0
  16. package/dist/components/__tests__/BucketList.test.js +495 -81
  17. package/dist/components/__tests__/BucketNotificationFormPage.test.d.ts +1 -0
  18. package/dist/components/__tests__/BucketNotificationFormPage.test.js +348 -0
  19. package/dist/components/__tests__/BucketNotificationList.test.d.ts +1 -0
  20. package/dist/components/__tests__/BucketNotificationList.test.js +379 -0
  21. package/dist/components/__tests__/BucketOverview.test.js +484 -179
  22. package/dist/components/__tests__/BucketPolicyPage.test.js +151 -99
  23. package/dist/components/__tests__/BucketReplicationFormPage.test.d.ts +16 -0
  24. package/dist/components/__tests__/BucketReplicationFormPage.test.js +1757 -0
  25. package/dist/components/__tests__/BucketReplicationList.test.d.ts +1 -0
  26. package/dist/components/__tests__/BucketReplicationList.test.js +344 -0
  27. package/dist/components/__tests__/CreateFolderButton.test.js +56 -56
  28. package/dist/components/__tests__/DeleteBucketButton.test.js +64 -64
  29. package/dist/components/__tests__/DeleteBucketConfigRuleButton.test.d.ts +1 -0
  30. package/dist/components/__tests__/DeleteBucketConfigRuleButton.test.js +196 -0
  31. package/dist/components/__tests__/DeleteObjectButton.test.js +64 -64
  32. package/dist/components/__tests__/EmptyBucketButton.test.d.ts +1 -0
  33. package/dist/components/__tests__/EmptyBucketButton.test.js +302 -0
  34. package/dist/components/__tests__/MetadataSearch.test.js +65 -65
  35. package/dist/components/__tests__/ObjectList.test.js +741 -240
  36. package/dist/components/__tests__/UploadButton.test.js +45 -45
  37. package/dist/components/breadcrumb/Breadcrumb.d.ts +6 -0
  38. package/dist/components/breadcrumb/Breadcrumb.js +37 -0
  39. package/dist/components/breadcrumb/DataBrowserBreadcrumb.d.ts +1 -0
  40. package/dist/components/breadcrumb/DataBrowserBreadcrumb.js +10 -0
  41. package/dist/components/breadcrumb/__tests__/Breadcrumb.test.d.ts +1 -0
  42. package/dist/components/breadcrumb/__tests__/Breadcrumb.test.js +196 -0
  43. package/dist/components/breadcrumb/__tests__/DataBrowserBreadcrumb.test.d.ts +1 -0
  44. package/dist/components/breadcrumb/__tests__/DataBrowserBreadcrumb.test.js +153 -0
  45. package/dist/components/breadcrumb/__tests__/useBreadcrumbPaths.test.d.ts +1 -0
  46. package/dist/components/breadcrumb/__tests__/useBreadcrumbPaths.test.js +134 -0
  47. package/dist/components/breadcrumb/index.d.ts +8 -0
  48. package/dist/components/breadcrumb/index.js +4 -0
  49. package/dist/components/breadcrumb/useBreadcrumbPaths.d.ts +2 -0
  50. package/dist/components/breadcrumb/useBreadcrumbPaths.js +82 -0
  51. package/dist/components/buckets/BucketAccessor.d.ts +2 -0
  52. package/dist/components/buckets/BucketAccessor.js +125 -0
  53. package/dist/components/buckets/BucketConfigEditButton.d.ts +8 -0
  54. package/dist/components/buckets/{BucketPolicyButton.js → BucketConfigEditButton.js} +9 -5
  55. package/dist/components/buckets/BucketCorsPage.d.ts +1 -0
  56. package/dist/components/buckets/BucketCorsPage.js +234 -0
  57. package/dist/components/buckets/BucketCreate.d.ts +50 -0
  58. package/dist/components/buckets/BucketCreate.js +279 -0
  59. package/dist/components/buckets/BucketDetails.d.ts +42 -0
  60. package/dist/components/buckets/BucketDetails.js +256 -40
  61. package/dist/components/buckets/BucketLifecycleFormPage.d.ts +15 -0
  62. package/dist/components/buckets/BucketLifecycleFormPage.js +1086 -0
  63. package/dist/components/buckets/BucketLifecycleList.d.ts +10 -0
  64. package/dist/components/buckets/BucketLifecycleList.js +270 -0
  65. package/dist/components/buckets/BucketList.d.ts +6 -4
  66. package/dist/components/buckets/BucketList.js +161 -94
  67. package/dist/components/buckets/BucketLocation.js +4 -4
  68. package/dist/components/buckets/BucketOverview.d.ts +86 -5
  69. package/dist/components/buckets/BucketOverview.js +481 -192
  70. package/dist/components/buckets/BucketPage.js +44 -22
  71. package/dist/components/buckets/BucketPolicyPage.js +155 -127
  72. package/dist/components/buckets/BucketReplicationFormPage.d.ts +1 -0
  73. package/dist/components/buckets/BucketReplicationFormPage.js +835 -0
  74. package/dist/components/buckets/BucketReplicationList.d.ts +11 -0
  75. package/dist/components/buckets/BucketReplicationList.js +189 -0
  76. package/dist/components/buckets/BucketVersioning.d.ts +4 -0
  77. package/dist/components/buckets/BucketVersioning.js +76 -0
  78. package/dist/components/buckets/DeleteBucketButton.js +8 -8
  79. package/dist/components/buckets/DeleteBucketConfigRuleButton.d.ts +18 -0
  80. package/dist/components/buckets/DeleteBucketConfigRuleButton.js +53 -0
  81. package/dist/components/buckets/EmptyBucketButton.d.ts +5 -0
  82. package/dist/components/buckets/EmptyBucketButton.js +232 -0
  83. package/dist/components/buckets/EmptyBucketSummary.d.ts +9 -0
  84. package/dist/components/buckets/EmptyBucketSummary.js +60 -0
  85. package/dist/components/buckets/EmptyBucketSummaryList.d.ts +13 -0
  86. package/dist/components/buckets/EmptyBucketSummaryList.js +140 -0
  87. package/dist/components/buckets/__tests__/BucketVersioning.test.d.ts +1 -0
  88. package/dist/components/buckets/__tests__/BucketVersioning.test.js +163 -0
  89. package/dist/components/buckets/notifications/BucketNotificationFormPage.d.ts +1 -0
  90. package/dist/components/buckets/notifications/BucketNotificationFormPage.js +316 -0
  91. package/dist/components/buckets/notifications/BucketNotificationList.d.ts +10 -0
  92. package/dist/components/buckets/notifications/BucketNotificationList.js +267 -0
  93. package/dist/components/buckets/notifications/EventsSection.js +145 -29
  94. package/dist/components/buckets/notifications/__tests__/events.test.d.ts +1 -0
  95. package/dist/components/buckets/notifications/__tests__/events.test.js +56 -0
  96. package/dist/components/buckets/notifications/events.d.ts +71 -7
  97. package/dist/components/buckets/notifications/events.js +98 -16
  98. package/dist/components/index.d.ts +27 -13
  99. package/dist/components/index.js +20 -6
  100. package/dist/components/layouts/ArrowNavigation.d.ts +3 -0
  101. package/dist/components/layouts/ArrowNavigation.js +28 -0
  102. package/dist/components/layouts/BrowserPageLayout.d.ts +5 -1
  103. package/dist/components/layouts/BrowserPageLayout.js +10 -5
  104. package/dist/components/objects/CreateFolderButton.d.ts +2 -2
  105. package/dist/components/objects/CreateFolderButton.js +12 -12
  106. package/dist/components/objects/DeleteObjectButton.d.ts +1 -1
  107. package/dist/components/objects/DeleteObjectButton.js +19 -21
  108. package/dist/components/objects/GetPresignedUrlButton.d.ts +7 -0
  109. package/dist/components/objects/GetPresignedUrlButton.js +255 -0
  110. package/dist/components/objects/ObjectDetails/ObjectMetadata.d.ts +2 -2
  111. package/dist/components/objects/ObjectDetails/ObjectMetadata.js +263 -230
  112. package/dist/components/objects/ObjectDetails/ObjectSummary.d.ts +2 -2
  113. package/dist/components/objects/ObjectDetails/ObjectSummary.js +540 -138
  114. package/dist/components/objects/ObjectDetails/ObjectTags.d.ts +2 -2
  115. package/dist/components/objects/ObjectDetails/ObjectTags.js +95 -123
  116. package/dist/components/objects/ObjectDetails/__tests__/ObjectDetails.test.d.ts +1 -0
  117. package/dist/components/objects/ObjectDetails/__tests__/ObjectDetails.test.js +516 -0
  118. package/dist/components/objects/ObjectDetails/__tests__/ObjectSummary.test.d.ts +1 -0
  119. package/dist/components/objects/ObjectDetails/__tests__/ObjectSummary.test.js +1064 -0
  120. package/dist/components/objects/ObjectDetails/index.d.ts +18 -2
  121. package/dist/components/objects/ObjectDetails/index.js +152 -40
  122. package/dist/components/objects/ObjectList.d.ts +12 -10
  123. package/dist/components/objects/ObjectList.js +590 -263
  124. package/dist/components/objects/ObjectLock/EditRetentionButton.d.ts +4 -0
  125. package/dist/components/objects/ObjectLock/EditRetentionButton.js +32 -0
  126. package/dist/components/objects/ObjectLock/ObjectLockRetentionSettings.d.ts +3 -0
  127. package/dist/components/objects/ObjectLock/ObjectLockRetentionSettings.js +211 -0
  128. package/dist/components/objects/ObjectLock/ObjectLockSettings.d.ts +9 -0
  129. package/dist/components/objects/ObjectLock/ObjectLockSettings.js +159 -0
  130. package/dist/components/objects/ObjectLock/ObjectLockSettingsUtils.d.ts +8 -0
  131. package/dist/components/objects/ObjectLock/ObjectLockSettingsUtils.js +39 -0
  132. package/dist/components/objects/ObjectLock/__tests__/EditRetentionButton.test.d.ts +1 -0
  133. package/dist/components/objects/ObjectLock/__tests__/EditRetentionButton.test.js +204 -0
  134. package/dist/components/objects/ObjectLock/__tests__/ObjectLockSettings.test.d.ts +1 -0
  135. package/dist/components/objects/ObjectLock/__tests__/ObjectLockSettings.test.js +374 -0
  136. package/dist/components/objects/ObjectPage.js +12 -8
  137. package/dist/components/objects/UploadButton.d.ts +3 -3
  138. package/dist/components/objects/UploadButton.js +10 -10
  139. package/dist/components/objects/__tests__/GetPresignedUrlButton.test.d.ts +1 -0
  140. package/dist/components/objects/__tests__/GetPresignedUrlButton.test.js +531 -0
  141. package/dist/components/providers/DataBrowserProvider.d.ts +23 -12
  142. package/dist/components/providers/DataBrowserProvider.js +60 -38
  143. package/dist/components/providers/QueryProvider.d.ts +9 -0
  144. package/dist/components/providers/QueryProvider.js +21 -0
  145. package/dist/components/search/MetadataSearch.js +29 -28
  146. package/dist/components/search/SearchHints.js +1 -1
  147. package/dist/components/ui/ArrayFieldActions.d.ts +36 -0
  148. package/dist/components/ui/ArrayFieldActions.js +43 -0
  149. package/dist/components/ui/ConfirmDeleteRuleModal.d.ts +16 -0
  150. package/dist/components/ui/ConfirmDeleteRuleModal.js +48 -0
  151. package/dist/components/ui/DeleteObjectModalContent.d.ts +1 -1
  152. package/dist/components/ui/DeleteObjectModalContent.js +12 -12
  153. package/dist/components/ui/FilterFormSection.d.ts +44 -0
  154. package/dist/components/ui/FilterFormSection.js +159 -0
  155. package/dist/components/ui/Search.elements.d.ts +2 -2
  156. package/dist/components/ui/Search.elements.js +7 -7
  157. package/dist/components/ui/Table.elements.d.ts +2 -1
  158. package/dist/components/ui/Table.elements.js +18 -12
  159. package/dist/config/__tests__/factory.test.d.ts +1 -0
  160. package/dist/config/__tests__/factory.test.js +311 -0
  161. package/dist/config/factory.d.ts +14 -49
  162. package/dist/config/factory.js +23 -68
  163. package/dist/config/types.d.ts +212 -34
  164. package/dist/contexts/DataBrowserUICustomizationContext.d.ts +27 -0
  165. package/dist/contexts/DataBrowserUICustomizationContext.js +13 -0
  166. package/dist/hooks/__tests__/useAccessibleBuckets.test.d.ts +1 -0
  167. package/dist/hooks/__tests__/useAccessibleBuckets.test.js +145 -0
  168. package/dist/hooks/__tests__/useISVBucketDetection.test.d.ts +1 -0
  169. package/dist/hooks/__tests__/useISVBucketDetection.test.js +188 -0
  170. package/dist/hooks/__tests__/useIsBucketEmpty.test.js +27 -27
  171. package/dist/hooks/__tests__/useLoginMutation.test.d.ts +1 -0
  172. package/dist/hooks/__tests__/useLoginMutation.test.js +194 -0
  173. package/dist/hooks/bucketConfiguration.d.ts +8 -1
  174. package/dist/hooks/bucketConfiguration.js +52 -51
  175. package/dist/hooks/bucketOperations.d.ts +10 -1
  176. package/dist/hooks/bucketOperations.js +10 -9
  177. package/dist/hooks/factories/__tests__/useCreateS3FunctionMutationHook.test.js +80 -80
  178. package/dist/hooks/factories/__tests__/useCreateS3InfiniteQueryHook.test.js +80 -80
  179. package/dist/hooks/factories/__tests__/useCreateS3LoginHook.test.js +44 -44
  180. package/dist/hooks/factories/__tests__/useCreateS3MutationHook.test.js +63 -63
  181. package/dist/hooks/factories/__tests__/useCreateS3QueryHook.test.js +95 -52
  182. package/dist/hooks/factories/index.d.ts +4 -4
  183. package/dist/hooks/factories/index.js +2 -2
  184. package/dist/hooks/factories/useCreateS3InfiniteQueryHook.d.ts +2 -2
  185. package/dist/hooks/factories/useCreateS3InfiniteQueryHook.js +16 -13
  186. package/dist/hooks/factories/useCreateS3LoginHook.d.ts +2 -2
  187. package/dist/hooks/factories/useCreateS3LoginHook.js +1 -1
  188. package/dist/hooks/factories/useCreateS3MutationHook.d.ts +3 -3
  189. package/dist/hooks/factories/useCreateS3MutationHook.js +7 -2
  190. package/dist/hooks/factories/useCreateS3QueryHook.d.ts +2 -2
  191. package/dist/hooks/factories/useCreateS3QueryHook.js +29 -3
  192. package/dist/hooks/index.d.ts +19 -8
  193. package/dist/hooks/index.js +16 -5
  194. package/dist/hooks/loginOperations.d.ts +1 -1
  195. package/dist/hooks/loginOperations.js +1 -1
  196. package/dist/hooks/objectOperations.d.ts +2 -2
  197. package/dist/hooks/objectOperations.js +50 -49
  198. package/dist/hooks/presignedOperations.d.ts +4 -4
  199. package/dist/hooks/presignedOperations.js +5 -5
  200. package/dist/hooks/useAccessibleBuckets.d.ts +11 -0
  201. package/dist/hooks/useAccessibleBuckets.js +115 -0
  202. package/dist/hooks/useBatchObjectLegalHold.d.ts +11 -0
  203. package/dist/hooks/useBatchObjectLegalHold.js +48 -0
  204. package/dist/hooks/useBucketConfigEditor.d.ts +31 -0
  205. package/dist/hooks/useBucketConfigEditor.js +82 -0
  206. package/dist/hooks/useDataBrowserNavigate.d.ts +28 -0
  207. package/dist/hooks/useDataBrowserNavigate.js +24 -0
  208. package/dist/hooks/useDeleteBucketConfigRule.d.ts +26 -0
  209. package/dist/hooks/useDeleteBucketConfigRule.js +46 -0
  210. package/dist/hooks/useEmptyBucket.d.ts +27 -0
  211. package/dist/hooks/useEmptyBucket.js +116 -0
  212. package/dist/hooks/useFeatures.d.ts +7 -0
  213. package/dist/hooks/useFeatures.js +8 -0
  214. package/dist/hooks/useISVBucketDetection.d.ts +15 -0
  215. package/dist/hooks/useISVBucketDetection.js +27 -0
  216. package/dist/hooks/useIsBucketEmpty.js +4 -4
  217. package/dist/hooks/useLimitedAccessFlow.d.ts +48 -0
  218. package/dist/hooks/useLimitedAccessFlow.js +23 -0
  219. package/dist/hooks/useS3Client.d.ts +6 -0
  220. package/dist/hooks/useS3Client.js +3 -2
  221. package/dist/hooks/useS3ConfigSwitch.d.ts +11 -0
  222. package/dist/hooks/useS3ConfigSwitch.js +37 -0
  223. package/dist/hooks/useSupportedNotificationEvents.d.ts +6 -0
  224. package/dist/hooks/useSupportedNotificationEvents.js +8 -0
  225. package/dist/hooks/useTableRowSelection.d.ts +9 -0
  226. package/dist/hooks/useTableRowSelection.js +45 -0
  227. package/dist/index.d.ts +6 -6
  228. package/dist/index.js +2 -2
  229. package/dist/schemas/bucketPolicySchema.json +3 -13
  230. package/dist/test/msw/handlers/deleteBucket.d.ts +1 -1
  231. package/dist/test/msw/handlers/deleteBucket.js +20 -10
  232. package/dist/test/msw/handlers/getBucketAcl.d.ts +1 -1
  233. package/dist/test/msw/handlers/getBucketAcl.js +29 -17
  234. package/dist/test/msw/handlers/getBucketLocation.d.ts +1 -1
  235. package/dist/test/msw/handlers/getBucketLocation.js +29 -15
  236. package/dist/test/msw/handlers/getBucketPolicy.d.ts +1 -1
  237. package/dist/test/msw/handlers/getBucketPolicy.js +52 -32
  238. package/dist/test/msw/handlers/headObject.d.ts +1 -1
  239. package/dist/test/msw/handlers/headObject.js +31 -13
  240. package/dist/test/msw/handlers/listBuckets.d.ts +1 -1
  241. package/dist/test/msw/handlers/listBuckets.js +5 -3
  242. package/dist/test/msw/handlers/listObjectVersions.d.ts +1 -1
  243. package/dist/test/msw/handlers/listObjectVersions.js +38 -26
  244. package/dist/test/msw/handlers/listObjects.d.ts +1 -1
  245. package/dist/test/msw/handlers/listObjects.js +35 -23
  246. package/dist/test/msw/handlers/objectLegalHold.d.ts +1 -1
  247. package/dist/test/msw/handlers/objectLegalHold.js +32 -17
  248. package/dist/test/msw/handlers/objectRetention.d.ts +1 -1
  249. package/dist/test/msw/handlers/objectRetention.js +31 -17
  250. package/dist/test/msw/handlers/putBucketAcl.d.ts +1 -1
  251. package/dist/test/msw/handlers/putBucketAcl.js +29 -14
  252. package/dist/test/msw/handlers/putObject.d.ts +1 -1
  253. package/dist/test/msw/handlers/putObject.js +27 -12
  254. package/dist/test/msw/handlers.d.ts +3 -3
  255. package/dist/test/msw/handlers.js +77 -54
  256. package/dist/test/msw/index.d.ts +2 -2
  257. package/dist/test/msw/index.js +1 -1
  258. package/dist/test/msw/server.d.ts +1 -1
  259. package/dist/test/msw/server.js +1 -1
  260. package/dist/test/msw/utils.js +2 -2
  261. package/dist/test/setup.d.ts +1 -1
  262. package/dist/test/setup.js +13 -30
  263. package/dist/test/testUtils.d.ts +170 -36
  264. package/dist/test/testUtils.js +229 -116
  265. package/dist/test/utils/errorHandling.test.js +146 -108
  266. package/dist/types/index.d.ts +49 -36
  267. package/dist/types/monaco.d.ts +13 -0
  268. package/dist/types/monaco.js +0 -0
  269. package/dist/utils/__tests__/proxyMiddleware.test.d.ts +1 -0
  270. package/dist/utils/__tests__/proxyMiddleware.test.js +579 -0
  271. package/dist/utils/__tests__/s3Client.test.d.ts +1 -0
  272. package/dist/utils/__tests__/s3Client.test.js +340 -0
  273. package/dist/utils/__tests__/s3ConfigIdentifier.test.d.ts +1 -0
  274. package/dist/utils/__tests__/s3ConfigIdentifier.test.js +437 -0
  275. package/dist/utils/constants.d.ts +22 -0
  276. package/dist/utils/constants.js +19 -0
  277. package/dist/utils/deletion/index.d.ts +2 -2
  278. package/dist/utils/deletion/index.js +1 -1
  279. package/dist/utils/deletion/messages.d.ts +1 -1
  280. package/dist/utils/deletion/messages.js +4 -4
  281. package/dist/utils/errorHandling.d.ts +12 -3
  282. package/dist/utils/errorHandling.js +12 -7
  283. package/dist/utils/hooks.js +8 -8
  284. package/dist/utils/index.d.ts +5 -2
  285. package/dist/utils/index.js +5 -1
  286. package/dist/utils/proxyMiddleware.d.ts +32 -13
  287. package/dist/utils/proxyMiddleware.js +90 -36
  288. package/dist/utils/s3Client.d.ts +14 -4
  289. package/dist/utils/s3Client.js +5 -26
  290. package/dist/utils/s3ConfigIdentifier.d.ts +79 -0
  291. package/dist/utils/s3ConfigIdentifier.js +57 -0
  292. package/dist/utils/s3RuleUtils.d.ts +53 -0
  293. package/dist/utils/s3RuleUtils.js +101 -0
  294. package/package.json +10 -8
  295. package/dist/components/__tests__/BucketNotificationCreatePage.test.js +0 -316
  296. package/dist/components/buckets/BucketPolicyButton.d.ts +0 -7
  297. package/dist/components/buckets/notifications/BucketNotificationCreatePage.d.ts +0 -1
  298. package/dist/components/buckets/notifications/BucketNotificationCreatePage.js +0 -234
  299. package/dist/hooks/useLoginMutation.d.ts +0 -21
  300. package/dist/hooks/useLoginMutation.js +0 -9
  301. package/dist/utils/useFeatures.d.ts +0 -1
  302. package/dist/utils/useFeatures.js +0 -7
  303. /package/dist/components/__tests__/{BucketNotificationCreatePage.test.d.ts → BucketAccessor.test.d.ts} +0 -0
@@ -1,10 +1,10 @@
1
1
  import { renderHook, waitFor } from "@testing-library/react";
2
- import { useCreateS3InfiniteQueryHook } from "../useCreateS3InfiniteQueryHook.js";
3
- import { useS3Client } from "../../useS3Client.js";
2
+ import { createTestWrapper, validateFactoryHook, validateHookResult } from "../../../test/testUtils.js";
4
3
  import { createS3OperationError } from "../../../utils/errorHandling.js";
5
- import { createQueryWrapper, validateFactoryHook, validateHookResult } from "../../../test/testUtils.js";
6
- jest.mock("../../useS3Client");
7
- jest.mock("../../../utils/errorHandling");
4
+ import { useS3Client } from "../../useS3Client.js";
5
+ import { useCreateS3InfiniteQueryHook } from "../useCreateS3InfiniteQueryHook.js";
6
+ jest.mock('../../useS3Client');
7
+ jest.mock('../../../utils/errorHandling');
8
8
  const mockUseS3Client = useS3Client;
9
9
  const mockCreateS3OperationError = createS3OperationError;
10
10
  class MockCommand {
@@ -16,82 +16,82 @@ class MockCommand {
16
16
  const mockS3Client = {
17
17
  send: jest.fn()
18
18
  };
19
- describe("useCreateS3InfiniteQueryHook - Pagination Logic", ()=>{
19
+ describe('useCreateS3InfiniteQueryHook - Pagination Logic', ()=>{
20
20
  beforeEach(()=>{
21
21
  jest.clearAllMocks();
22
22
  mockUseS3Client.mockReturnValue(mockS3Client);
23
23
  });
24
- it("should create a functioning infinite query hook", ()=>{
25
- const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, "ListObjects");
26
- validateFactoryHook(useInfiniteQuery, "ListObjects");
24
+ it('should create a functioning infinite query hook', ()=>{
25
+ const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, 'ListObjects');
26
+ validateFactoryHook(useInfiniteQuery, 'ListObjects');
27
27
  const { result } = renderHook(()=>useInfiniteQuery({
28
- Bucket: "test-bucket"
28
+ Bucket: 'test-bucket'
29
29
  }), {
30
- wrapper: createQueryWrapper()
30
+ wrapper: createTestWrapper()
31
31
  });
32
- validateHookResult(result.current, "infiniteQuery");
32
+ validateHookResult(result.current, 'infiniteQuery');
33
33
  });
34
- it("should handle getPaginationParams for different operations", async ()=>{
34
+ it('should handle getPaginationParams for different operations', async ()=>{
35
35
  const mockResponse = {
36
36
  IsTruncated: false
37
37
  };
38
38
  mockS3Client.send.mockResolvedValue(mockResponse);
39
- const useListObjects = useCreateS3InfiniteQueryHook(MockCommand, "ListObjects");
39
+ const useListObjects = useCreateS3InfiniteQueryHook(MockCommand, 'ListObjects');
40
40
  const { result: listResult } = renderHook(()=>useListObjects({
41
- Bucket: "test-bucket"
41
+ Bucket: 'test-bucket'
42
42
  }), {
43
- wrapper: createQueryWrapper()
43
+ wrapper: createTestWrapper()
44
44
  });
45
- const useListVersions = useCreateS3InfiniteQueryHook(MockCommand, "ListObjectVersions");
45
+ const useListVersions = useCreateS3InfiniteQueryHook(MockCommand, 'ListObjectVersions');
46
46
  const { result: versionsResult } = renderHook(()=>useListVersions({
47
- Bucket: "test-bucket"
47
+ Bucket: 'test-bucket'
48
48
  }), {
49
- wrapper: createQueryWrapper()
49
+ wrapper: createTestWrapper()
50
50
  });
51
51
  await waitFor(()=>{
52
- expect(listResult.current.fetchStatus).not.toBe("idle");
53
- expect(versionsResult.current.fetchStatus).not.toBe("idle");
52
+ expect(listResult.current.fetchStatus).not.toBe('idle');
53
+ expect(versionsResult.current.fetchStatus).not.toBe('idle');
54
54
  });
55
- expect(typeof listResult.current.fetchNextPage).toBe("function");
56
- expect(typeof versionsResult.current.fetchNextPage).toBe("function");
55
+ expect(typeof listResult.current.fetchNextPage).toBe('function');
56
+ expect(typeof versionsResult.current.fetchNextPage).toBe('function');
57
57
  });
58
- it("should handle Prefix parameter in enabled logic correctly", ()=>{
59
- const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, "ListObjects");
58
+ it('should handle Prefix parameter in enabled logic correctly', ()=>{
59
+ const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, 'ListObjects');
60
60
  const { result: undefinedResult } = renderHook(()=>useInfiniteQuery({
61
- Bucket: "test-bucket",
61
+ Bucket: 'test-bucket',
62
62
  Prefix: void 0
63
63
  }), {
64
- wrapper: createQueryWrapper()
64
+ wrapper: createTestWrapper()
65
65
  });
66
- expect(undefinedResult.current.fetchStatus).toBe("idle");
66
+ expect(undefinedResult.current.fetchStatus).toBe('idle');
67
67
  const { result: definedResult } = renderHook(()=>useInfiniteQuery({
68
- Bucket: "test-bucket",
69
- Prefix: "folder/"
68
+ Bucket: 'test-bucket',
69
+ Prefix: 'folder/'
70
70
  }), {
71
- wrapper: createQueryWrapper()
71
+ wrapper: createTestWrapper()
72
72
  });
73
- expect(definedResult.current.fetchStatus).not.toBe("idle");
73
+ expect(definedResult.current.fetchStatus).not.toBe('idle');
74
74
  });
75
- it("should handle pagination data correctly", async ()=>{
75
+ it('should handle pagination data correctly', async ()=>{
76
76
  const mockFirstPage = {
77
77
  Contents: [
78
78
  {
79
- Key: "file1.txt"
79
+ Key: 'file1.txt'
80
80
  },
81
81
  {
82
- Key: "file2.txt"
82
+ Key: 'file2.txt'
83
83
  }
84
84
  ],
85
85
  IsTruncated: true,
86
- NextContinuationToken: "token123"
86
+ NextContinuationToken: 'token123'
87
87
  };
88
88
  const mockSecondPage = {
89
89
  Contents: [
90
90
  {
91
- Key: "file3.txt"
91
+ Key: 'file3.txt'
92
92
  },
93
93
  {
94
- Key: "file4.txt"
94
+ Key: 'file4.txt'
95
95
  }
96
96
  ],
97
97
  IsTruncated: false
@@ -101,11 +101,11 @@ describe("useCreateS3InfiniteQueryHook - Pagination Logic", ()=>{
101
101
  callCount++;
102
102
  return Promise.resolve(1 === callCount ? mockFirstPage : mockSecondPage);
103
103
  });
104
- const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, "ListObjects");
104
+ const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, 'ListObjects');
105
105
  const { result } = renderHook(()=>useInfiniteQuery({
106
- Bucket: "test-bucket"
106
+ Bucket: 'test-bucket'
107
107
  }), {
108
- wrapper: createQueryWrapper()
108
+ wrapper: createTestWrapper()
109
109
  });
110
110
  await waitFor(()=>{
111
111
  expect(result.current.isSuccess).toBe(true);
@@ -123,30 +123,30 @@ describe("useCreateS3InfiniteQueryHook - Pagination Logic", ()=>{
123
123
  expect(finalData?.pages?.[1]).toEqual(mockSecondPage);
124
124
  expect(result.current.hasNextPage).toBe(false);
125
125
  });
126
- it("should handle ListObjectVersions pagination patterns", async ()=>{
126
+ it('should handle ListObjectVersions pagination patterns', async ()=>{
127
127
  const mockVersionsResponse = {
128
128
  Versions: [
129
129
  {
130
- Key: "file1.txt",
131
- VersionId: "v1"
130
+ Key: 'file1.txt',
131
+ VersionId: 'v1'
132
132
  }
133
133
  ],
134
134
  DeleteMarkers: [
135
135
  {
136
- Key: "file2.txt",
137
- VersionId: "v2"
136
+ Key: 'file2.txt',
137
+ VersionId: 'v2'
138
138
  }
139
139
  ],
140
140
  IsTruncated: true,
141
- NextKeyMarker: "file1.txt",
142
- NextVersionIdMarker: "v1"
141
+ NextKeyMarker: 'file1.txt',
142
+ NextVersionIdMarker: 'v1'
143
143
  };
144
144
  mockS3Client.send.mockResolvedValue(mockVersionsResponse);
145
- const useVersionsQuery = useCreateS3InfiniteQueryHook(MockCommand, "ListObjectVersions");
145
+ const useVersionsQuery = useCreateS3InfiniteQueryHook(MockCommand, 'ListObjectVersions');
146
146
  const { result } = renderHook(()=>useVersionsQuery({
147
- Bucket: "test-bucket"
147
+ Bucket: 'test-bucket'
148
148
  }), {
149
- wrapper: createQueryWrapper()
149
+ wrapper: createTestWrapper()
150
150
  });
151
151
  await waitFor(()=>{
152
152
  expect(result.current.isSuccess).toBe(true);
@@ -155,67 +155,67 @@ describe("useCreateS3InfiniteQueryHook - Pagination Logic", ()=>{
155
155
  expect(data?.pages).toHaveLength(1);
156
156
  expect(data?.pages?.[0]).toEqual(mockVersionsResponse);
157
157
  expect(result.current.hasNextPage).toBe(true);
158
- expect(mockVersionsResponse.NextKeyMarker).toBe("file1.txt");
159
- expect(mockVersionsResponse.NextVersionIdMarker).toBe("v1");
158
+ expect(mockVersionsResponse.NextKeyMarker).toBe('file1.txt');
159
+ expect(mockVersionsResponse.NextVersionIdMarker).toBe('v1');
160
160
  });
161
- it("should handle infinite query errors with context", async ()=>{
162
- const mockError = new Error("S3 List Error");
163
- const enhancedError = new Error("Enhanced S3 List Error");
161
+ it('should handle infinite query errors with context', async ()=>{
162
+ const mockError = new Error('S3 List Error');
163
+ const enhancedError = new Error('Enhanced S3 List Error');
164
164
  mockS3Client.send.mockRejectedValue(mockError);
165
165
  mockCreateS3OperationError.mockReturnValue(enhancedError);
166
- const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, "ListObjects");
166
+ const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, 'ListObjects');
167
167
  const { result } = renderHook(()=>useInfiniteQuery({
168
- Bucket: "test-bucket"
168
+ Bucket: 'test-bucket'
169
169
  }), {
170
- wrapper: createQueryWrapper()
170
+ wrapper: createTestWrapper()
171
171
  });
172
172
  await waitFor(()=>{
173
173
  expect(result.current.isError).toBe(true);
174
174
  });
175
175
  expect(result.current.error).toBe(enhancedError);
176
- expect(mockCreateS3OperationError).toHaveBeenCalledWith(mockError, "ListObjects", "test-bucket");
176
+ expect(mockCreateS3OperationError).toHaveBeenCalledWith(mockError, 'ListObjects', 'test-bucket');
177
177
  });
178
- it("should handle fetchNextPage correctly", async ()=>{
178
+ it('should handle fetchNextPage correctly', async ()=>{
179
179
  const mockFirstPage = {
180
180
  Contents: [
181
181
  {
182
- Key: "file1.txt"
182
+ Key: 'file1.txt'
183
183
  }
184
184
  ],
185
185
  IsTruncated: true,
186
- NextContinuationToken: "token123"
186
+ NextContinuationToken: 'token123'
187
187
  };
188
188
  mockS3Client.send.mockResolvedValue(mockFirstPage);
189
- const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, "ListObjects");
189
+ const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, 'ListObjects');
190
190
  const { result } = renderHook(()=>useInfiniteQuery({
191
- Bucket: "test-bucket"
191
+ Bucket: 'test-bucket'
192
192
  }), {
193
- wrapper: createQueryWrapper()
193
+ wrapper: createTestWrapper()
194
194
  });
195
195
  await waitFor(()=>{
196
196
  expect(result.current.isSuccess).toBe(true);
197
197
  });
198
- expect(typeof result.current.fetchNextPage).toBe("function");
198
+ expect(typeof result.current.fetchNextPage).toBe('function');
199
199
  expect(result.current.isFetchingNextPage).toBe(false);
200
200
  expect(result.current.hasNextPage).toBe(true);
201
201
  expect(()=>result.current.fetchNextPage()).not.toThrow();
202
202
  });
203
- it("should handle infinite query options correctly", ()=>{
204
- const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, "ListObjects");
203
+ it('should handle infinite query options correctly', ()=>{
204
+ const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, 'ListObjects');
205
205
  const customOptions = {
206
206
  enabled: false,
207
207
  staleTime: 10000,
208
208
  refetchOnWindowFocus: false
209
209
  };
210
210
  const { result } = renderHook(()=>useInfiniteQuery({
211
- Bucket: "test-bucket"
211
+ Bucket: 'test-bucket'
212
212
  }, customOptions), {
213
- wrapper: createQueryWrapper()
213
+ wrapper: createTestWrapper()
214
214
  });
215
- expect(result.current.fetchStatus).toBe("idle");
215
+ expect(result.current.fetchStatus).toBe('idle');
216
216
  expect(result.current.isLoading).toBe(false);
217
217
  });
218
- it("should pass AbortSignal correctly for infinite queries", async ()=>{
218
+ it('should pass AbortSignal correctly for infinite queries', async ()=>{
219
219
  let capturedAbortSignal;
220
220
  mockS3Client.send.mockImplementation((_command, options)=>{
221
221
  capturedAbortSignal = options?.abortSignal;
@@ -224,11 +224,11 @@ describe("useCreateS3InfiniteQueryHook - Pagination Logic", ()=>{
224
224
  IsTruncated: false
225
225
  });
226
226
  });
227
- const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, "ListObjects");
227
+ const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, 'ListObjects');
228
228
  const { result } = renderHook(()=>useInfiniteQuery({
229
- Bucket: "test-bucket"
229
+ Bucket: 'test-bucket'
230
230
  }), {
231
- wrapper: createQueryWrapper()
231
+ wrapper: createTestWrapper()
232
232
  });
233
233
  await waitFor(()=>{
234
234
  expect(result.current.isSuccess).toBe(true);
@@ -236,17 +236,17 @@ describe("useCreateS3InfiniteQueryHook - Pagination Logic", ()=>{
236
236
  expect(capturedAbortSignal).toBeInstanceOf(AbortSignal);
237
237
  expect(capturedAbortSignal?.aborted).toBe(false);
238
238
  });
239
- it("should handle empty result sets correctly", async ()=>{
239
+ it('should handle empty result sets correctly', async ()=>{
240
240
  const mockEmptyResponse = {
241
241
  Contents: [],
242
242
  IsTruncated: false
243
243
  };
244
244
  mockS3Client.send.mockResolvedValue(mockEmptyResponse);
245
- const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, "ListObjects");
245
+ const useInfiniteQuery = useCreateS3InfiniteQueryHook(MockCommand, 'ListObjects');
246
246
  const { result } = renderHook(()=>useInfiniteQuery({
247
- Bucket: "test-bucket"
247
+ Bucket: 'test-bucket'
248
248
  }), {
249
- wrapper: createQueryWrapper()
249
+ wrapper: createTestWrapper()
250
250
  });
251
251
  await waitFor(()=>{
252
252
  expect(result.current.isSuccess).toBe(true);
@@ -1,10 +1,10 @@
1
1
  import { renderHook, waitFor } from "@testing-library/react";
2
- import { useCreateS3LoginHook } from "../useCreateS3LoginHook.js";
3
- import { createS3Client } from "../../../utils/s3Client.js";
2
+ import { createTestWrapper, validateFactoryHook, validateHookResult } from "../../../test/testUtils.js";
4
3
  import { createS3OperationError } from "../../../utils/errorHandling.js";
5
- import { createQueryWrapper, validateFactoryHook, validateHookResult } from "../../../test/testUtils.js";
6
- jest.mock("../../../utils/s3Client");
7
- jest.mock("../../../utils/errorHandling");
4
+ import { createS3Client } from "../../../utils/s3Client.js";
5
+ import { useCreateS3LoginHook } from "../useCreateS3LoginHook.js";
6
+ jest.mock('../../../utils/s3Client');
7
+ jest.mock('../../../utils/errorHandling');
8
8
  const mockCreateS3Client = createS3Client;
9
9
  const mockCreateS3OperationError = createS3OperationError;
10
10
  class MockLoginCommand {
@@ -16,33 +16,33 @@ class MockLoginCommand {
16
16
  const mockS3Client = {
17
17
  send: jest.fn()
18
18
  };
19
- describe("useCreateS3LoginHook - Login Factory Specific", ()=>{
19
+ describe('useCreateS3LoginHook - Login Factory Specific', ()=>{
20
20
  const mockLoginConfig = {
21
- endpoint: "https://s3.amazonaws.com",
22
- region: "us-east-1",
21
+ endpoint: 'https://s3.amazonaws.com',
22
+ region: 'us-east-1',
23
23
  forcePathStyle: false,
24
24
  credentials: {
25
- accessKeyId: "test-access-key",
26
- secretAccessKey: "test-secret-key"
25
+ accessKeyId: 'test-access-key',
26
+ secretAccessKey: 'test-secret-key'
27
27
  }
28
28
  };
29
29
  beforeEach(()=>{
30
30
  jest.clearAllMocks();
31
31
  mockCreateS3Client.mockReturnValue(mockS3Client);
32
32
  });
33
- it("should create a functioning login mutation hook", ()=>{
34
- const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, "S3 Authentication");
35
- validateFactoryHook(useLoginMutation, "S3 Authentication");
33
+ it('should create a functioning login mutation hook', ()=>{
34
+ const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, 'S3 Authentication');
35
+ validateFactoryHook(useLoginMutation, 'S3 Authentication');
36
36
  const { result } = renderHook(()=>useLoginMutation(), {
37
- wrapper: createQueryWrapper()
37
+ wrapper: createTestWrapper()
38
38
  });
39
- validateHookResult(result.current, "mutation");
39
+ validateHookResult(result.current, 'mutation');
40
40
  });
41
- it("should authenticate successfully with valid credentials", async ()=>{
41
+ it('should authenticate successfully with valid credentials', async ()=>{
42
42
  mockS3Client.send.mockResolvedValueOnce({});
43
- const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, "S3 Authentication");
43
+ const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, 'S3 Authentication');
44
44
  const { result } = renderHook(()=>useLoginMutation(), {
45
- wrapper: createQueryWrapper()
45
+ wrapper: createTestWrapper()
46
46
  });
47
47
  result.current.mutate(mockLoginConfig);
48
48
  await waitFor(()=>{
@@ -54,27 +54,27 @@ describe("useCreateS3LoginHook - Login Factory Specific", ()=>{
54
54
  });
55
55
  expect(mockCreateS3Client).toHaveBeenCalledWith(mockLoginConfig);
56
56
  });
57
- it("should handle authentication failure", async ()=>{
58
- const mockError = new Error("Access Denied");
59
- const enhancedError = new Error("Enhanced S3 Authentication Error");
57
+ it('should handle authentication failure', async ()=>{
58
+ const mockError = new Error('Access Denied');
59
+ const enhancedError = new Error('Enhanced S3 Authentication Error');
60
60
  mockS3Client.send.mockRejectedValueOnce(mockError);
61
61
  mockCreateS3OperationError.mockReturnValueOnce(enhancedError);
62
- const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, "S3 Authentication");
62
+ const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, 'S3 Authentication');
63
63
  const { result } = renderHook(()=>useLoginMutation(), {
64
- wrapper: createQueryWrapper()
64
+ wrapper: createTestWrapper()
65
65
  });
66
66
  result.current.mutate(mockLoginConfig);
67
67
  await waitFor(()=>{
68
68
  expect(result.current.isError).toBe(true);
69
69
  });
70
70
  expect(result.current.error).toBe(enhancedError);
71
- expect(mockCreateS3OperationError).toHaveBeenCalledWith(mockError, "S3 Authentication");
71
+ expect(mockCreateS3OperationError).toHaveBeenCalledWith(mockError, 'S3 Authentication');
72
72
  });
73
- it("should create its own S3 client instead of using context client", async ()=>{
73
+ it('should create its own S3 client instead of using context client', async ()=>{
74
74
  mockS3Client.send.mockResolvedValueOnce({});
75
- const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, "S3 Authentication");
75
+ const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, 'S3 Authentication');
76
76
  const { result } = renderHook(()=>useLoginMutation(), {
77
- wrapper: createQueryWrapper()
77
+ wrapper: createTestWrapper()
78
78
  });
79
79
  result.current.mutate(mockLoginConfig);
80
80
  await waitFor(()=>{
@@ -83,18 +83,18 @@ describe("useCreateS3LoginHook - Login Factory Specific", ()=>{
83
83
  expect(mockCreateS3Client).toHaveBeenCalledWith(mockLoginConfig);
84
84
  expect(mockCreateS3Client).toHaveBeenCalledTimes(1);
85
85
  });
86
- it("should handle mutation callbacks correctly", async ()=>{
86
+ it('should handle mutation callbacks correctly', async ()=>{
87
87
  const onSuccess = jest.fn();
88
88
  const onError = jest.fn();
89
89
  const onSettled = jest.fn();
90
90
  mockS3Client.send.mockResolvedValueOnce({});
91
- const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, "S3 Authentication");
91
+ const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, 'S3 Authentication');
92
92
  const { result } = renderHook(()=>useLoginMutation({
93
93
  onSuccess,
94
94
  onError,
95
95
  onSettled
96
96
  }), {
97
- wrapper: createQueryWrapper()
97
+ wrapper: createTestWrapper()
98
98
  });
99
99
  result.current.mutate(mockLoginConfig);
100
100
  await waitFor(()=>{
@@ -108,34 +108,34 @@ describe("useCreateS3LoginHook - Login Factory Specific", ()=>{
108
108
  expect(onError).not.toHaveBeenCalled();
109
109
  expect(onSettled).toHaveBeenCalledWith(expectedResult, null, mockLoginConfig, void 0, expect.any(Object));
110
110
  });
111
- it("should handle network errors during authentication", async ()=>{
112
- const networkError = new Error("Network timeout");
113
- const enhancedError = new Error("Enhanced Network Error");
111
+ it('should handle network errors during authentication', async ()=>{
112
+ const networkError = new Error('Network timeout');
113
+ const enhancedError = new Error('Enhanced Network Error');
114
114
  mockS3Client.send.mockRejectedValueOnce(networkError);
115
115
  mockCreateS3OperationError.mockReturnValueOnce(enhancedError);
116
- const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, "S3 Authentication");
116
+ const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, 'S3 Authentication');
117
117
  const { result } = renderHook(()=>useLoginMutation(), {
118
- wrapper: createQueryWrapper()
118
+ wrapper: createTestWrapper()
119
119
  });
120
120
  result.current.mutate(mockLoginConfig);
121
121
  await waitFor(()=>{
122
122
  expect(result.current.isError).toBe(true);
123
123
  });
124
124
  expect(result.current.error).toBe(enhancedError);
125
- expect(mockCreateS3OperationError).toHaveBeenCalledWith(networkError, "S3 Authentication");
125
+ expect(mockCreateS3OperationError).toHaveBeenCalledWith(networkError, 'S3 Authentication');
126
126
  });
127
- it("should work with credentials containing session token", async ()=>{
127
+ it('should work with credentials containing session token', async ()=>{
128
128
  const configWithToken = {
129
129
  ...mockLoginConfig,
130
130
  credentials: {
131
131
  ...mockLoginConfig.credentials,
132
- sessionToken: "test-session-token"
132
+ sessionToken: 'test-session-token'
133
133
  }
134
134
  };
135
135
  mockS3Client.send.mockResolvedValueOnce({});
136
- const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, "S3 Authentication");
136
+ const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, 'S3 Authentication');
137
137
  const { result } = renderHook(()=>useLoginMutation(), {
138
- wrapper: createQueryWrapper()
138
+ wrapper: createTestWrapper()
139
139
  });
140
140
  result.current.mutate(configWithToken);
141
141
  await waitFor(()=>{
@@ -147,15 +147,15 @@ describe("useCreateS3LoginHook - Login Factory Specific", ()=>{
147
147
  authenticated: true
148
148
  });
149
149
  });
150
- it("should handle custom endpoint configurations", async ()=>{
150
+ it('should handle custom endpoint configurations', async ()=>{
151
151
  const customEndpointConfig = {
152
152
  ...mockLoginConfig,
153
- endpoint: "https://custom-s3.example.com"
153
+ endpoint: 'https://custom-s3.example.com'
154
154
  };
155
155
  mockS3Client.send.mockResolvedValueOnce({});
156
- const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, "S3 Authentication");
156
+ const useLoginMutation = useCreateS3LoginHook(MockLoginCommand, 'S3 Authentication');
157
157
  const { result } = renderHook(()=>useLoginMutation(), {
158
- wrapper: createQueryWrapper()
158
+ wrapper: createTestWrapper()
159
159
  });
160
160
  result.current.mutate(customEndpointConfig);
161
161
  await waitFor(()=>{