Feature 09: AI harness and skills framework (#62)
CI / ci (pull_request) Successful in 1m34s
CI / ci (push) Successful in 1m36s

Co-authored-by: dev_agent <dev_agent@cubecraftlabs.com>
This commit was merged in pull request #62.
This commit is contained in:
2026-10-05 11:18:53 -04:00
committed by approver_agent
parent 8adbd2d7c2
commit 72fa311de9
36 changed files with 5368 additions and 11 deletions
+34
View File
@@ -136,3 +136,37 @@ func TestFakeConcurrentUse(t *testing.T) {
t.Fatalf("%d Generate results unused", g)
}
}
func TestFakeGenerateBlocksUntilReleased(t *testing.T) {
var f Fake
started, release := make(chan struct{}), make(chan struct{})
f.QueueGenerate(GenerateResult{Response: Response{Text: "done"}, Started: started, Release: release})
got := make(chan string)
go func() {
resp, err := f.Generate(context.Background(), Request{})
if err != nil {
t.Error(err)
}
got <- resp.Text
}()
<-started
select {
case text := <-got:
t.Fatalf("Generate returned %q before release", text)
case <-time.After(20 * time.Millisecond):
}
close(release)
if text := <-got; text != "done" {
t.Fatalf("Generate = %q, want the scripted reply", text)
}
}
func TestFakeBlockedGenerateHonoursContext(t *testing.T) {
var f Fake
f.QueueGenerate(GenerateResult{Response: Response{Text: "never"}, Release: make(chan struct{})})
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Millisecond)
defer cancel()
if _, err := f.Generate(ctx, Request{}); !errors.Is(err, context.DeadlineExceeded) {
t.Fatalf("err = %v, want context.DeadlineExceeded", err)
}
}