MCPcopy
hub / github.com/anomalyco/opencode / fragmentFixture

Function fragmentFixture

packages/core/test/session-runner.test.ts:410–469  ·  view source on GitHub ↗
(kind: FragmentKind, id: string, chunks: readonly string[])

Source from the content-addressed store, hash-verified

408const fragmentID = (kind: FragmentKind, suffix: string) => `${kind === "tool input" ? "call" : kind}-${suffix}`
409
410const fragmentFixture = (kind: FragmentKind, id: string, chunks: readonly string[]): FragmentFixture => {
411 const text = chunks.join("")
412 switch (kind) {
413 case "text": {
414 const partialEvents = [
415 LLMEvent.stepStart({ index: 0 }),
416 LLMEvent.textStart({ id }),
417 ...chunks.map((text) => LLMEvent.textDelta({ id, text })),
418 ]
419 const expectedContent = { type: "text", id, text }
420 return {
421 delta: SessionEvent.Text.Delta,
422 partialEvents,
423 completeEvents: [
424 ...partialEvents,
425 LLMEvent.textEnd({ id }),
426 LLMEvent.stepFinish({ index: 0, reason: "stop" }),
427 LLMEvent.finish({ reason: "stop" }),
428 ],
429 expectedAssistant: { type: "assistant", finish: "stop", content: [expectedContent] },
430 expectedContent,
431 }
432 }
433 case "reasoning": {
434 const partialEvents = [
435 LLMEvent.stepStart({ index: 0 }),
436 LLMEvent.reasoningStart({ id }),
437 ...chunks.map((text) => LLMEvent.reasoningDelta({ id, text })),
438 ]
439 const expectedContent = { type: "reasoning", id, text }
440 return {
441 delta: SessionEvent.Reasoning.Delta,
442 partialEvents,
443 completeEvents: [
444 ...partialEvents,
445 LLMEvent.reasoningEnd({ id }),
446 LLMEvent.stepFinish({ index: 0, reason: "stop" }),
447 LLMEvent.finish({ reason: "stop" }),
448 ],
449 expectedAssistant: { type: "assistant", finish: "stop", content: [expectedContent] },
450 expectedContent,
451 }
452 }
453 case "tool input": {
454 const partialEvents = [
455 LLMEvent.stepStart({ index: 0 }),
456 LLMEvent.toolInputStart({ id, name: "echo" }),
457 ...chunks.map((text) => LLMEvent.toolInputDelta({ id, name: "echo", text })),
458 ]
459 const expectedContent = { type: "tool", id, state: { status: "pending", input: text } }
460 return {
461 delta: SessionEvent.Tool.Input.Delta,
462 partialEvents,
463 completeEvents: [...partialEvents, LLMEvent.toolInputEnd({ id, name: "echo" })],
464 expectedAssistant: { type: "assistant", content: [expectedContent] },
465 expectedContent,
466 }
467 }

Callers 4

verifyEphemeralDeltasFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected