Function sharedLockFactoryTestSuite

  • The sharedLockFactoryTestSuite function simplifies the process of testing your custom implementation of ISharedLock with vitest.

    IMPORT_PATH: "@daiso-tech/core/shared-lock/test-utilities"

    Returns void

    import { describe, expect, test, beforeEach } from "vitest";
    import { MemorySharedLockAdapter } from "@daiso-tech/core/shared-lock/memory-shared-lock-adapter";
    import { SharedLockFactory } from "@daiso-tech/core/shared-lock";
    import { EventBus } from "@daiso-tech/core/event-bus";
    import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/memory-event-bus-adapter";
    import { sharedLockFactoryTestSuite } from "@daiso-tech/core/shared-lock/test-utilities";
    import { Serde } from "@daiso-tech/core/serde";
    import { SuperJsonSerdeAdapter } from "@daiso-tech/core/serde/super-json-serde-adapter";
    import type { ISharedLockData } from "@daiso-tech/core/shared-lock/contracts";

    describe("class: SharedLockFactory", () => {
    sharedLockFactoryTestSuite({
    createSharedLockFactory: () => {
    const serde = new Serde(new SuperJsonSerdeAdapter());
    const sharedLockFactory = new SharedLockFactory({
    serde,
    adapter: new MemorySharedLockAdapter(),
    });
    return { sharedLockFactory, serde };
    },
    beforeEach,
    describe,
    expect,
    test,
    serde,
    });
    });