@daiso-tech/core 0.46.0 → 0.48.0

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 (119) hide show
  1. package/dist/cache/contracts/cache-adapter.contract.d.ts +1 -1
  2. package/dist/cache/contracts/cache.contract.d.ts +3 -1
  3. package/dist/cache/contracts/cache.events.d.ts +1 -1
  4. package/dist/cache/contracts/database-cache-adapter.contract.d.ts +1 -1
  5. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.d.ts +11 -2
  6. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js +8 -8
  7. package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js.map +1 -1
  8. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.d.ts +1 -1
  9. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
  10. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.d.ts +1 -1
  11. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
  12. package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.d.ts +1 -1
  13. package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js.map +1 -1
  14. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.d.ts +1 -1
  15. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
  16. package/dist/cache/implementations/derivables/cache/cache.d.ts +3 -32
  17. package/dist/cache/implementations/derivables/cache/cache.js +2 -41
  18. package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
  19. package/dist/cache/implementations/derivables/cache/database-cache-adapter.d.ts +1 -1
  20. package/dist/cache/implementations/derivables/cache/database-cache-adapter.js.map +1 -1
  21. package/dist/cache/implementations/derivables/cache/is-database-cache-adapter.js.map +1 -1
  22. package/dist/cache/implementations/test-utilities/cache.test-suite.js +38 -38
  23. package/dist/cache/implementations/test-utilities/cache.test-suite.js.map +1 -1
  24. package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js +8 -4
  25. package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js.map +1 -1
  26. package/dist/circuit-breaker/contracts/circuit-breaker-provider.contract.d.ts +3 -1
  27. package/dist/circuit-breaker/implementations/adapters/kysely-circuit-breaker-storage-adapter/kysely-circuit-breaker-storage-adapter.d.ts +11 -0
  28. package/dist/circuit-breaker/implementations/adapters/kysely-circuit-breaker-storage-adapter/kysely-circuit-breaker-storage-adapter.js +13 -3
  29. package/dist/circuit-breaker/implementations/adapters/kysely-circuit-breaker-storage-adapter/kysely-circuit-breaker-storage-adapter.js.map +1 -1
  30. package/dist/circuit-breaker/implementations/adapters/mongodb-circuit-breaker-storage-adapter/mongodb-circuit-breaker-storage-adapter.d.ts +6 -0
  31. package/dist/circuit-breaker/implementations/adapters/mongodb-circuit-breaker-storage-adapter/mongodb-circuit-breaker-storage-adapter.js +14 -2
  32. package/dist/circuit-breaker/implementations/adapters/mongodb-circuit-breaker-storage-adapter/mongodb-circuit-breaker-storage-adapter.js.map +1 -1
  33. package/dist/circuit-breaker/implementations/derivables/circuit-breaker-provider/circuit-breaker-provider.d.ts +3 -9
  34. package/dist/circuit-breaker/implementations/derivables/circuit-breaker-provider/circuit-breaker-provider.js +2 -18
  35. package/dist/circuit-breaker/implementations/derivables/circuit-breaker-provider/circuit-breaker-provider.js.map +1 -1
  36. package/dist/circuit-breaker/implementations/policies/sampling-breaker/sampling-breaker.d.ts +1 -1
  37. package/dist/collection/contracts/async-collection.contract.d.ts +1 -1
  38. package/dist/collection/contracts/collection.contract.d.ts +2 -2
  39. package/dist/collection/implementations/async-iterable-collection/_shared/async-chunk-iterable.js.map +1 -1
  40. package/dist/collection/implementations/async-iterable-collection/_shared/async-chunk-while-iterable.js.map +1 -1
  41. package/dist/collection/implementations/async-iterable-collection/_shared/async-partion-iterable.js.map +1 -1
  42. package/dist/collection/implementations/async-iterable-collection/_shared/async-split-iterable.js.map +1 -1
  43. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +1 -1
  44. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  45. package/dist/collection/implementations/iterable-collection/_shared/chunk-iterable.js.map +1 -1
  46. package/dist/collection/implementations/iterable-collection/_shared/chunk-while-iterable.js.map +1 -1
  47. package/dist/collection/implementations/iterable-collection/_shared/partion-iterable.js.map +1 -1
  48. package/dist/collection/implementations/iterable-collection/_shared/split-iterable.js.map +1 -1
  49. package/dist/collection/implementations/iterable-collection/iterable-collection.d.ts +1 -1
  50. package/dist/collection/implementations/list-collection/list-collection.d.ts +1 -1
  51. package/dist/collection/implementations/list-collection/list-collection.js.map +1 -1
  52. package/dist/hooks/async-hooks.d.ts +9 -11
  53. package/dist/hooks/hooks.d.ts +5 -5
  54. package/dist/lock/contracts/lock-provider.contract.d.ts +3 -1
  55. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.d.ts +11 -0
  56. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js +18 -14
  57. package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js.map +1 -1
  58. package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +3 -33
  59. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +2 -42
  60. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  61. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +58 -58
  62. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js.map +1 -1
  63. package/dist/namespace/implementations/namespace.d.ts +1 -1
  64. package/dist/rate-limiter/contracts/rate-limiter-provider.contract.d.ts +3 -1
  65. package/dist/rate-limiter/implementations/adapters/kysely-rate-limiter-storage-adapter/kysely-rate-limiter-storage-adapter.d.ts +11 -0
  66. package/dist/rate-limiter/implementations/adapters/kysely-rate-limiter-storage-adapter/kysely-rate-limiter-storage-adapter.js +13 -3
  67. package/dist/rate-limiter/implementations/adapters/kysely-rate-limiter-storage-adapter/kysely-rate-limiter-storage-adapter.js.map +1 -1
  68. package/dist/rate-limiter/implementations/adapters/mongodb-rate-limiter-storage-adapter/mongodb-rate-limiter-storage-adapter.d.ts +6 -0
  69. package/dist/rate-limiter/implementations/adapters/mongodb-rate-limiter-storage-adapter/mongodb-rate-limiter-storage-adapter.js +14 -2
  70. package/dist/rate-limiter/implementations/adapters/mongodb-rate-limiter-storage-adapter/mongodb-rate-limiter-storage-adapter.js.map +1 -1
  71. package/dist/rate-limiter/implementations/derivables/rate-limiter-provider/rate-limiter-provider.d.ts +3 -9
  72. package/dist/rate-limiter/implementations/derivables/rate-limiter-provider/rate-limiter-provider.js +2 -18
  73. package/dist/rate-limiter/implementations/derivables/rate-limiter-provider/rate-limiter-provider.js.map +1 -1
  74. package/dist/resilience/middlewares/dynamic/dynamic.middleware.d.ts +1 -1
  75. package/dist/resilience/middlewares/fallback/fallback.middleware.d.ts +1 -1
  76. package/dist/resilience/middlewares/fallback/fallback.types.d.ts +4 -4
  77. package/dist/resilience/middlewares/observe/observe.middleware.d.ts +1 -1
  78. package/dist/resilience/middlewares/observe/observe.types.d.ts +7 -7
  79. package/dist/resilience/middlewares/retry/retry.middleware.d.ts +1 -1
  80. package/dist/resilience/middlewares/retry/retry.middleware.js.map +1 -1
  81. package/dist/resilience/middlewares/retry/retry.types.d.ts +6 -6
  82. package/dist/resilience/middlewares/timeout/timeout.middleware.d.ts +1 -1
  83. package/dist/resilience/middlewares/timeout/timeout.type.d.ts +4 -4
  84. package/dist/resilience/resilience.errors.d.ts +1 -1
  85. package/dist/resilience/resilience.errors.js.map +1 -1
  86. package/dist/semaphore/contracts/database-semaphore-adapter.contract.d.ts +2 -2
  87. package/dist/semaphore/contracts/semaphore-provider.contract.d.ts +3 -1
  88. package/dist/semaphore/contracts/semaphore-state.contract.d.ts +3 -3
  89. package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/kysely-semaphore-adapter.d.ts +12 -1
  90. package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/kysely-semaphore-adapter.js +18 -14
  91. package/dist/semaphore/implementations/adapters/kysely-semaphore-adapter/kysely-semaphore-adapter.js.map +1 -1
  92. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-provider.d.ts +3 -33
  93. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-provider.js +2 -42
  94. package/dist/semaphore/implementations/derivables/semaphore-provider/semaphore-provider.js.map +1 -1
  95. package/dist/semaphore/implementations/test-utilities/database-semaphore-adapter.test-suite.js.map +1 -1
  96. package/dist/semaphore/implementations/test-utilities/semaphore-provider.test-suite.js +57 -57
  97. package/dist/semaphore/implementations/test-utilities/semaphore-provider.test-suite.js.map +1 -1
  98. package/dist/serde/contracts/flexible-serde.contract.d.ts +1 -1
  99. package/dist/shared-lock/contracts/database-shared-lock-adapter.contract.d.ts +2 -2
  100. package/dist/shared-lock/contracts/shared-lock-provider.contract.d.ts +3 -1
  101. package/dist/shared-lock/contracts/shared-lock-state.contract.d.ts +3 -3
  102. package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/kysely-shared-lock-adapter.d.ts +11 -0
  103. package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/kysely-shared-lock-adapter.js +16 -6
  104. package/dist/shared-lock/implementations/adapters/kysely-shared-lock-adapter/kysely-shared-lock-adapter.js.map +1 -1
  105. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.d.ts +3 -33
  106. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.js +2 -42
  107. package/dist/shared-lock/implementations/derivables/shared-lock-provider/shared-lock-provider.js.map +1 -1
  108. package/dist/shared-lock/implementations/test-utilities/database-shared-lock-adapter.test-suite.js.map +1 -1
  109. package/dist/shared-lock/implementations/test-utilities/shared-lock-provider.test-suite.js +117 -117
  110. package/dist/shared-lock/implementations/test-utilities/shared-lock-provider.test-suite.js.map +1 -1
  111. package/dist/task/implementations/task.d.ts +9 -9
  112. package/dist/task/implementations/task.js.map +1 -1
  113. package/dist/utilities/contracts/sqlite-database.contract.d.ts +1 -1
  114. package/dist/utilities/functions/invokable.d.ts +9 -9
  115. package/dist/utilities/functions/invokable.js.map +1 -1
  116. package/dist/utilities/functions/resolve-one-or-more.d.ts +1 -1
  117. package/dist/utilities/types/any-class.type.d.ts +1 -1
  118. package/dist/utilities/types/none-func.type.d.ts +1 -1
  119. package/package.json +1 -1
@@ -774,7 +774,7 @@ export function semaphoreProviderTestSuite(settings) {
774
774
  });
775
775
  await lock1.acquire();
776
776
  let index = 0;
777
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, (_event) => {
777
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, (_event) => {
778
778
  index++;
779
779
  });
780
780
  const lock2 = semaphoreProvider.create(key, {
@@ -1344,7 +1344,7 @@ export function semaphoreProviderTestSuite(settings) {
1344
1344
  });
1345
1345
  await semaphore1.acquire();
1346
1346
  let index = 0;
1347
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, (_event) => {
1347
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, (_event) => {
1348
1348
  index++;
1349
1349
  });
1350
1350
  const semaphore2 = semaphoreProvider.create(key, {
@@ -1567,7 +1567,7 @@ export function semaphoreProviderTestSuite(settings) {
1567
1567
  });
1568
1568
  await semaphore1.acquire();
1569
1569
  let index = 0;
1570
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, (_event) => {
1570
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, (_event) => {
1571
1571
  index++;
1572
1572
  });
1573
1573
  const semaphore2 = semaphoreProvider.create(key, {
@@ -2573,7 +2573,7 @@ export function semaphoreProviderTestSuite(settings) {
2573
2573
  const limit = 2;
2574
2574
  const ttl = null;
2575
2575
  const handlerFn = vi.fn((_event) => { });
2576
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2576
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2577
2577
  const semaphore = semaphoreProvider.create(key, {
2578
2578
  limit,
2579
2579
  ttl,
@@ -2600,7 +2600,7 @@ export function semaphoreProviderTestSuite(settings) {
2600
2600
  await semaphore.acquire();
2601
2601
  await delay(ttl);
2602
2602
  const handlerFn = vi.fn((_event) => { });
2603
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2603
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2604
2604
  await semaphore.acquire();
2605
2605
  expect(handlerFn).toHaveBeenCalledTimes(1);
2606
2606
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -2626,7 +2626,7 @@ export function semaphoreProviderTestSuite(settings) {
2626
2626
  ttl,
2627
2627
  });
2628
2628
  const handlerFn = vi.fn((_event) => { });
2629
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2629
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2630
2630
  await semaphore2.acquire();
2631
2631
  expect(handlerFn).toHaveBeenCalledTimes(1);
2632
2632
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -2653,7 +2653,7 @@ export function semaphoreProviderTestSuite(settings) {
2653
2653
  });
2654
2654
  await semaphore2.acquire();
2655
2655
  const handlerFn = vi.fn((_event) => { });
2656
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, handlerFn);
2656
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, handlerFn);
2657
2657
  const semaphore3 = semaphoreProvider.create(key, {
2658
2658
  limit,
2659
2659
  ttl,
@@ -2687,7 +2687,7 @@ export function semaphoreProviderTestSuite(settings) {
2687
2687
  await delay(ttl2);
2688
2688
  const ttl3 = null;
2689
2689
  const handlerFn = vi.fn((_event) => { });
2690
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2690
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2691
2691
  const semaphore3 = semaphoreProvider.create(key, {
2692
2692
  limit,
2693
2693
  ttl: ttl3,
@@ -2708,7 +2708,7 @@ export function semaphoreProviderTestSuite(settings) {
2708
2708
  const limit = 2;
2709
2709
  const ttl = null;
2710
2710
  const handlerFn = vi.fn((_event) => { });
2711
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2711
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2712
2712
  const semaphore = semaphoreProvider.create(key, {
2713
2713
  limit,
2714
2714
  ttl,
@@ -2730,7 +2730,7 @@ export function semaphoreProviderTestSuite(settings) {
2730
2730
  const limit = 2;
2731
2731
  const ttl = TimeSpan.fromMilliseconds(50);
2732
2732
  const handlerFn = vi.fn((_event) => { });
2733
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2733
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2734
2734
  const semaphore = semaphoreProvider.create(key, {
2735
2735
  limit,
2736
2736
  ttl,
@@ -2754,7 +2754,7 @@ export function semaphoreProviderTestSuite(settings) {
2754
2754
  const limit = 2;
2755
2755
  const ttl = null;
2756
2756
  const handlerFn = vi.fn((_event) => { });
2757
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2757
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2758
2758
  const semaphore = semaphoreProvider.create(key, {
2759
2759
  limit,
2760
2760
  ttl,
@@ -2781,7 +2781,7 @@ export function semaphoreProviderTestSuite(settings) {
2781
2781
  await semaphore.acquire();
2782
2782
  await delay(ttl);
2783
2783
  const handlerFn = vi.fn((_event) => { });
2784
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2784
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2785
2785
  await semaphore.acquireOrFail();
2786
2786
  expect(handlerFn).toHaveBeenCalledTimes(1);
2787
2787
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -2807,7 +2807,7 @@ export function semaphoreProviderTestSuite(settings) {
2807
2807
  ttl,
2808
2808
  });
2809
2809
  const handlerFn = vi.fn((_event) => { });
2810
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2810
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2811
2811
  await semaphore2.acquireOrFail();
2812
2812
  expect(handlerFn).toHaveBeenCalledTimes(1);
2813
2813
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -2834,7 +2834,7 @@ export function semaphoreProviderTestSuite(settings) {
2834
2834
  });
2835
2835
  await semaphore2.acquire();
2836
2836
  const handlerFn = vi.fn((_event) => { });
2837
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, handlerFn);
2837
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, handlerFn);
2838
2838
  const semaphore3 = semaphoreProvider.create(key, {
2839
2839
  limit,
2840
2840
  ttl,
@@ -2873,7 +2873,7 @@ export function semaphoreProviderTestSuite(settings) {
2873
2873
  await delay(ttl2);
2874
2874
  const ttl3 = null;
2875
2875
  const handlerFn = vi.fn((_event) => { });
2876
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2876
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2877
2877
  const semaphore3 = semaphoreProvider.create(key, {
2878
2878
  limit,
2879
2879
  ttl: ttl3,
@@ -2894,7 +2894,7 @@ export function semaphoreProviderTestSuite(settings) {
2894
2894
  const limit = 2;
2895
2895
  const ttl = null;
2896
2896
  const handlerFn = vi.fn((_event) => { });
2897
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2897
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2898
2898
  const semaphore = semaphoreProvider.create(key, {
2899
2899
  limit,
2900
2900
  ttl,
@@ -2916,7 +2916,7 @@ export function semaphoreProviderTestSuite(settings) {
2916
2916
  const limit = 2;
2917
2917
  const ttl = TimeSpan.fromMilliseconds(50);
2918
2918
  const handlerFn = vi.fn((_event) => { });
2919
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2919
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2920
2920
  const semaphore = semaphoreProvider.create(key, {
2921
2921
  limit,
2922
2922
  ttl,
@@ -2940,7 +2940,7 @@ export function semaphoreProviderTestSuite(settings) {
2940
2940
  const limit = 2;
2941
2941
  const ttl = null;
2942
2942
  const handlerFn = vi.fn((_event) => { });
2943
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2943
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2944
2944
  const semaphore = semaphoreProvider.create(key, {
2945
2945
  limit,
2946
2946
  ttl,
@@ -2970,7 +2970,7 @@ export function semaphoreProviderTestSuite(settings) {
2970
2970
  await semaphore.acquire();
2971
2971
  await delay(ttl);
2972
2972
  const handlerFn = vi.fn((_event) => { });
2973
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2973
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
2974
2974
  await semaphore.acquireBlocking({
2975
2975
  time: TimeSpan.fromMilliseconds(5),
2976
2976
  interval: TimeSpan.fromMilliseconds(5),
@@ -2999,7 +2999,7 @@ export function semaphoreProviderTestSuite(settings) {
2999
2999
  ttl,
3000
3000
  });
3001
3001
  const handlerFn = vi.fn((_event) => { });
3002
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3002
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3003
3003
  await semaphore2.acquireBlocking({
3004
3004
  time: TimeSpan.fromMilliseconds(5),
3005
3005
  interval: TimeSpan.fromMilliseconds(5),
@@ -3029,7 +3029,7 @@ export function semaphoreProviderTestSuite(settings) {
3029
3029
  });
3030
3030
  await semaphore2.acquire();
3031
3031
  const handlerFn = vi.fn((_event) => { });
3032
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, handlerFn);
3032
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, handlerFn);
3033
3033
  const semaphore3 = semaphoreProvider.create(key, {
3034
3034
  limit,
3035
3035
  ttl,
@@ -3066,7 +3066,7 @@ export function semaphoreProviderTestSuite(settings) {
3066
3066
  await delay(ttl2);
3067
3067
  const ttl3 = null;
3068
3068
  const handlerFn = vi.fn((_event) => { });
3069
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3069
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3070
3070
  const semaphore3 = semaphoreProvider.create(key, {
3071
3071
  limit,
3072
3072
  ttl: ttl3,
@@ -3090,7 +3090,7 @@ export function semaphoreProviderTestSuite(settings) {
3090
3090
  const limit = 2;
3091
3091
  const ttl = null;
3092
3092
  const handlerFn = vi.fn((_event) => { });
3093
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3093
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3094
3094
  const semaphore = semaphoreProvider.create(key, {
3095
3095
  limit,
3096
3096
  ttl,
@@ -3115,7 +3115,7 @@ export function semaphoreProviderTestSuite(settings) {
3115
3115
  const limit = 2;
3116
3116
  const ttl = TimeSpan.fromMilliseconds(50);
3117
3117
  const handlerFn = vi.fn((_event) => { });
3118
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3118
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3119
3119
  const semaphore = semaphoreProvider.create(key, {
3120
3120
  limit,
3121
3121
  ttl,
@@ -3142,7 +3142,7 @@ export function semaphoreProviderTestSuite(settings) {
3142
3142
  const limit = 2;
3143
3143
  const ttl = null;
3144
3144
  const handlerFn = vi.fn((_event) => { });
3145
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3145
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3146
3146
  const semaphore = semaphoreProvider.create(key, {
3147
3147
  limit,
3148
3148
  ttl,
@@ -3172,7 +3172,7 @@ export function semaphoreProviderTestSuite(settings) {
3172
3172
  await semaphore.acquire();
3173
3173
  await delay(ttl);
3174
3174
  const handlerFn = vi.fn((_event) => { });
3175
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3175
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3176
3176
  await semaphore.acquireBlockingOrFail({
3177
3177
  time: TimeSpan.fromMilliseconds(5),
3178
3178
  interval: TimeSpan.fromMilliseconds(5),
@@ -3201,7 +3201,7 @@ export function semaphoreProviderTestSuite(settings) {
3201
3201
  ttl,
3202
3202
  });
3203
3203
  const handlerFn = vi.fn((_event) => { });
3204
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3204
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3205
3205
  await semaphore2.acquireBlockingOrFail({
3206
3206
  time: TimeSpan.fromMilliseconds(5),
3207
3207
  interval: TimeSpan.fromMilliseconds(5),
@@ -3231,7 +3231,7 @@ export function semaphoreProviderTestSuite(settings) {
3231
3231
  });
3232
3232
  await semaphore2.acquire();
3233
3233
  const handlerFn = vi.fn((_event) => { });
3234
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, handlerFn);
3234
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.LIMIT_REACHED, handlerFn);
3235
3235
  const semaphore3 = semaphoreProvider.create(key, {
3236
3236
  limit,
3237
3237
  ttl,
@@ -3273,7 +3273,7 @@ export function semaphoreProviderTestSuite(settings) {
3273
3273
  await delay(ttl2);
3274
3274
  const ttl3 = null;
3275
3275
  const handlerFn = vi.fn((_event) => { });
3276
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3276
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3277
3277
  const semaphore3 = semaphoreProvider.create(key, {
3278
3278
  limit,
3279
3279
  ttl: ttl3,
@@ -3297,7 +3297,7 @@ export function semaphoreProviderTestSuite(settings) {
3297
3297
  const limit = 2;
3298
3298
  const ttl = null;
3299
3299
  const handlerFn = vi.fn((_event) => { });
3300
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3300
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3301
3301
  const semaphore = semaphoreProvider.create(key, {
3302
3302
  limit,
3303
3303
  ttl,
@@ -3322,7 +3322,7 @@ export function semaphoreProviderTestSuite(settings) {
3322
3322
  const limit = 2;
3323
3323
  const ttl = TimeSpan.fromMilliseconds(50);
3324
3324
  const handlerFn = vi.fn((_event) => { });
3325
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3325
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ACQUIRED, handlerFn);
3326
3326
  const semaphore = semaphoreProvider.create(key, {
3327
3327
  limit,
3328
3328
  ttl,
@@ -3360,7 +3360,7 @@ export function semaphoreProviderTestSuite(settings) {
3360
3360
  ttl,
3361
3361
  });
3362
3362
  const handlerFn = vi.fn((_event) => { });
3363
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3363
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3364
3364
  await semaphore.release();
3365
3365
  expect(handlerFn).toHaveBeenCalledTimes(1);
3366
3366
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3389,7 +3389,7 @@ export function semaphoreProviderTestSuite(settings) {
3389
3389
  slotId: noneExistingSlotId,
3390
3390
  });
3391
3391
  const handlerFn = vi.fn((_event) => { });
3392
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3392
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3393
3393
  await semaphore.release();
3394
3394
  expect(handlerFn).toHaveBeenCalledTimes(1);
3395
3395
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3416,7 +3416,7 @@ export function semaphoreProviderTestSuite(settings) {
3416
3416
  limit,
3417
3417
  });
3418
3418
  const handlerFn = vi.fn((_event) => { });
3419
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3419
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3420
3420
  await semaphore.release();
3421
3421
  expect(handlerFn).toHaveBeenCalledTimes(1);
3422
3422
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3439,7 +3439,7 @@ export function semaphoreProviderTestSuite(settings) {
3439
3439
  await semaphore.acquire();
3440
3440
  await delay(ttl);
3441
3441
  const handlerFn = vi.fn((_event) => { });
3442
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3442
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3443
3443
  await semaphore.release();
3444
3444
  expect(handlerFn).toHaveBeenCalledTimes(1);
3445
3445
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3461,7 +3461,7 @@ export function semaphoreProviderTestSuite(settings) {
3461
3461
  });
3462
3462
  await semaphore.acquire();
3463
3463
  const handlerFn = vi.fn((_event) => { });
3464
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.RELEASED, handlerFn);
3464
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.RELEASED, handlerFn);
3465
3465
  await semaphore.release();
3466
3466
  expect(handlerFn).toHaveBeenCalledTimes(1);
3467
3467
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3483,7 +3483,7 @@ export function semaphoreProviderTestSuite(settings) {
3483
3483
  });
3484
3484
  await semaphore.acquire();
3485
3485
  const handlerFn = vi.fn((_event) => { });
3486
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.RELEASED, handlerFn);
3486
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.RELEASED, handlerFn);
3487
3487
  await semaphore.release();
3488
3488
  expect(handlerFn).toHaveBeenCalledTimes(1);
3489
3489
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3513,7 +3513,7 @@ export function semaphoreProviderTestSuite(settings) {
3513
3513
  ttl,
3514
3514
  });
3515
3515
  const handlerFn = vi.fn((_event) => { });
3516
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3516
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3517
3517
  try {
3518
3518
  await semaphore.releaseOrFail();
3519
3519
  }
@@ -3547,7 +3547,7 @@ export function semaphoreProviderTestSuite(settings) {
3547
3547
  slotId: noneExistingSlotId,
3548
3548
  });
3549
3549
  const handlerFn = vi.fn((_event) => { });
3550
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3550
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3551
3551
  try {
3552
3552
  await semaphore.releaseOrFail();
3553
3553
  }
@@ -3579,7 +3579,7 @@ export function semaphoreProviderTestSuite(settings) {
3579
3579
  limit,
3580
3580
  });
3581
3581
  const handlerFn = vi.fn((_event) => { });
3582
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3582
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3583
3583
  try {
3584
3584
  await semaphore.releaseOrFail();
3585
3585
  }
@@ -3607,7 +3607,7 @@ export function semaphoreProviderTestSuite(settings) {
3607
3607
  await semaphore.acquire();
3608
3608
  await delay(ttl);
3609
3609
  const handlerFn = vi.fn((_event) => { });
3610
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3610
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_RELEASE, handlerFn);
3611
3611
  try {
3612
3612
  await semaphore.releaseOrFail();
3613
3613
  }
@@ -3634,7 +3634,7 @@ export function semaphoreProviderTestSuite(settings) {
3634
3634
  });
3635
3635
  await semaphore.acquire();
3636
3636
  const handlerFn = vi.fn((_event) => { });
3637
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.RELEASED, handlerFn);
3637
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.RELEASED, handlerFn);
3638
3638
  await semaphore.releaseOrFail();
3639
3639
  expect(handlerFn).toHaveBeenCalledTimes(1);
3640
3640
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3656,7 +3656,7 @@ export function semaphoreProviderTestSuite(settings) {
3656
3656
  });
3657
3657
  await semaphore.acquire();
3658
3658
  const handlerFn = vi.fn((_event) => { });
3659
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.RELEASED, handlerFn);
3659
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.RELEASED, handlerFn);
3660
3660
  await semaphore.releaseOrFail();
3661
3661
  expect(handlerFn).toHaveBeenCalledTimes(1);
3662
3662
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3693,7 +3693,7 @@ export function semaphoreProviderTestSuite(settings) {
3693
3693
  limit,
3694
3694
  });
3695
3695
  const handlerFn = vi.fn((_event) => { });
3696
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ALL_FORCE_RELEASED, handlerFn);
3696
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ALL_FORCE_RELEASED, handlerFn);
3697
3697
  await semaphore3.forceReleaseAll();
3698
3698
  expect(handlerFn).toHaveBeenCalledTimes(1);
3699
3699
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3722,7 +3722,7 @@ export function semaphoreProviderTestSuite(settings) {
3722
3722
  });
3723
3723
  await semaphore2.acquire();
3724
3724
  const handlerFn = vi.fn((_event) => { });
3725
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.ALL_FORCE_RELEASED, handlerFn);
3725
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.ALL_FORCE_RELEASED, handlerFn);
3726
3726
  await semaphore1.forceReleaseAll();
3727
3727
  expect(handlerFn).toHaveBeenCalledTimes(1);
3728
3728
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3753,7 +3753,7 @@ export function semaphoreProviderTestSuite(settings) {
3753
3753
  limit,
3754
3754
  });
3755
3755
  const handlerFn = vi.fn((_event) => { });
3756
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3756
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3757
3757
  await semaphore2.refresh();
3758
3758
  expect(handlerFn).toHaveBeenCalledTimes(1);
3759
3759
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3782,7 +3782,7 @@ export function semaphoreProviderTestSuite(settings) {
3782
3782
  slotId: noneExistingSlotId,
3783
3783
  });
3784
3784
  const handlerFn = vi.fn((_event) => { });
3785
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3785
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3786
3786
  await semaphore2.refresh();
3787
3787
  expect(handlerFn).toHaveBeenCalledTimes(1);
3788
3788
  expect(handlerFn).toHaveBeenCalledWith(expect.objectContaining({
@@ -3805,7 +3805,7 @@ export function semaphoreProviderTestSuite(settings) {
3805
3805
  await semaphore.acquire();
3806
3806
  await delay(ttl);
3807
3807
  const handlerFn = vi.fn((_event) => { });
3808
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3808
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3809
3809
  const newTtl = TimeSpan.fromMilliseconds(100);
3810
3810
  await semaphore.refresh(newTtl);
3811
3811
  expect(handlerFn).toHaveBeenCalledTimes(1);
@@ -3829,7 +3829,7 @@ export function semaphoreProviderTestSuite(settings) {
3829
3829
  await semaphore.acquire();
3830
3830
  await delay(ttl);
3831
3831
  const handlerFn = vi.fn((_event) => { });
3832
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3832
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3833
3833
  const newTtl = TimeSpan.fromMilliseconds(100);
3834
3834
  await semaphore.refresh(newTtl);
3835
3835
  expect(handlerFn).toHaveBeenCalledTimes(1);
@@ -3852,7 +3852,7 @@ export function semaphoreProviderTestSuite(settings) {
3852
3852
  });
3853
3853
  await semaphore.acquire();
3854
3854
  const handlerFn = vi.fn((_event) => { });
3855
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3855
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3856
3856
  const newTtl = TimeSpan.fromMilliseconds(100);
3857
3857
  await semaphore.refresh(newTtl);
3858
3858
  expect(handlerFn).toHaveBeenCalledTimes(1);
@@ -3875,7 +3875,7 @@ export function semaphoreProviderTestSuite(settings) {
3875
3875
  });
3876
3876
  await semaphore.acquire();
3877
3877
  const handlerFn = vi.fn((_event) => { });
3878
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.REFRESHED, handlerFn);
3878
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.REFRESHED, handlerFn);
3879
3879
  const newTtl = TimeSpan.fromMilliseconds(100);
3880
3880
  await semaphore.refresh(newTtl);
3881
3881
  expect(handlerFn).toHaveBeenCalledTimes(1);
@@ -3906,7 +3906,7 @@ export function semaphoreProviderTestSuite(settings) {
3906
3906
  limit,
3907
3907
  });
3908
3908
  const handlerFn = vi.fn((_event) => { });
3909
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3909
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3910
3910
  try {
3911
3911
  await semaphore2.refreshOrFail(newTtl);
3912
3912
  }
@@ -3940,7 +3940,7 @@ export function semaphoreProviderTestSuite(settings) {
3940
3940
  slotId: noneExistingSlotId,
3941
3941
  });
3942
3942
  const handlerFn = vi.fn((_event) => { });
3943
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3943
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3944
3944
  try {
3945
3945
  await semaphore2.refreshOrFail(newTtl);
3946
3946
  }
@@ -3968,7 +3968,7 @@ export function semaphoreProviderTestSuite(settings) {
3968
3968
  await semaphore.acquire();
3969
3969
  await delay(ttl);
3970
3970
  const handlerFn = vi.fn((_event) => { });
3971
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3971
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
3972
3972
  const newTtl = TimeSpan.fromMilliseconds(100);
3973
3973
  try {
3974
3974
  await semaphore.refreshOrFail(newTtl);
@@ -3997,7 +3997,7 @@ export function semaphoreProviderTestSuite(settings) {
3997
3997
  await semaphore.acquire();
3998
3998
  await delay(ttl);
3999
3999
  const handlerFn = vi.fn((_event) => { });
4000
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
4000
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
4001
4001
  const newTtl = TimeSpan.fromMilliseconds(100);
4002
4002
  try {
4003
4003
  await semaphore.refreshOrFail(newTtl);
@@ -4025,7 +4025,7 @@ export function semaphoreProviderTestSuite(settings) {
4025
4025
  });
4026
4026
  await semaphore.acquire();
4027
4027
  const handlerFn = vi.fn((_event) => { });
4028
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
4028
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.FAILED_REFRESH, handlerFn);
4029
4029
  const newTtl = TimeSpan.fromMilliseconds(100);
4030
4030
  try {
4031
4031
  await semaphore.refreshOrFail(newTtl);
@@ -4053,7 +4053,7 @@ export function semaphoreProviderTestSuite(settings) {
4053
4053
  });
4054
4054
  await semaphore.acquire();
4055
4055
  const handlerFn = vi.fn((_event) => { });
4056
- await semaphoreProvider.addListener(SEMAPHORE_EVENTS.REFRESHED, handlerFn);
4056
+ await semaphoreProvider.events.addListener(SEMAPHORE_EVENTS.REFRESHED, handlerFn);
4057
4057
  const newTtl = TimeSpan.fromMilliseconds(100);
4058
4058
  await semaphore.refreshOrFail(newTtl);
4059
4059
  expect(handlerFn).toHaveBeenCalledTimes(1);