Download packages/core/test/command.test.ts from SaylorTwift/opencode: direct link, hf CLI and curl.
- Browser
- Download file 1.86 kB
-
https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/core/test/command.test.ts
- Command line
-
hf download hf://SaylorTwift/opencode/packages/core/test/command.test.ts
-
curl -L -o command.test.ts https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/core/test/command.test.ts
1.86 kB
| import { describe, expect } from "bun:test" | |
| import { Effect } from "effect" | |
| import { CommandV2 } from "@opencode-ai/core/command" | |
| import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder" | |
| import { ModelV2 } from "@opencode-ai/core/model" | |
| import { ProviderV2 } from "@opencode-ai/core/provider" | |
| import { testEffect } from "./lib/effect" | |
| const it = testEffect(AppNodeBuilder.build(CommandV2.node)) | |
| describe("CommandV2", () => { | |
| it.effect("applies command transforms and preserves later overrides", () => | |
| Effect.gen(function* () { | |
| const command = yield* CommandV2.Service | |
| yield* command.transform((editor) => { | |
| editor.update("review", (command) => { | |
| command.template = "First" | |
| command.description = "Review code" | |
| }) | |
| editor.update("review", (command) => { | |
| command.template = "Second" | |
| command.model = { | |
| id: ModelV2.ID.make("claude"), | |
| providerID: ProviderV2.ID.make("anthropic"), | |
| variant: ModelV2.VariantID.make("high"), | |
| } | |
| }) | |
| }) | |
| expect(yield* command.get("review")).toEqual( | |
| CommandV2.Info.make({ | |
| name: "review", | |
| template: "Second", | |
| description: "Review code", | |
| model: { | |
| id: ModelV2.ID.make("claude"), | |
| providerID: ProviderV2.ID.make("anthropic"), | |
| variant: ModelV2.VariantID.make("high"), | |
| }, | |
| }), | |
| ) | |
| expect(yield* command.list()).toEqual([ | |
| CommandV2.Info.make({ | |
| name: "review", | |
| template: "Second", | |
| description: "Review code", | |
| model: { | |
| id: ModelV2.ID.make("claude"), | |
| providerID: ProviderV2.ID.make("anthropic"), | |
| variant: ModelV2.VariantID.make("high"), | |
| }, | |
| }), | |
| ]) | |
| }), | |
| ) | |
| }) | |