test: make unsafe test coercion explicit
Move test coercion out of a hidden global and require each test to import the helper so review tools and runtime scripts can see the unsafe boundary. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
@@ -2,6 +2,7 @@ import { describe, expect, test } from "bun:test"
|
||||
|
||||
import { createOrGetSession } from "./session-creator"
|
||||
import { _resetForTesting, subagentSessions } from "../../features/claude-code-session-state"
|
||||
import { unsafeTestValue } from "../../../test-support/unsafe-test-value"
|
||||
|
||||
describe("call-omo-agent createOrGetSession", () => {
|
||||
test("creates child session without overriding permission and tracks it as subagent session", async () => {
|
||||
@@ -37,12 +38,12 @@ describe("call-omo-agent createOrGetSession", () => {
|
||||
}
|
||||
|
||||
// when
|
||||
const result = await createOrGetSession(testCoerce(args), testCoerce(toolContext), testCoerce(ctx))
|
||||
const result = await createOrGetSession(unsafeTestValue(args), unsafeTestValue(toolContext), unsafeTestValue(ctx))
|
||||
|
||||
// then
|
||||
expect(result).toEqual({ sessionID: "ses_child", isNew: true })
|
||||
expect(createCalls).toHaveLength(1)
|
||||
const createBody = (testCoerce(createCalls[0]))?.body
|
||||
const createBody = (unsafeTestValue(createCalls[0]))?.body
|
||||
expect(createBody?.parentID).toBe("ses_parent")
|
||||
expect(createBody?.permission).toBeUndefined()
|
||||
expect(subagentSessions.has("ses_child")).toBe(true)
|
||||
|
||||
@@ -2,6 +2,7 @@ import { describe, expect, test } from "bun:test"
|
||||
|
||||
import { resolveOrCreateSessionId } from "./subagent-session-creator"
|
||||
import { _resetForTesting, subagentSessions } from "../../features/claude-code-session-state"
|
||||
import { unsafeTestValue } from "../../../test-support/unsafe-test-value"
|
||||
|
||||
describe("call-omo-agent resolveOrCreateSessionId", () => {
|
||||
const originalPlatform = process.platform
|
||||
@@ -19,7 +20,7 @@ describe("call-omo-agent resolveOrCreateSessionId", () => {
|
||||
const { parentDirectory, contextDirectory } = options
|
||||
const parentSessionData = parentDirectory ? { data: { directory: parentDirectory } } : { data: {} }
|
||||
|
||||
const ctx = testCoerce<Parameters<typeof resolveOrCreateSessionId>[0]>({
|
||||
const ctx = unsafeTestValue<Parameters<typeof resolveOrCreateSessionId>[0]>({
|
||||
directory: contextDirectory,
|
||||
client: {
|
||||
session: {
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { unsafeTestValue } from "../../../test-support/unsafe-test-value"
|
||||
const { describe, test, expect, mock } = require("bun:test")
|
||||
|
||||
type ExecuteSync = typeof import("./sync-executor").executeSync
|
||||
@@ -389,7 +390,7 @@ describe("executeSync", () => {
|
||||
}
|
||||
|
||||
//#when
|
||||
await executeSync(args, toolContext, testCoerce(ctx), deps, undefined, spawnReservation)
|
||||
await executeSync(args, toolContext, unsafeTestValue(ctx), deps, undefined, spawnReservation)
|
||||
|
||||
//#then
|
||||
expect(spawnReservation.commit).toHaveBeenCalledTimes(1)
|
||||
|
||||
Reference in New Issue
Block a user