Skip to main content
Version: Current

README

@rotorsoft/act-root


@rotorsoft/act-root / act-tck/src

act-tck/src

Examplesโ€‹

Store adapter

import { runStoreTck } from "@rotorsoft/act-tck";
import { MyStore } from "../src/MyStore.js";

runStoreTck({
name: "MyStore",
factory: () => new MyStore({ ... }),
capabilities: { notify: true },
});

Cache adapter

import { runCacheTck } from "@rotorsoft/act-tck";
import { RedisCache } from "../src/RedisCache.js";

runCacheTck({
name: "RedisCache",
factory: () => new RedisCache({ url: process.env.REDIS_URL }),
});

Logger adapter

import { runLoggerTck } from "@rotorsoft/act-tck";
import { MyLogger } from "../src/MyLogger.js";

runLoggerTck({
name: "MyLogger",
factory: () => new MyLogger({ level: "trace" }),
});

Port evolutionโ€‹

When a port interface in libs/act/src/types/ports.ts changes โ€” a new method, a tightened contract, a new optional flag โ€” extend the matching run*Tck here so every adapter is forced to keep up. Gate new optional methods behind a flag in the relevant Capabilities type so existing adapters keep passing until they explicitly opt in.

Type Aliasesโ€‹

Variablesโ€‹

Functionsโ€‹

Referencesโ€‹

Cacheโ€‹

Re-exports Cache


CacheEntryโ€‹

Re-exports CacheEntry


Loggerโ€‹

Re-exports Logger


Storeโ€‹

Re-exports Store


StoreNotificationโ€‹

Re-exports StoreNotification