Skip to content

Commit ac2700f

Browse files
committed
Restore the isogit module after the boot test
The throw mock stayed installed for every later file in the same process.
1 parent 2420b76 commit ac2700f

2 files changed

Lines changed: 37 additions & 19 deletions

File tree

‎src/config/settings.ts‎

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -638,9 +638,8 @@ const providerSettingsSchema = memoSchema(() =>
638638
.narrow(
639639
(provider, ctx) =>
640640
provider.defaultReasoningEffort === undefined ||
641-
provider.reasoningEfforts?.includes(
642-
provider.defaultReasoningEffort,
643-
) === true ||
641+
provider.reasoningEfforts?.includes(provider.defaultReasoningEffort) ===
642+
true ||
644643
ctx.reject("a default reasoning effort from the enabled levels"),
645644
),
646645
);

‎src/session/isogit-boot.test.ts‎

Lines changed: 35 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,51 @@
11
import { mkdtemp, rm } from "node:fs/promises";
22
import { tmpdir } from "node:os";
33
import { join } from "node:path";
4-
import { expect, mock, test } from "bun:test";
4+
import { expect, test } from "bun:test";
55

6-
let nodeEvaluated = false;
6+
import { withMockedModuleDuring } from "../../testkit/mock-module.js";
77

8-
mock.module("@intx/storage-isogit/node", () => {
9-
nodeEvaluated = true;
10-
return {
11-
createIsogitStore: async () => {
12-
throw new Error("session open reached isogit");
13-
},
14-
};
15-
});
8+
const isogitNode = import.meta.resolve("@intx/storage-isogit/node");
169

1710
test("importing the session store does not construct isogit storage", async () => {
18-
await import("./optimized-context-store.js");
19-
expect(nodeEvaluated).toBe(false);
11+
let loads = 0;
12+
await withMockedModuleDuring(
13+
isogitNode,
14+
() => {
15+
loads += 1;
16+
return {
17+
createIsogitStore: async () => {
18+
throw new Error("session open reached isogit");
19+
},
20+
};
21+
},
22+
async () => {
23+
const before = loads;
24+
await import("./optimized-context-store.js");
25+
expect(loads).toBe(before);
26+
},
27+
);
2028
});
2129

2230
test("opening a session constructs isogit storage", async () => {
23-
const { createSessionStores } = await import("./optimized-context-store.js");
2431
const dir = await mkdtemp(join(tmpdir(), "isogit-boot-"));
2532
try {
26-
await expect(createSessionStores(dir)).rejects.toThrow(
27-
"session open reached isogit",
33+
await withMockedModuleDuring(
34+
isogitNode,
35+
() => ({
36+
createIsogitStore: async () => {
37+
throw new Error("session open reached isogit");
38+
},
39+
}),
40+
async () => {
41+
const { createSessionStores } = await import(
42+
"./optimized-context-store.js"
43+
);
44+
await expect(createSessionStores(dir)).rejects.toThrow(
45+
"session open reached isogit",
46+
);
47+
},
2848
);
29-
expect(nodeEvaluated).toBe(true);
3049
} finally {
3150
await rm(dir, { recursive: true, force: true });
3251
}

0 commit comments

Comments
 (0)