mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-24 11:25:50 -06:00
perf(test): reuse setup registry module (#125087)
This commit is contained in:
committed by
GitHub
parent
c4eb9078d9
commit
515fe51d8c
@@ -33,9 +33,7 @@ let resolvePluginSetupRegistry: typeof import("./setup-registry.js").resolvePlug
|
||||
let resolvePluginSetupProviderCore: typeof import("./setup-registry.js").resolvePluginSetupProviderCore;
|
||||
let resolvePluginSetupCliBackend: typeof import("./setup-registry.js").resolvePluginSetupCliBackend;
|
||||
let runPluginSetupConfigMigrations: typeof import("./setup-registry.js").runPluginSetupConfigMigrations;
|
||||
let setPluginSetupRegistryModuleLoaderFactoryForTest:
|
||||
| typeof import("./setup-registry.test-fixtures.js").setPluginSetupRegistryModuleLoaderFactoryForTest
|
||||
| undefined;
|
||||
let setPluginSetupRegistryModuleLoaderFactoryForTest: typeof import("./setup-registry.test-fixtures.js").setPluginSetupRegistryModuleLoaderFactoryForTest;
|
||||
|
||||
function forceNodeRuntimeVersionsForTest(): () => void {
|
||||
const originalVersions = process.versions;
|
||||
@@ -203,7 +201,7 @@ function firstRecordArg(mock: { mock: { calls: ReadonlyArray<ReadonlyArray<unkno
|
||||
}
|
||||
|
||||
afterEach(() => {
|
||||
setPluginSetupRegistryModuleLoaderFactoryForTest?.(undefined);
|
||||
setPluginSetupRegistryModuleLoaderFactoryForTest(undefined);
|
||||
cleanupTrackedTempDirs(tempDirs);
|
||||
});
|
||||
|
||||
@@ -216,11 +214,18 @@ describe("setup-registry module loader", () => {
|
||||
|
||||
beforeAll(async () => {
|
||||
resetRegistryJitiMocks();
|
||||
// The non-isolated plugin shard may cache this owner through a sibling first.
|
||||
// Refresh it once after this file's hoisted mocks, then reuse it for every case.
|
||||
vi.resetModules();
|
||||
const module = await import("./setup-registry.js");
|
||||
const fixtures = await import("./setup-registry.test-fixtures.js");
|
||||
fixtures.setPluginSetupRegistryModuleLoaderFactoryForTest(mocks.createJiti);
|
||||
fixtures.clearPluginSetupRegistryCache();
|
||||
({
|
||||
resolvePluginSetupRegistry,
|
||||
resolvePluginSetupProviderCore,
|
||||
resolvePluginSetupCliBackend,
|
||||
runPluginSetupConfigMigrations,
|
||||
} = await import("./setup-registry.js"));
|
||||
({ clearPluginSetupRegistryCache, setPluginSetupRegistryModuleLoaderFactoryForTest } =
|
||||
await import("./setup-registry.test-fixtures.js"));
|
||||
setPluginSetupRegistryModuleLoaderFactoryForTest(mocks.createJiti);
|
||||
const pluginRoot = makeTempDir();
|
||||
fs.writeFileSync(path.join(pluginRoot, "setup-api.js"), "export default {};\n", "utf-8");
|
||||
mocks.loadPluginManifestRegistry.mockReturnValue({
|
||||
@@ -231,7 +236,7 @@ describe("setup-registry module loader", () => {
|
||||
|
||||
try {
|
||||
withMockedWindowsPlatform(() => {
|
||||
module.resolvePluginSetupRegistry({
|
||||
resolvePluginSetupRegistry({
|
||||
workspaceDir: pluginRoot,
|
||||
env: {},
|
||||
});
|
||||
@@ -247,22 +252,12 @@ describe("setup-registry module loader", () => {
|
||||
filename: mockArg(mocks.createJiti, 0, 0),
|
||||
options: requireRecord(mockArg(mocks.createJiti, 0, 1)),
|
||||
};
|
||||
fixtures.setPluginSetupRegistryModuleLoaderFactoryForTest(undefined);
|
||||
setPluginSetupRegistryModuleLoaderFactoryForTest(undefined);
|
||||
});
|
||||
|
||||
beforeEach(async () => {
|
||||
beforeEach(() => {
|
||||
resetRegistryJitiMocks();
|
||||
vi.resetModules();
|
||||
({
|
||||
resolvePluginSetupRegistry,
|
||||
resolvePluginSetupProviderCore,
|
||||
resolvePluginSetupCliBackend,
|
||||
runPluginSetupConfigMigrations,
|
||||
} = await import("./setup-registry.js"));
|
||||
({ clearPluginSetupRegistryCache, setPluginSetupRegistryModuleLoaderFactoryForTest } =
|
||||
await import("./setup-registry.test-fixtures.js"));
|
||||
setPluginSetupRegistryModuleLoaderFactoryForTest(mocks.createJiti);
|
||||
clearPluginSetupRegistryCache();
|
||||
});
|
||||
|
||||
it("uses the runtime-supported source-transform boundary on Windows for setup-api modules", () => {
|
||||
|
||||
Reference in New Issue
Block a user