@daiso-tech/core 0.26.0 → 0.27.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.
- package/README.md +10 -0
- package/dist/async/utilities/delay/delay.d.ts +1 -12
- package/dist/async/utilities/delay/delay.js +1 -12
- package/dist/async/utilities/delay/delay.js.map +1 -1
- package/dist/async/utilities/lazy-promise/lazy-promise.d.ts +99 -65
- package/dist/async/utilities/lazy-promise/lazy-promise.js +151 -111
- package/dist/async/utilities/lazy-promise/lazy-promise.js.map +1 -1
- package/dist/cache/contracts/_module-exports.d.ts +1 -0
- package/dist/cache/contracts/_module-exports.js +1 -0
- package/dist/cache/contracts/_module-exports.js.map +1 -1
- package/dist/cache/contracts/cache-adapter.contract.d.ts +19 -21
- package/dist/cache/contracts/cache-adapter.contract.js +1 -4
- package/dist/cache/contracts/cache-adapter.contract.js.map +1 -1
- package/dist/cache/contracts/cache-factory.contract.d.ts +1 -1
- package/dist/cache/contracts/cache.contract.d.ts +52 -88
- package/dist/cache/contracts/cache.contract.js +1 -2
- package/dist/cache/contracts/cache.contract.js.map +1 -1
- package/dist/cache/contracts/cache.errors.js +2 -5
- package/dist/cache/contracts/cache.errors.js.map +1 -1
- package/dist/cache/contracts/cache.events.d.ts +10 -10
- package/dist/cache/contracts/cache.events.js +2 -5
- package/dist/cache/contracts/cache.events.js.map +1 -1
- package/dist/cache/contracts/database-cache-adapter.contract.d.ts +89 -0
- package/dist/cache/contracts/database-cache-adapter.contract.js +5 -0
- package/dist/cache/contracts/database-cache-adapter.contract.js.map +1 -0
- package/dist/cache/implementations/adapters/_module-exports.d.ts +0 -1
- package/dist/cache/implementations/adapters/_module-exports.js +0 -1
- package/dist/cache/implementations/adapters/_module-exports.js.map +1 -1
- package/dist/cache/implementations/adapters/{kysely-sqlite-cache-adapter → kysely-cache-adapter}/_module.d.ts +1 -1
- package/dist/cache/implementations/adapters/kysely-cache-adapter/_module.js +2 -0
- package/dist/cache/implementations/adapters/kysely-cache-adapter/_module.js.map +1 -0
- package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.d.ts +73 -0
- package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js +224 -0
- package/dist/cache/implementations/adapters/kysely-cache-adapter/kysely-cache-adapter.js.map +1 -0
- package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.d.ts +29 -39
- package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js +45 -54
- package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.d.ts +17 -33
- package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js +43 -52
- package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter-serde.d.ts +13 -0
- package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter-serde.js +38 -0
- package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter-serde.js.map +1 -0
- package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.d.ts +27 -33
- package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js +145 -197
- package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter-serde.d.ts +13 -0
- package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter-serde.js +39 -0
- package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter-serde.js.map +1 -0
- package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.d.ts +16 -22
- package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js +51 -132
- package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/adapters/redis-cache-adapter/utilities.d.ts +13 -0
- package/dist/cache/implementations/adapters/redis-cache-adapter/utilities.js +69 -0
- package/dist/cache/implementations/adapters/redis-cache-adapter/utilities.js.map +1 -0
- package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.d.ts +29 -40
- package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js +46 -55
- package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js.map +1 -1
- package/dist/cache/implementations/derivables/_module-exports.d.ts +1 -1
- package/dist/cache/implementations/derivables/_module-exports.js +1 -1
- package/dist/cache/implementations/derivables/_module-exports.js.map +1 -1
- package/dist/cache/implementations/derivables/cache/_module.d.ts +1 -0
- package/dist/cache/implementations/derivables/cache/_module.js +1 -0
- package/dist/cache/implementations/derivables/cache/_module.js.map +1 -1
- package/dist/cache/implementations/derivables/cache/cache.d.ts +122 -565
- package/dist/cache/implementations/derivables/cache/cache.js +342 -854
- package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
- package/dist/cache/implementations/derivables/cache/database-cache-adapter.d.ts +21 -0
- package/dist/cache/implementations/derivables/cache/database-cache-adapter.js +110 -0
- package/dist/cache/implementations/derivables/cache/database-cache-adapter.js.map +1 -0
- package/dist/cache/implementations/derivables/cache/is-database-cache-adapter.d.ts +9 -0
- package/dist/cache/implementations/derivables/cache/is-database-cache-adapter.js +20 -0
- package/dist/cache/implementations/derivables/cache/is-database-cache-adapter.js.map +1 -0
- package/dist/cache/implementations/derivables/cache-factory/cache-factory.d.ts +65 -104
- package/dist/cache/implementations/derivables/cache-factory/cache-factory.js +101 -85
- package/dist/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
- package/dist/cache/implementations/test-utilities/_module-exports.d.ts +1 -0
- package/dist/cache/implementations/test-utilities/_module-exports.js +1 -0
- package/dist/cache/implementations/test-utilities/_module-exports.js.map +1 -1
- package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.d.ts +9 -11
- package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.js +246 -247
- package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.js.map +1 -1
- package/dist/cache/implementations/test-utilities/cache.test-suite.d.ts +16 -30
- package/dist/cache/implementations/test-utilities/cache.test-suite.js +271 -996
- package/dist/cache/implementations/test-utilities/cache.test-suite.js.map +1 -1
- package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.d.ts +60 -0
- package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js +698 -0
- package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js.map +1 -0
- package/dist/collection/contracts/async-collection.contract.d.ts +2 -3
- package/dist/collection/contracts/async-collection.contract.js +1 -12
- package/dist/collection/contracts/async-collection.contract.js.map +1 -1
- package/dist/collection/contracts/collection.contract.d.ts +1 -1
- package/dist/collection/contracts/collection.errors.d.ts +1 -1
- package/dist/collection/contracts/collection.errors.js +3 -6
- package/dist/collection/contracts/collection.errors.js.map +1 -1
- package/dist/collection/implementations/_shared.d.ts +4 -4
- package/dist/collection/implementations/_shared.js +6 -9
- package/dist/collection/implementations/_shared.js.map +1 -1
- package/dist/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.js +2 -2
- package/dist/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.js.map +1 -1
- package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +1 -1
- package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js +6 -5
- package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
- package/dist/collection/implementations/iterable-collection/iterable-collection.d.ts +1 -1
- package/dist/collection/implementations/iterable-collection/iterable-collection.js +1 -1
- package/dist/collection/implementations/list-collection/list-collection.d.ts +1 -1
- package/dist/collection/implementations/list-collection/list-collection.js +1 -1
- package/dist/event-bus/contracts/event-bus-adapter.contract.d.ts +0 -9
- package/dist/event-bus/contracts/event-bus.contract.d.ts +5 -5
- package/dist/event-bus/contracts/event-bus.contract.js.map +1 -1
- package/dist/event-bus/contracts/event-bus.errors.js +2 -5
- package/dist/event-bus/contracts/event-bus.errors.js.map +1 -1
- package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.d.ts +9 -29
- package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +14 -35
- package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js.map +1 -1
- package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.d.ts +1 -3
- package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js +1 -7
- package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js.map +1 -1
- package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.d.ts +8 -15
- package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js +15 -34
- package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js.map +1 -1
- package/dist/event-bus/implementations/derivables/event-bus/event-bus.d.ts +78 -267
- package/dist/event-bus/implementations/derivables/event-bus/event-bus.js +119 -323
- package/dist/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
- package/dist/event-bus/implementations/derivables/event-bus/listener-store.d.ts +13 -0
- package/dist/event-bus/implementations/derivables/event-bus/listener-store.js +42 -0
- package/dist/event-bus/implementations/derivables/event-bus/listener-store.js.map +1 -0
- package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.d.ts +70 -96
- package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js +100 -90
- package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js.map +1 -1
- package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.d.ts +2 -48
- package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.js +31 -122
- package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.js.map +1 -1
- package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.d.ts +2 -50
- package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js +41 -89
- package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js.map +1 -1
- package/dist/lock/contracts/database-lock-adapter.contract.d.ts +0 -9
- package/dist/lock/contracts/lock-adapter.contract.d.ts +0 -9
- package/dist/lock/contracts/lock-provider.contract.d.ts +1 -1
- package/dist/lock/contracts/lock.errors.js +2 -5
- package/dist/lock/contracts/lock.errors.js.map +1 -1
- package/dist/lock/contracts/lock.events.js +2 -5
- package/dist/lock/contracts/lock.events.js.map +1 -1
- package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.d.ts +0 -5
- package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js +2 -21
- package/dist/lock/implementations/adapters/kysely-lock-adapter/kysely-lock-adapter.js.map +1 -1
- package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.d.ts +11 -16
- package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js +11 -20
- package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js.map +1 -1
- package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.d.ts +7 -26
- package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js +7 -35
- package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js.map +1 -1
- package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.d.ts +13 -20
- package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js +13 -37
- package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js.map +1 -1
- package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.d.ts +4 -22
- package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js +4 -31
- package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js.map +1 -1
- package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.d.ts +12 -17
- package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js +12 -21
- package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js.map +1 -1
- package/dist/lock/implementations/derivables/lock-provider/database-lock-adapter.d.ts +0 -2
- package/dist/lock/implementations/derivables/lock-provider/database-lock-adapter.js +2 -8
- package/dist/lock/implementations/derivables/lock-provider/database-lock-adapter.js.map +1 -1
- package/dist/lock/implementations/derivables/lock-provider/is-database-lock-adapter.d.ts +9 -0
- package/dist/lock/implementations/derivables/lock-provider/is-database-lock-adapter.js +17 -0
- package/dist/lock/implementations/derivables/lock-provider/is-database-lock-adapter.js.map +1 -0
- package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +115 -372
- package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +197 -455
- package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
- package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.d.ts +15 -17
- package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js +42 -40
- package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js.map +1 -1
- package/dist/lock/implementations/derivables/lock-provider/lock-state.d.ts +3 -3
- package/dist/lock/implementations/derivables/lock-provider/lock-state.js.map +1 -1
- package/dist/lock/implementations/derivables/lock-provider/lock.d.ts +30 -754
- package/dist/lock/implementations/derivables/lock-provider/lock.js +94 -812
- package/dist/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
- package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.d.ts +58 -161
- package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js +116 -122
- package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js.map +1 -1
- package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.d.ts +4 -5
- package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.js +172 -247
- package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.js.map +1 -1
- package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.d.ts +5 -8
- package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.js +93 -98
- package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.js.map +1 -1
- package/dist/lock/implementations/test-utilities/lock-provider.test-suite.d.ts +15 -20
- package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +133 -137
- package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js.map +1 -1
- package/dist/serde/implementations/adapters/mongodb-serde/mongodb-serde.js +1 -2
- package/dist/serde/implementations/adapters/mongodb-serde/mongodb-serde.js.map +1 -1
- package/dist/serde/implementations/adapters/no-op-serde-adapter/no-op-serde-adapter.d.ts +2 -2
- package/dist/serde/implementations/adapters/no-op-serde-adapter/no-op-serde-adapter.js +1 -1
- package/dist/serde/implementations/adapters/redis-serde/redis-serde.js +1 -2
- package/dist/serde/implementations/adapters/redis-serde/redis-serde.js.map +1 -1
- package/dist/serde/implementations/adapters/sql-serde/sql-serde.js +1 -2
- package/dist/serde/implementations/adapters/sql-serde/sql-serde.js.map +1 -1
- package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.d.ts +2 -2
- package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js +2 -2
- package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js.map +1 -1
- package/dist/serde/implementations/derivables/serde.d.ts +14 -14
- package/dist/serde/implementations/derivables/serde.js +14 -15
- package/dist/serde/implementations/derivables/serde.js.map +1 -1
- package/dist/serde/implementations/test-utilities/flexible-serde-adapter.test-suite.d.ts +4 -4
- package/dist/serde/implementations/test-utilities/flexible-serde-adapter.test-suite.js +3 -3
- package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.d.ts +5 -5
- package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.js +4 -4
- package/dist/utilities/_module-exports.d.ts +1 -2
- package/dist/utilities/_module-exports.js +1 -2
- package/dist/utilities/_module-exports.js.map +1 -1
- package/dist/utilities/classes/_module.d.ts +4 -0
- package/dist/utilities/classes/_module.js +5 -0
- package/dist/utilities/classes/_module.js.map +1 -0
- package/dist/utilities/classes/key-prefixer/_module.d.ts +2 -0
- package/dist/utilities/classes/key-prefixer/_module.js +3 -0
- package/dist/utilities/classes/key-prefixer/_module.js.map +1 -0
- package/dist/utilities/classes/key-prefixer/key-prefixer.contract.d.ts +28 -0
- package/dist/utilities/classes/key-prefixer/key-prefixer.contract.js +5 -0
- package/dist/utilities/classes/key-prefixer/key-prefixer.contract.js.map +1 -0
- package/dist/utilities/classes/key-prefixer/key-prefixer.d.ts +73 -0
- package/dist/utilities/classes/key-prefixer/key-prefixer.js +135 -0
- package/dist/utilities/classes/key-prefixer/key-prefixer.js.map +1 -0
- package/dist/utilities/classes/kysely-table-name-transformer-plugin/_module.d.ts +1 -0
- package/dist/utilities/classes/kysely-table-name-transformer-plugin/_module.js +2 -0
- package/dist/utilities/classes/kysely-table-name-transformer-plugin/_module.js.map +1 -0
- package/dist/utilities/classes/kysely-table-name-transformer-plugin/kysely-table-name-transformer-plugin.js.map +1 -0
- package/dist/utilities/classes/pipeline/_module.d.ts +1 -0
- package/dist/utilities/classes/pipeline/_module.js +2 -0
- package/dist/utilities/classes/pipeline/_module.js.map +1 -0
- package/dist/utilities/{pipeline → classes/pipeline}/pipeline.d.ts +3 -2
- package/dist/utilities/{pipeline → classes/pipeline}/pipeline.js +3 -2
- package/dist/utilities/classes/pipeline/pipeline.js.map +1 -0
- package/dist/utilities/classes/time-span/_module.d.ts +1 -0
- package/dist/utilities/classes/time-span/_module.js +2 -0
- package/dist/utilities/classes/time-span/_module.js.map +1 -0
- package/dist/utilities/{time-span → classes/time-span}/time-span.d.ts +2 -1
- package/dist/utilities/{time-span → classes/time-span}/time-span.js +1 -0
- package/dist/utilities/classes/time-span/time-span.js.map +1 -0
- package/dist/utilities/contracts/_module.d.ts +2 -1
- package/dist/utilities/contracts/_module.js +2 -1
- package/dist/utilities/contracts/_module.js.map +1 -1
- package/dist/utilities/contracts/prunable.contract.d.ts +11 -0
- package/dist/utilities/contracts/prunable.contract.js +5 -0
- package/dist/utilities/contracts/prunable.contract.js.map +1 -0
- package/dist/utilities/functions.d.ts +30 -2
- package/dist/utilities/functions.js +66 -4
- package/dist/utilities/functions.js.map +1 -1
- package/dist/utilities/types.d.ts +47 -14
- package/package.json +14 -13
- package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/_module.js +0 -2
- package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/_module.js.map +0 -1
- package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.d.ts +0 -61
- package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js +0 -318
- package/dist/cache/implementations/adapters/kysely-sqlite-cache-adapter/kysely-sqlite-cache-adapter.js.map +0 -1
- package/dist/cache/implementations/adapters/no-op-cache-adapter/_module.d.ts +0 -1
- package/dist/cache/implementations/adapters/no-op-cache-adapter/_module.js +0 -2
- package/dist/cache/implementations/adapters/no-op-cache-adapter/_module.js.map +0 -1
- package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.d.ts +0 -22
- package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js +0 -39
- package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js.map +0 -1
- package/dist/utilities/kysely/_module.d.ts +0 -1
- package/dist/utilities/kysely/_module.js +0 -2
- package/dist/utilities/kysely/_module.js.map +0 -1
- package/dist/utilities/kysely/kysely-table-name-transformer-plugin.js.map +0 -1
- package/dist/utilities/pipeline/_module.d.ts +0 -1
- package/dist/utilities/pipeline/_module.js +0 -2
- package/dist/utilities/pipeline/_module.js.map +0 -1
- package/dist/utilities/pipeline/pipeline.js.map +0 -1
- package/dist/utilities/time-span/_module.d.ts +0 -1
- package/dist/utilities/time-span/_module.js +0 -2
- package/dist/utilities/time-span/_module.js.map +0 -1
- package/dist/utilities/time-span/time-span.js.map +0 -1
- /package/dist/utilities/{kysely → classes/kysely-table-name-transformer-plugin}/kysely-table-name-transformer-plugin.d.ts +0 -0
- /package/dist/utilities/{kysely → classes/kysely-table-name-transformer-plugin}/kysely-table-name-transformer-plugin.js +0 -0
|
@@ -5,46 +5,41 @@ import {} from "vitest";
|
|
|
5
5
|
import { UnownedRefreshLockEvent, KeyForceReleasedLockEvent, KeyAlreadyAcquiredLockEvent, UnownedReleaseLockEvent, KeyReleasedLockEvent, KeyAcquiredLockEvent, KeyAlreadyAcquiredLockError, UnownedRefreshLockError, UnownedReleaseLockError, KeyRefreshedLockEvent, } from "../../../lock/contracts/_module-exports.js";
|
|
6
6
|
import {} from "../../../utilities/_module-exports.js";
|
|
7
7
|
import { TimeSpan } from "../../../utilities/_module-exports.js";
|
|
8
|
-
import {
|
|
8
|
+
import { LazyPromise } from "../../../async/_module-exports.js";
|
|
9
9
|
import { NoOpSerdeAdapter } from "../../../serde/implementations/adapters/_module-exports.js";
|
|
10
10
|
import { Serde } from "../../../serde/implementations/derivables/_module-exports.js";
|
|
11
11
|
/**
|
|
12
12
|
* The <i>lockProviderTestSuite</i> function simplifies the process of testing your custom implementation of <i>{@link ILock}</i> with <i>vitest</i>.
|
|
13
13
|
*
|
|
14
|
-
* IMPORT_PATH: ```"@daiso-tech/core/lock/
|
|
14
|
+
* IMPORT_PATH: ```"@daiso-tech/core/lock/test-utilities"```
|
|
15
15
|
* @group Utilities
|
|
16
16
|
* @example
|
|
17
17
|
* ```ts
|
|
18
|
-
* import {
|
|
19
|
-
* import { MemoryLockAdapter } from "@daiso-tech/core/lock/
|
|
20
|
-
* import { LockProvider } from "@daiso-tech/core/lock
|
|
21
|
-
* import { EventBus } from "@daiso-tech/core/event-bus
|
|
22
|
-
* import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/
|
|
23
|
-
* import { lockProviderTestSuite } from "@daiso-tech/core/lock/
|
|
24
|
-
* import { Serde } from "@daiso-tech/core/serde
|
|
25
|
-
* import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/
|
|
18
|
+
* import { describe, expect, test } from "vitest";
|
|
19
|
+
* import { MemoryLockAdapter } from "@daiso-tech/core/lock/adapters";
|
|
20
|
+
* import { LockProvider } from "@daiso-tech/core/lock";
|
|
21
|
+
* import { EventBus } from "@daiso-tech/core/event-bus";
|
|
22
|
+
* import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/adapters";
|
|
23
|
+
* import { lockProviderTestSuite } from "@daiso-tech/core/lock/test-utilities";
|
|
24
|
+
* import { Serde } from "@daiso-tech/core/serde";
|
|
25
|
+
* import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/adapters";
|
|
26
26
|
* import type { ILockData } from "@daiso-tech/core/lock/contracts";
|
|
27
|
+
* import { KeyPrefixer } from "@daiso-tech/core/utilities";
|
|
27
28
|
*
|
|
28
29
|
* describe("class: LockProvider", () => {
|
|
29
30
|
* const eventBus = new EventBus({
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
* }),
|
|
31
|
+
* keyPrefixer: new KeyPrefixer("event-bus"),
|
|
32
|
+
* adapter: new MemoryEventBusAdapter(),
|
|
33
33
|
* });
|
|
34
34
|
* const serde = new Serde(new SuperJsonSerdeAdapter());
|
|
35
35
|
* let map: Map<string, ILockData>;
|
|
36
|
-
* beforeEach(() => {
|
|
37
|
-
* map = new Map();
|
|
38
|
-
* });
|
|
39
36
|
* lockProviderTestSuite({
|
|
40
37
|
* createLockProvider: () => {
|
|
41
38
|
* const lockProvider = new LockProvider({
|
|
42
39
|
* serde,
|
|
43
|
-
* adapter: new MemoryLockAdapter(
|
|
44
|
-
* rootGroup: "@a",
|
|
45
|
-
* map,
|
|
46
|
-
* }),
|
|
40
|
+
* adapter: new MemoryLockAdapter(),
|
|
47
41
|
* eventBus,
|
|
42
|
+
* keyPrefixer: new KeyPrefixer("lock"),
|
|
48
43
|
* });
|
|
49
44
|
* return lockProvider;
|
|
50
45
|
* },
|
|
@@ -67,6 +62,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
67
62
|
lockProviderB = lockProvider.withGroup("b");
|
|
68
63
|
});
|
|
69
64
|
const TTL = TimeSpan.fromMilliseconds(50);
|
|
65
|
+
const DELAY_TIME = TimeSpan.fromMilliseconds(50);
|
|
70
66
|
describe("Api tests:", () => {
|
|
71
67
|
describe("method: run", () => {
|
|
72
68
|
test("Should return string when lock is available", async () => {
|
|
@@ -76,7 +72,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
76
72
|
ttl,
|
|
77
73
|
});
|
|
78
74
|
const [result, error] = await lock.run(async () => {
|
|
79
|
-
await delay(
|
|
75
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
80
76
|
return "a";
|
|
81
77
|
});
|
|
82
78
|
expect(result).toBe("a");
|
|
@@ -90,7 +86,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
90
86
|
});
|
|
91
87
|
await lock.acquire();
|
|
92
88
|
const [result, error] = await lock.run(async () => {
|
|
93
|
-
await delay(
|
|
89
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
94
90
|
return "a";
|
|
95
91
|
});
|
|
96
92
|
expect(result).toBeNull();
|
|
@@ -103,7 +99,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
103
99
|
ttl,
|
|
104
100
|
});
|
|
105
101
|
const [result, error] = await lock.run(new LazyPromise(async () => {
|
|
106
|
-
await delay(
|
|
102
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
107
103
|
return "a";
|
|
108
104
|
}));
|
|
109
105
|
expect(result).toBe("a");
|
|
@@ -118,7 +114,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
118
114
|
ttl,
|
|
119
115
|
});
|
|
120
116
|
const result = await lock.runOrFail(async () => {
|
|
121
|
-
await delay(
|
|
117
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
122
118
|
return "a";
|
|
123
119
|
});
|
|
124
120
|
expect(result).toBe("a");
|
|
@@ -131,7 +127,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
131
127
|
});
|
|
132
128
|
await lock.acquire();
|
|
133
129
|
const result = lock.runOrFail(async () => {
|
|
134
|
-
await delay(
|
|
130
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
135
131
|
return "a";
|
|
136
132
|
});
|
|
137
133
|
await expect(result).rejects.toBeInstanceOf(KeyAlreadyAcquiredLockError);
|
|
@@ -143,7 +139,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
143
139
|
ttl,
|
|
144
140
|
});
|
|
145
141
|
const result = await lock.runOrFail(new LazyPromise(async () => {
|
|
146
|
-
await delay(
|
|
142
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
147
143
|
return "a";
|
|
148
144
|
}));
|
|
149
145
|
expect(result).toBe("a");
|
|
@@ -157,7 +153,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
157
153
|
ttl,
|
|
158
154
|
});
|
|
159
155
|
const [result, error] = await lock.runBlocking(async () => {
|
|
160
|
-
await delay(
|
|
156
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
161
157
|
return "a";
|
|
162
158
|
}, {
|
|
163
159
|
time: TimeSpan.fromMilliseconds(5),
|
|
@@ -174,7 +170,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
174
170
|
});
|
|
175
171
|
await lock.acquire();
|
|
176
172
|
const [result, error] = await lock.runBlocking(async () => {
|
|
177
|
-
await delay(
|
|
173
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
178
174
|
return "a";
|
|
179
175
|
}, {
|
|
180
176
|
time: TimeSpan.fromMilliseconds(5),
|
|
@@ -190,7 +186,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
190
186
|
ttl,
|
|
191
187
|
});
|
|
192
188
|
const [result, error] = await lock.runBlocking(new LazyPromise(async () => {
|
|
193
|
-
await delay(
|
|
189
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
194
190
|
return "a";
|
|
195
191
|
}), {
|
|
196
192
|
time: TimeSpan.fromMilliseconds(5),
|
|
@@ -211,7 +207,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
211
207
|
index++;
|
|
212
208
|
});
|
|
213
209
|
await lock.runBlocking(async () => {
|
|
214
|
-
await delay(
|
|
210
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
215
211
|
}, {
|
|
216
212
|
time: TimeSpan.fromMilliseconds(55),
|
|
217
213
|
interval: TimeSpan.fromMilliseconds(5),
|
|
@@ -556,7 +552,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
556
552
|
owner,
|
|
557
553
|
});
|
|
558
554
|
await lock.acquire();
|
|
559
|
-
await delay(ttl.addMilliseconds(25));
|
|
555
|
+
await LazyPromise.delay(ttl.addMilliseconds(25));
|
|
560
556
|
const result = await lock.isExpired();
|
|
561
557
|
expect(result).toBe(true);
|
|
562
558
|
});
|
|
@@ -595,7 +591,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
595
591
|
owner,
|
|
596
592
|
});
|
|
597
593
|
await lock.acquire();
|
|
598
|
-
await delay(ttl.addMilliseconds(25));
|
|
594
|
+
await LazyPromise.delay(ttl.addMilliseconds(25));
|
|
599
595
|
const result = await lock.isLocked();
|
|
600
596
|
expect(result).toBe(false);
|
|
601
597
|
});
|
|
@@ -610,7 +606,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
610
606
|
owner,
|
|
611
607
|
});
|
|
612
608
|
await lock.acquire();
|
|
613
|
-
await delay(ttl);
|
|
609
|
+
await LazyPromise.delay(ttl);
|
|
614
610
|
const result = await lock.refresh();
|
|
615
611
|
expect(result).toBe(true);
|
|
616
612
|
});
|
|
@@ -640,7 +636,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
640
636
|
owner,
|
|
641
637
|
});
|
|
642
638
|
await lock.acquire();
|
|
643
|
-
await delay(ttl.subtractMilliseconds(10));
|
|
639
|
+
await LazyPromise.delay(ttl.subtractMilliseconds(10));
|
|
644
640
|
await lock.refresh();
|
|
645
641
|
const time = await lock.getRemainingTime();
|
|
646
642
|
expect(time?.toMilliseconds()).toBeGreaterThan(0);
|
|
@@ -656,7 +652,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
656
652
|
owner,
|
|
657
653
|
});
|
|
658
654
|
await lock.acquire();
|
|
659
|
-
await delay(ttl);
|
|
655
|
+
await LazyPromise.delay(ttl);
|
|
660
656
|
const result = lock.refreshOrFail();
|
|
661
657
|
await expect(result).resolves.toBeUndefined();
|
|
662
658
|
});
|
|
@@ -686,7 +682,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
686
682
|
owner,
|
|
687
683
|
});
|
|
688
684
|
await lock.acquireOrFail();
|
|
689
|
-
await delay(ttl.subtractMilliseconds(10));
|
|
685
|
+
await LazyPromise.delay(ttl.subtractMilliseconds(10));
|
|
690
686
|
await lock.refresh();
|
|
691
687
|
const time = await lock.getRemainingTime();
|
|
692
688
|
expect(time?.toMilliseconds()).toBeGreaterThan(0);
|
|
@@ -763,9 +759,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
763
759
|
event_ = event;
|
|
764
760
|
});
|
|
765
761
|
await lock.run(async () => {
|
|
766
|
-
await delay(
|
|
762
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
767
763
|
});
|
|
768
|
-
await delay(
|
|
764
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
769
765
|
expect(event_?.fields.key).toBe("a");
|
|
770
766
|
expect(event_?.fields.owner).toBe(owner);
|
|
771
767
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -783,9 +779,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
783
779
|
event_ = event;
|
|
784
780
|
});
|
|
785
781
|
await lock.run(async () => {
|
|
786
|
-
await delay(
|
|
782
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
787
783
|
});
|
|
788
|
-
await delay(
|
|
784
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
789
785
|
expect(event_?.fields.key).toBe(key);
|
|
790
786
|
expect(event_?.fields.owner).toBe(owner);
|
|
791
787
|
await unsubscribe();
|
|
@@ -802,9 +798,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
802
798
|
event_ = event;
|
|
803
799
|
});
|
|
804
800
|
await lock.run(async () => {
|
|
805
|
-
await delay(
|
|
801
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
806
802
|
});
|
|
807
|
-
await delay(
|
|
803
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
808
804
|
expect(event_?.fields.key).toBe("a");
|
|
809
805
|
expect(event_?.fields.owner).toBe(owner);
|
|
810
806
|
await unsubscribe();
|
|
@@ -823,12 +819,12 @@ export function lockProviderTestSuite(settings) {
|
|
|
823
819
|
event_ = event;
|
|
824
820
|
});
|
|
825
821
|
await lock.runBlocking(async () => {
|
|
826
|
-
await delay(
|
|
822
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
827
823
|
}, {
|
|
828
824
|
time: TimeSpan.fromMilliseconds(5),
|
|
829
825
|
interval: TimeSpan.fromMilliseconds(5),
|
|
830
826
|
});
|
|
831
|
-
await delay(
|
|
827
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
832
828
|
expect(event_?.fields.key).toBe("a");
|
|
833
829
|
expect(event_?.fields.owner).toBe(owner);
|
|
834
830
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -846,12 +842,12 @@ export function lockProviderTestSuite(settings) {
|
|
|
846
842
|
event_ = event;
|
|
847
843
|
});
|
|
848
844
|
await lock.runBlocking(async () => {
|
|
849
|
-
await delay(
|
|
845
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
850
846
|
}, {
|
|
851
847
|
time: TimeSpan.fromMilliseconds(5),
|
|
852
848
|
interval: TimeSpan.fromMilliseconds(5),
|
|
853
849
|
});
|
|
854
|
-
await delay(
|
|
850
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
855
851
|
expect(event_?.fields.key).toBe(key);
|
|
856
852
|
expect(event_?.fields.owner).toBe(owner);
|
|
857
853
|
await unsubscribe();
|
|
@@ -868,12 +864,12 @@ export function lockProviderTestSuite(settings) {
|
|
|
868
864
|
event_ = event;
|
|
869
865
|
});
|
|
870
866
|
await lock.runBlocking(async () => {
|
|
871
|
-
await delay(
|
|
867
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
872
868
|
}, {
|
|
873
869
|
time: TimeSpan.fromMilliseconds(5),
|
|
874
870
|
interval: TimeSpan.fromMilliseconds(5),
|
|
875
871
|
});
|
|
876
|
-
await delay(
|
|
872
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
877
873
|
expect(event_?.fields.key).toBe("a");
|
|
878
874
|
expect(event_?.fields.owner).toBe(owner);
|
|
879
875
|
await unsubscribe();
|
|
@@ -892,9 +888,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
892
888
|
event_ = event;
|
|
893
889
|
});
|
|
894
890
|
await lock.runOrFail(async () => {
|
|
895
|
-
await delay(
|
|
891
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
896
892
|
});
|
|
897
|
-
await delay(
|
|
893
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
898
894
|
expect(event_?.fields.key).toBe("a");
|
|
899
895
|
expect(event_?.fields.owner).toBe(owner);
|
|
900
896
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -912,9 +908,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
912
908
|
event_ = event;
|
|
913
909
|
});
|
|
914
910
|
await lock.runOrFail(async () => {
|
|
915
|
-
await delay(
|
|
911
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
916
912
|
});
|
|
917
|
-
await delay(
|
|
913
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
918
914
|
expect(event_?.fields.key).toBe(key);
|
|
919
915
|
expect(event_?.fields.owner).toBe(owner);
|
|
920
916
|
await unsubscribe();
|
|
@@ -932,9 +928,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
932
928
|
});
|
|
933
929
|
try {
|
|
934
930
|
await lock.runOrFail(async () => {
|
|
935
|
-
await delay(
|
|
931
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
936
932
|
});
|
|
937
|
-
await delay(
|
|
933
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
938
934
|
}
|
|
939
935
|
catch {
|
|
940
936
|
/* Empty */
|
|
@@ -957,7 +953,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
957
953
|
event_ = event;
|
|
958
954
|
});
|
|
959
955
|
await lock.acquire();
|
|
960
|
-
await delay(
|
|
956
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
961
957
|
expect(event_?.fields.key).toBe("a");
|
|
962
958
|
expect(event_?.fields.owner).toBe(owner);
|
|
963
959
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -975,7 +971,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
975
971
|
event_ = event;
|
|
976
972
|
});
|
|
977
973
|
await lock.acquire();
|
|
978
|
-
await delay(
|
|
974
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
979
975
|
expect(event_?.fields.key).toBe("a");
|
|
980
976
|
expect(event_?.fields.owner).toBe(owner);
|
|
981
977
|
await unsubscribe();
|
|
@@ -997,7 +993,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
997
993
|
time: TimeSpan.fromMilliseconds(5),
|
|
998
994
|
interval: TimeSpan.fromMilliseconds(5),
|
|
999
995
|
});
|
|
1000
|
-
await delay(
|
|
996
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1001
997
|
expect(event_?.fields.key).toBe("a");
|
|
1002
998
|
expect(event_?.fields.owner).toBe(owner);
|
|
1003
999
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -1021,7 +1017,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1021
1017
|
time: TimeSpan.fromMilliseconds(5),
|
|
1022
1018
|
interval: TimeSpan.fromMilliseconds(5),
|
|
1023
1019
|
});
|
|
1024
|
-
await delay(
|
|
1020
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1025
1021
|
expect(event_?.fields.key).toBe("a");
|
|
1026
1022
|
expect(event_?.fields.owner).toBe(owner);
|
|
1027
1023
|
await unsubscribe();
|
|
@@ -1040,7 +1036,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1040
1036
|
event_ = event;
|
|
1041
1037
|
});
|
|
1042
1038
|
await lock.acquireOrFail();
|
|
1043
|
-
await delay(
|
|
1039
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1044
1040
|
expect(event_?.fields.key).toBe("a");
|
|
1045
1041
|
expect(event_?.fields.owner).toBe(owner);
|
|
1046
1042
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -1059,7 +1055,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1059
1055
|
});
|
|
1060
1056
|
try {
|
|
1061
1057
|
await lock.acquireOrFail();
|
|
1062
|
-
await delay(
|
|
1058
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1063
1059
|
}
|
|
1064
1060
|
catch {
|
|
1065
1061
|
/* Empty */
|
|
@@ -1082,7 +1078,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1082
1078
|
event_ = event;
|
|
1083
1079
|
});
|
|
1084
1080
|
await lock.release();
|
|
1085
|
-
await delay(
|
|
1081
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1086
1082
|
expect(event_?.fields.key).toBe(key);
|
|
1087
1083
|
expect(event_?.fields.owner).toBe(owner);
|
|
1088
1084
|
await unsubscribe();
|
|
@@ -1103,7 +1099,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1103
1099
|
event_ = event;
|
|
1104
1100
|
});
|
|
1105
1101
|
await lock2.release();
|
|
1106
|
-
await delay(
|
|
1102
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1107
1103
|
expect(event_?.fields.key).toBe(key);
|
|
1108
1104
|
expect(event_?.fields.owner).toBe(owner2);
|
|
1109
1105
|
await unsubscribe();
|
|
@@ -1122,7 +1118,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1122
1118
|
event_ = event;
|
|
1123
1119
|
});
|
|
1124
1120
|
await lock.releaseOrFail();
|
|
1125
|
-
await delay(
|
|
1121
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1126
1122
|
expect(event_?.fields.key).toBe(key);
|
|
1127
1123
|
expect(event_?.fields.owner).toBe(owner);
|
|
1128
1124
|
await unsubscribe();
|
|
@@ -1144,7 +1140,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1144
1140
|
});
|
|
1145
1141
|
try {
|
|
1146
1142
|
await lock2.releaseOrFail();
|
|
1147
|
-
await delay(
|
|
1143
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1148
1144
|
}
|
|
1149
1145
|
catch {
|
|
1150
1146
|
/* Empty */
|
|
@@ -1171,7 +1167,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1171
1167
|
event_ = event;
|
|
1172
1168
|
});
|
|
1173
1169
|
await lock2.forceRelease();
|
|
1174
|
-
await delay(
|
|
1170
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1175
1171
|
expect(event_?.fields.key).toBe(key);
|
|
1176
1172
|
await unsubscribe();
|
|
1177
1173
|
});
|
|
@@ -1189,10 +1185,10 @@ export function lockProviderTestSuite(settings) {
|
|
|
1189
1185
|
const unsubscribe = await lock.subscribe(KeyRefreshedLockEvent, (event) => {
|
|
1190
1186
|
event_ = event;
|
|
1191
1187
|
});
|
|
1192
|
-
await delay(TTL.divide(2));
|
|
1188
|
+
await LazyPromise.delay(TTL.divide(2));
|
|
1193
1189
|
const newTTL = TTL.multiply(2);
|
|
1194
1190
|
await lock.refresh(newTTL);
|
|
1195
|
-
await delay(
|
|
1191
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1196
1192
|
expect(event_?.fields.key).toBe(key);
|
|
1197
1193
|
expect(event_?.fields.owner).toBe(owner);
|
|
1198
1194
|
expect(event_?.fields.ttl.toMilliseconds()).toBe(newTTL.toMilliseconds());
|
|
@@ -1214,10 +1210,10 @@ export function lockProviderTestSuite(settings) {
|
|
|
1214
1210
|
const unsubscribe = await lock1.subscribe(UnownedRefreshLockEvent, (event) => {
|
|
1215
1211
|
event_ = event;
|
|
1216
1212
|
});
|
|
1217
|
-
await delay(TTL.divide(2));
|
|
1213
|
+
await LazyPromise.delay(TTL.divide(2));
|
|
1218
1214
|
const newTTL = TTL.multiply(2);
|
|
1219
1215
|
await lock2.refresh(newTTL);
|
|
1220
|
-
await delay(
|
|
1216
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1221
1217
|
expect(event_?.fields.key).toBe(key);
|
|
1222
1218
|
expect(event_?.fields.owner).toBe(owner2);
|
|
1223
1219
|
await unsubscribe();
|
|
@@ -1236,10 +1232,10 @@ export function lockProviderTestSuite(settings) {
|
|
|
1236
1232
|
const unsubscribe = await lock.subscribe(KeyRefreshedLockEvent, (event) => {
|
|
1237
1233
|
event_ = event;
|
|
1238
1234
|
});
|
|
1239
|
-
await delay(TTL.divide(2));
|
|
1235
|
+
await LazyPromise.delay(TTL.divide(2));
|
|
1240
1236
|
const newTTL = TTL.multiply(2);
|
|
1241
1237
|
await lock.refreshOrFail(newTTL);
|
|
1242
|
-
await delay(
|
|
1238
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1243
1239
|
expect(event_?.fields.key).toBe(key);
|
|
1244
1240
|
expect(event_?.fields.owner).toBe(owner);
|
|
1245
1241
|
expect(event_?.fields.ttl.toMilliseconds()).toBe(newTTL.toMilliseconds());
|
|
@@ -1261,11 +1257,11 @@ export function lockProviderTestSuite(settings) {
|
|
|
1261
1257
|
const unsubscribe = await lock1.subscribe(UnownedRefreshLockEvent, (event) => {
|
|
1262
1258
|
event_ = event;
|
|
1263
1259
|
});
|
|
1264
|
-
await delay(TTL.divide(2));
|
|
1260
|
+
await LazyPromise.delay(TTL.divide(2));
|
|
1265
1261
|
const newTTL = TTL.multiply(2);
|
|
1266
1262
|
try {
|
|
1267
1263
|
await lock2.refreshOrFail(newTTL);
|
|
1268
|
-
await delay(
|
|
1264
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1269
1265
|
}
|
|
1270
1266
|
catch {
|
|
1271
1267
|
/* Empty */
|
|
@@ -1290,9 +1286,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
1290
1286
|
event_ = event;
|
|
1291
1287
|
});
|
|
1292
1288
|
await lock.run(async () => {
|
|
1293
|
-
await delay(
|
|
1289
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1294
1290
|
});
|
|
1295
|
-
await delay(
|
|
1291
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1296
1292
|
expect(event_?.fields.key).toBe("a");
|
|
1297
1293
|
expect(event_?.fields.owner).toBe(owner);
|
|
1298
1294
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -1310,9 +1306,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
1310
1306
|
event_ = event;
|
|
1311
1307
|
});
|
|
1312
1308
|
await lock.run(async () => {
|
|
1313
|
-
await delay(
|
|
1309
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1314
1310
|
});
|
|
1315
|
-
await delay(
|
|
1311
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1316
1312
|
expect(event_?.fields.key).toBe(key);
|
|
1317
1313
|
expect(event_?.fields.owner).toBe(owner);
|
|
1318
1314
|
await unsubscribe();
|
|
@@ -1329,9 +1325,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
1329
1325
|
event_ = event;
|
|
1330
1326
|
});
|
|
1331
1327
|
await lock.run(async () => {
|
|
1332
|
-
await delay(
|
|
1328
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1333
1329
|
});
|
|
1334
|
-
await delay(
|
|
1330
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1335
1331
|
expect(event_?.fields.key).toBe("a");
|
|
1336
1332
|
expect(event_?.fields.owner).toBe(owner);
|
|
1337
1333
|
await unsubscribe();
|
|
@@ -1350,12 +1346,12 @@ export function lockProviderTestSuite(settings) {
|
|
|
1350
1346
|
event_ = event;
|
|
1351
1347
|
});
|
|
1352
1348
|
await lock.runBlocking(async () => {
|
|
1353
|
-
await delay(
|
|
1349
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1354
1350
|
}, {
|
|
1355
1351
|
time: TimeSpan.fromMilliseconds(5),
|
|
1356
1352
|
interval: TimeSpan.fromMilliseconds(5),
|
|
1357
1353
|
});
|
|
1358
|
-
await delay(
|
|
1354
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1359
1355
|
expect(event_?.fields.key).toBe("a");
|
|
1360
1356
|
expect(event_?.fields.owner).toBe(owner);
|
|
1361
1357
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -1373,12 +1369,12 @@ export function lockProviderTestSuite(settings) {
|
|
|
1373
1369
|
event_ = event;
|
|
1374
1370
|
});
|
|
1375
1371
|
await lock.runBlocking(async () => {
|
|
1376
|
-
await delay(
|
|
1372
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1377
1373
|
}, {
|
|
1378
1374
|
time: TimeSpan.fromMilliseconds(5),
|
|
1379
1375
|
interval: TimeSpan.fromMilliseconds(5),
|
|
1380
1376
|
});
|
|
1381
|
-
await delay(
|
|
1377
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1382
1378
|
expect(event_?.fields.key).toBe(key);
|
|
1383
1379
|
expect(event_?.fields.owner).toBe(owner);
|
|
1384
1380
|
await unsubscribe();
|
|
@@ -1395,12 +1391,12 @@ export function lockProviderTestSuite(settings) {
|
|
|
1395
1391
|
event_ = event;
|
|
1396
1392
|
});
|
|
1397
1393
|
await lock.runBlocking(async () => {
|
|
1398
|
-
await delay(
|
|
1394
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1399
1395
|
}, {
|
|
1400
1396
|
time: TimeSpan.fromMilliseconds(5),
|
|
1401
1397
|
interval: TimeSpan.fromMilliseconds(5),
|
|
1402
1398
|
});
|
|
1403
|
-
await delay(
|
|
1399
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1404
1400
|
expect(event_?.fields.key).toBe("a");
|
|
1405
1401
|
expect(event_?.fields.owner).toBe(owner);
|
|
1406
1402
|
await unsubscribe();
|
|
@@ -1419,9 +1415,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
1419
1415
|
event_ = event;
|
|
1420
1416
|
});
|
|
1421
1417
|
await lock.runOrFail(async () => {
|
|
1422
|
-
await delay(
|
|
1418
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1423
1419
|
});
|
|
1424
|
-
await delay(
|
|
1420
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1425
1421
|
expect(event_?.fields.key).toBe("a");
|
|
1426
1422
|
expect(event_?.fields.owner).toBe(owner);
|
|
1427
1423
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -1439,9 +1435,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
1439
1435
|
event_ = event;
|
|
1440
1436
|
});
|
|
1441
1437
|
await lock.runOrFail(async () => {
|
|
1442
|
-
await delay(
|
|
1438
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1443
1439
|
});
|
|
1444
|
-
await delay(
|
|
1440
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1445
1441
|
expect(event_?.fields.key).toBe(key);
|
|
1446
1442
|
expect(event_?.fields.owner).toBe(owner);
|
|
1447
1443
|
await unsubscribe();
|
|
@@ -1459,9 +1455,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
1459
1455
|
});
|
|
1460
1456
|
try {
|
|
1461
1457
|
await lock.runOrFail(async () => {
|
|
1462
|
-
await delay(
|
|
1458
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1463
1459
|
});
|
|
1464
|
-
await delay(
|
|
1460
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1465
1461
|
}
|
|
1466
1462
|
catch {
|
|
1467
1463
|
/* Empty */
|
|
@@ -1484,7 +1480,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1484
1480
|
event_ = event;
|
|
1485
1481
|
});
|
|
1486
1482
|
await lock.acquire();
|
|
1487
|
-
await delay(
|
|
1483
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1488
1484
|
expect(event_?.fields.key).toBe("a");
|
|
1489
1485
|
expect(event_?.fields.owner).toBe(owner);
|
|
1490
1486
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -1502,7 +1498,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1502
1498
|
event_ = event;
|
|
1503
1499
|
});
|
|
1504
1500
|
await lock.acquire();
|
|
1505
|
-
await delay(
|
|
1501
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1506
1502
|
expect(event_?.fields.key).toBe("a");
|
|
1507
1503
|
expect(event_?.fields.owner).toBe(owner);
|
|
1508
1504
|
await unsubscribe();
|
|
@@ -1521,7 +1517,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1521
1517
|
event_ = event;
|
|
1522
1518
|
});
|
|
1523
1519
|
await lock.acquire();
|
|
1524
|
-
await delay(
|
|
1520
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1525
1521
|
expect(event_?.fields.key).toBe("a");
|
|
1526
1522
|
expect(event_?.fields.owner).toBe(owner);
|
|
1527
1523
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -1539,7 +1535,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1539
1535
|
event_ = event;
|
|
1540
1536
|
});
|
|
1541
1537
|
await lock.acquire();
|
|
1542
|
-
await delay(
|
|
1538
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1543
1539
|
expect(event_?.fields.key).toBe("a");
|
|
1544
1540
|
expect(event_?.fields.owner).toBe(owner);
|
|
1545
1541
|
await unsubscribe();
|
|
@@ -1558,7 +1554,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1558
1554
|
event_ = event;
|
|
1559
1555
|
});
|
|
1560
1556
|
await lock.acquireOrFail();
|
|
1561
|
-
await delay(
|
|
1557
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1562
1558
|
expect(event_?.fields.key).toBe("a");
|
|
1563
1559
|
expect(event_?.fields.owner).toBe(owner);
|
|
1564
1560
|
expect(event_?.fields.ttl?.toMilliseconds()).toBe(TTL.toMilliseconds());
|
|
@@ -1577,7 +1573,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1577
1573
|
});
|
|
1578
1574
|
try {
|
|
1579
1575
|
await lock.acquireOrFail();
|
|
1580
|
-
await delay(
|
|
1576
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1581
1577
|
}
|
|
1582
1578
|
catch {
|
|
1583
1579
|
/* Empty */
|
|
@@ -1600,7 +1596,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1600
1596
|
event_ = event;
|
|
1601
1597
|
});
|
|
1602
1598
|
await lock.release();
|
|
1603
|
-
await delay(
|
|
1599
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1604
1600
|
expect(event_?.fields.key).toBe(key);
|
|
1605
1601
|
expect(event_?.fields.owner).toBe(owner);
|
|
1606
1602
|
await unsubscribe();
|
|
@@ -1621,7 +1617,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1621
1617
|
event_ = event;
|
|
1622
1618
|
});
|
|
1623
1619
|
await lock2.release();
|
|
1624
|
-
await delay(
|
|
1620
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1625
1621
|
expect(event_?.fields.key).toBe(key);
|
|
1626
1622
|
expect(event_?.fields.owner).toBe(owner2);
|
|
1627
1623
|
await unsubscribe();
|
|
@@ -1640,7 +1636,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1640
1636
|
event_ = event;
|
|
1641
1637
|
});
|
|
1642
1638
|
await lock.releaseOrFail();
|
|
1643
|
-
await delay(
|
|
1639
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1644
1640
|
expect(event_?.fields.key).toBe(key);
|
|
1645
1641
|
expect(event_?.fields.owner).toBe(owner);
|
|
1646
1642
|
await unsubscribe();
|
|
@@ -1662,7 +1658,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1662
1658
|
});
|
|
1663
1659
|
try {
|
|
1664
1660
|
await lock2.releaseOrFail();
|
|
1665
|
-
await delay(
|
|
1661
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1666
1662
|
}
|
|
1667
1663
|
catch {
|
|
1668
1664
|
/* Empty */
|
|
@@ -1689,7 +1685,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1689
1685
|
event_ = event;
|
|
1690
1686
|
});
|
|
1691
1687
|
await lock2.forceRelease();
|
|
1692
|
-
await delay(
|
|
1688
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1693
1689
|
expect(event_?.fields.key).toBe(key);
|
|
1694
1690
|
await unsubscribe();
|
|
1695
1691
|
});
|
|
@@ -1707,10 +1703,10 @@ export function lockProviderTestSuite(settings) {
|
|
|
1707
1703
|
const unsubscribe = await lockProviderA.subscribe(KeyRefreshedLockEvent, (event) => {
|
|
1708
1704
|
event_ = event;
|
|
1709
1705
|
});
|
|
1710
|
-
await delay(TTL.divide(2));
|
|
1706
|
+
await LazyPromise.delay(TTL.divide(2));
|
|
1711
1707
|
const newTTL = TTL.multiply(2);
|
|
1712
1708
|
await lock.refresh(newTTL);
|
|
1713
|
-
await delay(
|
|
1709
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1714
1710
|
expect(event_?.fields.key).toBe(key);
|
|
1715
1711
|
expect(event_?.fields.owner).toBe(owner);
|
|
1716
1712
|
expect(event_?.fields.ttl.toMilliseconds()).toBe(newTTL.toMilliseconds());
|
|
@@ -1732,10 +1728,10 @@ export function lockProviderTestSuite(settings) {
|
|
|
1732
1728
|
const unsubscribe = await lock1.subscribe(UnownedRefreshLockEvent, (event) => {
|
|
1733
1729
|
event_ = event;
|
|
1734
1730
|
});
|
|
1735
|
-
await delay(TTL.divide(2));
|
|
1731
|
+
await LazyPromise.delay(TTL.divide(2));
|
|
1736
1732
|
const newTTL = TTL.multiply(2);
|
|
1737
1733
|
await lock2.refresh(newTTL);
|
|
1738
|
-
await delay(
|
|
1734
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1739
1735
|
expect(event_?.fields.key).toBe(key);
|
|
1740
1736
|
expect(event_?.fields.owner).toBe(owner2);
|
|
1741
1737
|
await unsubscribe();
|
|
@@ -1754,10 +1750,10 @@ export function lockProviderTestSuite(settings) {
|
|
|
1754
1750
|
const unsubscribe = await lockProviderA.subscribe(KeyRefreshedLockEvent, (event) => {
|
|
1755
1751
|
event_ = event;
|
|
1756
1752
|
});
|
|
1757
|
-
await delay(TTL.divide(2));
|
|
1753
|
+
await LazyPromise.delay(TTL.divide(2));
|
|
1758
1754
|
const newTTL = TTL.multiply(2);
|
|
1759
1755
|
await lock.refreshOrFail(newTTL);
|
|
1760
|
-
await delay(
|
|
1756
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1761
1757
|
expect(event_?.fields.key).toBe(key);
|
|
1762
1758
|
expect(event_?.fields.owner).toBe(owner);
|
|
1763
1759
|
expect(event_?.fields.ttl.toMilliseconds()).toBe(newTTL.toMilliseconds());
|
|
@@ -1779,11 +1775,11 @@ export function lockProviderTestSuite(settings) {
|
|
|
1779
1775
|
const unsubscribe = await lock1.subscribe(UnownedRefreshLockEvent, (event) => {
|
|
1780
1776
|
event_ = event;
|
|
1781
1777
|
});
|
|
1782
|
-
await delay(TTL.divide(2));
|
|
1778
|
+
await LazyPromise.delay(TTL.divide(2));
|
|
1783
1779
|
const newTTL = TTL.multiply(2);
|
|
1784
1780
|
try {
|
|
1785
1781
|
await lock2.refreshOrFail(newTTL);
|
|
1786
|
-
await delay(
|
|
1782
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1787
1783
|
}
|
|
1788
1784
|
catch {
|
|
1789
1785
|
/* Empty */
|
|
@@ -1803,7 +1799,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1803
1799
|
owner: ownerA,
|
|
1804
1800
|
});
|
|
1805
1801
|
const promiseA = lockA.run(async () => {
|
|
1806
|
-
await delay(
|
|
1802
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1807
1803
|
return "a";
|
|
1808
1804
|
});
|
|
1809
1805
|
const ownerB = "c";
|
|
@@ -1811,7 +1807,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1811
1807
|
owner: ownerB,
|
|
1812
1808
|
});
|
|
1813
1809
|
const promiseB = lockB.run(async () => {
|
|
1814
|
-
await delay(
|
|
1810
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1815
1811
|
return "a";
|
|
1816
1812
|
});
|
|
1817
1813
|
const [[resultA, errorA], [resultB, errorB]] = await Promise.all([
|
|
@@ -1830,7 +1826,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1830
1826
|
owner: ownerA,
|
|
1831
1827
|
});
|
|
1832
1828
|
const promiseA = lockA.run(async () => {
|
|
1833
|
-
await delay(
|
|
1829
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1834
1830
|
return "a";
|
|
1835
1831
|
});
|
|
1836
1832
|
const ownerB = "c";
|
|
@@ -1838,7 +1834,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1838
1834
|
owner: ownerB,
|
|
1839
1835
|
});
|
|
1840
1836
|
const promiseB = lockB.runBlocking(async () => {
|
|
1841
|
-
await delay(
|
|
1837
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1842
1838
|
return "a";
|
|
1843
1839
|
}, {
|
|
1844
1840
|
time: TimeSpan.fromMilliseconds(5),
|
|
@@ -1860,7 +1856,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1860
1856
|
owner: ownerA,
|
|
1861
1857
|
});
|
|
1862
1858
|
const promiseA = lockA.runOrFail(async () => {
|
|
1863
|
-
await delay(
|
|
1859
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1864
1860
|
return "a";
|
|
1865
1861
|
});
|
|
1866
1862
|
const ownerB = "c";
|
|
@@ -1868,7 +1864,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
1868
1864
|
owner: ownerB,
|
|
1869
1865
|
});
|
|
1870
1866
|
const promiseB = lockB.runOrFail(async () => {
|
|
1871
|
-
await delay(
|
|
1867
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
1872
1868
|
return "a";
|
|
1873
1869
|
});
|
|
1874
1870
|
const [resultA, resultB] = await Promise.all([promiseA, promiseB]);
|
|
@@ -2013,9 +2009,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
2013
2009
|
ttl,
|
|
2014
2010
|
});
|
|
2015
2011
|
await Promise.all([lockA.acquire(), lockB.acquire()]);
|
|
2016
|
-
await delay(ttl.divide(2));
|
|
2012
|
+
await LazyPromise.delay(ttl.divide(2));
|
|
2017
2013
|
await lockA.refresh();
|
|
2018
|
-
await delay(ttl.divide(2));
|
|
2014
|
+
await LazyPromise.delay(ttl.divide(2));
|
|
2019
2015
|
const resultA = await lockA.isExpired();
|
|
2020
2016
|
const resultB = await lockB.isExpired();
|
|
2021
2017
|
expect(resultA).toBe(false);
|
|
@@ -2034,9 +2030,9 @@ export function lockProviderTestSuite(settings) {
|
|
|
2034
2030
|
ttl,
|
|
2035
2031
|
});
|
|
2036
2032
|
await Promise.all([lockA.acquire(), lockB.acquire()]);
|
|
2037
|
-
await delay(ttl.divide(2));
|
|
2033
|
+
await LazyPromise.delay(ttl.divide(2));
|
|
2038
2034
|
await lockA.refreshOrFail();
|
|
2039
|
-
await delay(ttl.divide(2));
|
|
2035
|
+
await LazyPromise.delay(ttl.divide(2));
|
|
2040
2036
|
const resultA = await lockA.isExpired();
|
|
2041
2037
|
const resultB = await lockB.isExpired();
|
|
2042
2038
|
expect(resultA).toBe(false);
|
|
@@ -2056,7 +2052,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2056
2052
|
result_b = event;
|
|
2057
2053
|
});
|
|
2058
2054
|
await lockA.acquire();
|
|
2059
|
-
await delay(
|
|
2055
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2060
2056
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2061
2057
|
expect(result_b).toBeNull();
|
|
2062
2058
|
});
|
|
@@ -2073,7 +2069,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2073
2069
|
result_b = event;
|
|
2074
2070
|
});
|
|
2075
2071
|
await lockA.acquire();
|
|
2076
|
-
await delay(
|
|
2072
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2077
2073
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2078
2074
|
expect(result_b).toBeNull();
|
|
2079
2075
|
});
|
|
@@ -2093,7 +2089,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2093
2089
|
await lockB.removeListener(KeyAcquiredLockEvent, listenerB);
|
|
2094
2090
|
await lockA.acquire();
|
|
2095
2091
|
await lockB.acquire();
|
|
2096
|
-
await delay(
|
|
2092
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2097
2093
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2098
2094
|
expect(result_b).toBeNull();
|
|
2099
2095
|
});
|
|
@@ -2113,7 +2109,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2113
2109
|
await lockB.removeListenerMany([KeyAcquiredLockEvent], listenerB);
|
|
2114
2110
|
await lockA.acquire();
|
|
2115
2111
|
await lockB.acquire();
|
|
2116
|
-
await delay(
|
|
2112
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2117
2113
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2118
2114
|
expect(result_b).toBeNull();
|
|
2119
2115
|
});
|
|
@@ -2133,7 +2129,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2133
2129
|
await unsubscribe();
|
|
2134
2130
|
await lockA.acquire();
|
|
2135
2131
|
await lockB.acquire();
|
|
2136
|
-
await delay(
|
|
2132
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2137
2133
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2138
2134
|
expect(result_b).toBeNull();
|
|
2139
2135
|
});
|
|
@@ -2153,7 +2149,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2153
2149
|
await unsubscribe();
|
|
2154
2150
|
await lockA.acquire();
|
|
2155
2151
|
await lockB.acquire();
|
|
2156
|
-
await delay(
|
|
2152
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2157
2153
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2158
2154
|
expect(result_b).toBeNull();
|
|
2159
2155
|
});
|
|
@@ -2171,7 +2167,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2171
2167
|
result_b = event;
|
|
2172
2168
|
});
|
|
2173
2169
|
await lockA.acquire();
|
|
2174
|
-
await delay(
|
|
2170
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2175
2171
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2176
2172
|
expect(result_b).toBeNull();
|
|
2177
2173
|
});
|
|
@@ -2187,7 +2183,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2187
2183
|
result_b = event;
|
|
2188
2184
|
});
|
|
2189
2185
|
await lockA.acquire();
|
|
2190
|
-
await delay(
|
|
2186
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2191
2187
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2192
2188
|
expect(result_b).toBeNull();
|
|
2193
2189
|
});
|
|
@@ -2207,7 +2203,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2207
2203
|
await lockProviderB.removeListener(KeyAcquiredLockEvent, listenerB);
|
|
2208
2204
|
await lockA.acquire();
|
|
2209
2205
|
await lockB.acquire();
|
|
2210
|
-
await delay(
|
|
2206
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2211
2207
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2212
2208
|
expect(result_b).toBeNull();
|
|
2213
2209
|
});
|
|
@@ -2227,7 +2223,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2227
2223
|
await lockProviderB.removeListenerMany([KeyAcquiredLockEvent], listenerB);
|
|
2228
2224
|
await lockA.acquire();
|
|
2229
2225
|
await lockB.acquire();
|
|
2230
|
-
await delay(
|
|
2226
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2231
2227
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2232
2228
|
expect(result_b).toBeNull();
|
|
2233
2229
|
});
|
|
@@ -2247,7 +2243,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2247
2243
|
await unsubscribe();
|
|
2248
2244
|
await lockA.acquire();
|
|
2249
2245
|
await lockB.acquire();
|
|
2250
|
-
await delay(
|
|
2246
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2251
2247
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2252
2248
|
expect(result_b).toBeNull();
|
|
2253
2249
|
});
|
|
@@ -2267,7 +2263,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2267
2263
|
await unsubscribe();
|
|
2268
2264
|
await lockA.acquire();
|
|
2269
2265
|
await lockB.acquire();
|
|
2270
|
-
await delay(
|
|
2266
|
+
await LazyPromise.delay(DELAY_TIME);
|
|
2271
2267
|
expect(result_a).toBeInstanceOf(KeyAcquiredLockEvent);
|
|
2272
2268
|
expect(result_b).toBeNull();
|
|
2273
2269
|
});
|
|
@@ -2277,7 +2273,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2277
2273
|
test("Should preserve state", async () => {
|
|
2278
2274
|
const key = "a";
|
|
2279
2275
|
const owner = "b";
|
|
2280
|
-
const lock =
|
|
2276
|
+
const lock = lockProviderA.create(key, {
|
|
2281
2277
|
owner,
|
|
2282
2278
|
});
|
|
2283
2279
|
await lock.acquire();
|
|
@@ -2288,7 +2284,7 @@ export function lockProviderTestSuite(settings) {
|
|
|
2288
2284
|
test("Should preserve owner", async () => {
|
|
2289
2285
|
const key = "a";
|
|
2290
2286
|
const owner = "b";
|
|
2291
|
-
const lock =
|
|
2287
|
+
const lock = lockProviderA.create(key, {
|
|
2292
2288
|
owner,
|
|
2293
2289
|
});
|
|
2294
2290
|
const deserializedLock = serde.deserialize(serde.serialize(lock));
|
|
@@ -2298,16 +2294,16 @@ export function lockProviderTestSuite(settings) {
|
|
|
2298
2294
|
const key = "a";
|
|
2299
2295
|
const owner = "b";
|
|
2300
2296
|
const ttl = TTL.multiply(2);
|
|
2301
|
-
const lock =
|
|
2297
|
+
const lock = lockProviderA.create(key, {
|
|
2302
2298
|
owner,
|
|
2303
2299
|
ttl,
|
|
2304
2300
|
});
|
|
2305
2301
|
await lock.acquire();
|
|
2306
2302
|
const deserializedLock = serde.deserialize(serde.serialize(lock));
|
|
2307
2303
|
const delayTime = TTL;
|
|
2308
|
-
await delay(delayTime);
|
|
2304
|
+
await LazyPromise.delay(delayTime);
|
|
2309
2305
|
expect(await deserializedLock.isLocked()).toBe(true);
|
|
2310
|
-
await delay(delayTime);
|
|
2306
|
+
await LazyPromise.delay(delayTime);
|
|
2311
2307
|
expect(await deserializedLock.isLocked()).toBe(false);
|
|
2312
2308
|
});
|
|
2313
2309
|
});
|