diff --git a/prompt-templates/create-circuit-chip1.ts b/prompt-templates/create-circuit-chip1.ts new file mode 100644 index 0000000..2cd24b8 --- /dev/null +++ b/prompt-templates/create-circuit-chip1.ts @@ -0,0 +1,7 @@ +export const createCircuitBoard1Template = ({ + currentCode = "", + availableImports, +}: { currentCode?: string; availableImports?: Record }) => ` +Please create a react component export for a chip circuit board in tscircuit with +the user-provided description. +` diff --git a/tests/board-samples/sample1.ts b/tests/board-samples/sample1.ts new file mode 100644 index 0000000..9fa336e --- /dev/null +++ b/tests/board-samples/sample1.ts @@ -0,0 +1 @@ +export const boardSample1 = "an led with an 0402 footprint" diff --git a/tests/board-samples/sample2.ts b/tests/board-samples/sample2.ts new file mode 100644 index 0000000..6890d34 --- /dev/null +++ b/tests/board-samples/sample2.ts @@ -0,0 +1 @@ +export const boardSample2 = "a blinking led connected to a 555 timer" diff --git a/tests/board-samples/sample3.ts b/tests/board-samples/sample3.ts new file mode 100644 index 0000000..8a25114 --- /dev/null +++ b/tests/board-samples/sample3.ts @@ -0,0 +1,2 @@ +export const boardSample3 = + "a push button that when pressed will turn on a light" diff --git a/tests/board-samples/sample4.ts b/tests/board-samples/sample4.ts new file mode 100644 index 0000000..209bc57 --- /dev/null +++ b/tests/board-samples/sample4.ts @@ -0,0 +1 @@ +export const boardSample4 = "a switch that when flipped spins a motor" diff --git a/tests/module-samples/sample1-na555.ts b/tests/module-samples/sample1-na555.ts new file mode 100644 index 0000000..62a980d --- /dev/null +++ b/tests/module-samples/sample1-na555.ts @@ -0,0 +1 @@ +export const moduleSample1 = "the NA555 timer" diff --git a/tests/prompts/create-circuit-board1/create-circuit-board1-sample1.test.ts b/tests/prompts/create-circuit-board1/create-circuit-board1-sample1.test.ts index 9d283af..8d0f2ac 100644 --- a/tests/prompts/create-circuit-board1/create-circuit-board1-sample1.test.ts +++ b/tests/prompts/create-circuit-board1/create-circuit-board1-sample1.test.ts @@ -1,17 +1,17 @@ import { expect, test } from "bun:test" import { runInitialPrompt } from "lib/code-runner/run-prompt" import { createCircuitBoard1Template } from "prompt-templates/create-circuit-board1" -import { sample1 } from "tests/samples/sample1" +import { boardSample1 } from "tests/board-samples/sample1" test("create-circuit-board1-prompt1", async () => { const systemPrompt = createCircuitBoard1Template({ currentCode: "" }) const { success, circuit } = await runInitialPrompt( - { systemPrompt, userPrompt: sample1 }, + { systemPrompt, userPrompt: boardSample1 }, { model: "claude-3-haiku-20240307", outputType: "board", - } + }, ) expect(success).toBe(true) diff --git a/tests/prompts/create-circuit-module1/create-circuit-module1-sample1.test.ts b/tests/prompts/create-circuit-module1/create-circuit-module1-sample1.test.ts new file mode 100644 index 0000000..3037499 --- /dev/null +++ b/tests/prompts/create-circuit-module1/create-circuit-module1-sample1.test.ts @@ -0,0 +1,22 @@ +import { expect, test } from "bun:test" +import { runInitialPrompt } from "lib/code-runner/run-prompt" +import { createCircuitBoard1Template } from "prompt-templates/create-circuit-board1" +import { moduleSample1 } from "tests/module-samples/sample1-na555" + +test("create-circuit-board1-prompt1", async () => { + const systemPrompt = createCircuitBoard1Template({ currentCode: "" }) + + const { success, circuit } = await runInitialPrompt( + { systemPrompt, userPrompt: boardSample1 }, + { + model: "claude-3-haiku-20240307", + outputType: "board", + }, + ) + + expect(success).toBe(true) + + const led = circuit?.selectOne("led") + + expect(led).toBeDefined() +}) diff --git a/tests/samples/sample1.ts b/tests/samples/sample1.ts deleted file mode 100644 index ee47f9b..0000000 --- a/tests/samples/sample1.ts +++ /dev/null @@ -1 +0,0 @@ -export const sample1 = "an led with an 0402 footprint" diff --git a/tests/samples/sample2.ts b/tests/samples/sample2.ts deleted file mode 100644 index 8fae0d4..0000000 --- a/tests/samples/sample2.ts +++ /dev/null @@ -1 +0,0 @@ -export const sample2 = "a blinking led connected to a 555 timer" diff --git a/tests/samples/sample3.ts b/tests/samples/sample3.ts deleted file mode 100644 index f455f38..0000000 --- a/tests/samples/sample3.ts +++ /dev/null @@ -1 +0,0 @@ -export const sample3 = "a push button that when pressed will turn on a light" diff --git a/tests/samples/sample4.ts b/tests/samples/sample4.ts deleted file mode 100644 index f7dd848..0000000 --- a/tests/samples/sample4.ts +++ /dev/null @@ -1 +0,0 @@ -export const sample4 = "a switch that when flipped spins a motor" diff --git a/tests/smoke/create-circuit-board1-sample1.test.ts b/tests/smoke/create-circuit-board1-sample1.test.ts index 576009b..01e2252 100644 --- a/tests/smoke/create-circuit-board1-sample1.test.ts +++ b/tests/smoke/create-circuit-board1-sample1.test.ts @@ -1,18 +1,18 @@ import { expect, test } from "bun:test" import { runInitialPrompt } from "lib/code-runner/run-prompt" import { createCircuitBoard1Template } from "prompt-templates/create-circuit-board1" -import { sample1 } from "tests/samples/sample1" +import { boardSample1 } from "tests/board-samples/sample1" import { askAboutOutput } from "tests/fixtures/ask-about-output" test("create-circuit-board1-prompt1", async () => { const systemPrompt = createCircuitBoard1Template({ currentCode: "" }) const { success, circuit, codefence } = await runInitialPrompt( - { systemPrompt, userPrompt: sample1 }, + { systemPrompt, userPrompt: boardSample1 }, { model: "claude-3-haiku-20240307", outputType: "board", - } + }, ) expect(success).toBe(true) diff --git a/tests/smoke/create-circuit-board1-with-import.test.tsx b/tests/smoke/create-circuit-board1-with-import.test.tsx index 8c0a453..f9161d5 100644 --- a/tests/smoke/create-circuit-board1-with-import.test.tsx +++ b/tests/smoke/create-circuit-board1-with-import.test.tsx @@ -1,7 +1,7 @@ import { expect, test } from "bun:test" import { runInitialPrompt } from "lib/code-runner/run-prompt" import { createCircuitBoard1Template } from "prompt-templates/create-circuit-board1" -import { sample1 } from "tests/samples/sample1" +import { boardSample1 } from "tests/board-samples/sample1" import { askAboutOutput } from "tests/fixtures/ask-about-output" test("create-circuit-board1-prompt1", async () => { @@ -49,7 +49,7 @@ import MicroUsb from "@tsci/seveibar.micro-usb" preSuppliedImports: { "@tsci/seveibar.micro-usb": MicroUsb, }, - } + }, ) expect(success).toBe(true)