import { evaluate, type EvalContext } from "ezvals";
async function runAgent(ctx: EvalContext) {
const result = await supportAgent(String(ctx.input));
ctx.store({ output: result.text, metadata: { tools: result.tools } });
}
evaluate("test_refund", { input: "I want a refund", target: runAgent }, (ctx) => {
assert(String(ctx.output).toLowerCase().includes("refund"), "Should acknowledge the refund");
});
evaluate("test_cancel", { input: "Cancel my order", target: runAgent }, (ctx) => {
assert((ctx.metadata.tools as string[]).includes("cancel_order"), "Should call cancel_order");
});