2025-05-31 18:41:00 +00:00
|
|
|
import { describe, expect, test } from "bun:test"
|
|
|
|
|
import { App } from "../../src/app/app"
|
2025-05-31 21:12:16 +00:00
|
|
|
import { GlobTool } from "../../src/tool/glob"
|
2025-05-31 18:41:00 +00:00
|
|
|
import { ls } from "../../src/tool/ls"
|
2025-05-21 14:30:39 +00:00
|
|
|
|
|
|
|
|
describe("tool.glob", () => {
|
|
|
|
|
test("truncate", async () => {
|
|
|
|
|
await App.provide({ directory: process.cwd() }, async () => {
|
2025-05-31 21:12:16 +00:00
|
|
|
let result = await GlobTool.execute(
|
2025-05-21 14:30:39 +00:00
|
|
|
{
|
|
|
|
|
pattern: "./node_modules/**/*",
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
toolCallId: "test",
|
|
|
|
|
messages: [],
|
|
|
|
|
},
|
2025-05-31 18:41:00 +00:00
|
|
|
)
|
|
|
|
|
expect(result.metadata.truncated).toBe(true)
|
|
|
|
|
})
|
|
|
|
|
})
|
2025-05-21 14:30:39 +00:00
|
|
|
test("basic", async () => {
|
|
|
|
|
await App.provide({ directory: process.cwd() }, async () => {
|
2025-05-31 21:12:16 +00:00
|
|
|
let result = await GlobTool.execute(
|
2025-05-21 14:30:39 +00:00
|
|
|
{
|
|
|
|
|
pattern: "*.json",
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
toolCallId: "test",
|
|
|
|
|
messages: [],
|
|
|
|
|
},
|
2025-05-31 18:41:00 +00:00
|
|
|
)
|
2025-05-21 14:30:39 +00:00
|
|
|
expect(result.metadata).toMatchObject({
|
|
|
|
|
truncated: false,
|
2025-05-26 18:18:07 +00:00
|
|
|
count: 2,
|
2025-05-31 18:41:00 +00:00
|
|
|
})
|
|
|
|
|
})
|
|
|
|
|
})
|
|
|
|
|
})
|
2025-05-26 18:09:17 +00:00
|
|
|
|
|
|
|
|
describe("tool.ls", () => {
|
|
|
|
|
test("basic", async () => {
|
|
|
|
|
const result = await App.provide({ directory: process.cwd() }, async () => {
|
|
|
|
|
return await ls.execute(
|
|
|
|
|
{
|
2025-05-26 18:18:07 +00:00
|
|
|
path: "./example",
|
2025-05-26 18:09:17 +00:00
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
toolCallId: "test",
|
|
|
|
|
messages: [],
|
|
|
|
|
},
|
2025-05-31 18:41:00 +00:00
|
|
|
)
|
|
|
|
|
})
|
|
|
|
|
expect(result.output).toMatchSnapshot()
|
|
|
|
|
})
|
|
|
|
|
})
|