mirror of
https://github.com/priyanshujain/sanderling.git
synced 2026-10-02 11:07:10 +00:00
test: cover --generator flag parsing and pickSources gating
This commit is contained in:
1 parent
5b7a71358c
commit
46526f8014
2 files changed
+68
No files matched your search
@@ -93,6 +93,41 @@ func TestParseTestArgs_AVDIsOptional(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestParseTestArgs_GeneratorDefaultsToSeeded(t *testing.T) {
|
||||||
|
options, err := parseTestArgs([]string{"--spec", "s.ts", "--bundle-id", "com.example"}, io.Discard)
|
||||||
|
if err != nil {
|
||||||
|
t.Fatalf("unexpected error: %v", err)
|
||||||
|
}
|
||||||
|
if options.generator != "seeded" {
|
||||||
|
t.Fatalf("generator default: got %q, want seeded", options.generator)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestParseTestArgs_AcceptsLLMGenerator(t *testing.T) {
|
||||||
|
options, err := parseTestArgs([]string{
|
||||||
|
"--spec", "s.ts",
|
||||||
|
"--bundle-id", "com.example",
|
||||||
|
"--generator", "llm",
|
||||||
|
}, io.Discard)
|
||||||
|
if err != nil {
|
||||||
|
t.Fatalf("unexpected error: %v", err)
|
||||||
|
}
|
||||||
|
if options.generator != "llm" {
|
||||||
|
t.Fatalf("generator: got %q, want llm", options.generator)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestParseTestArgs_RejectsUnknownGenerator(t *testing.T) {
|
||||||
|
_, err := parseTestArgs([]string{
|
||||||
|
"--spec", "s.ts",
|
||||||
|
"--bundle-id", "com.example",
|
||||||
|
"--generator", "oracle",
|
||||||
|
}, io.Discard)
|
||||||
|
if err == nil || !strings.Contains(err.Error(), "unsupported generator") {
|
||||||
|
t.Fatalf("expected unsupported-generator error, got %v", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func TestParseTestArgs_RejectsUnknownPlatform(t *testing.T) {
|
func TestParseTestArgs_RejectsUnknownPlatform(t *testing.T) {
|
||||||
_, err := parseTestArgs([]string{
|
_, err := parseTestArgs([]string{
|
||||||
"--spec", "s.ts",
|
"--spec", "s.ts",
|
||||||
|
|||||||
@@ -230,6 +230,39 @@ func candidateIndex(candidates []verifier.ActionCandidate, kind verifier.ActionK
|
|||||||
return -1
|
return -1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestPickSourcesSelectsLLMWhenRequested(t *testing.T) {
|
||||||
|
fake := newFakeOpenRouter(t)
|
||||||
|
_, verifierInstance := newLLMSource(t, fake)
|
||||||
|
action, _, err := pickSources(Options{
|
||||||
|
Verifier: verifierInstance,
|
||||||
|
Generator: "llm",
|
||||||
|
Logger: slog.New(slog.NewTextHandler(io.Discard, nil)),
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
t.Fatalf("pickSources: %v", err)
|
||||||
|
}
|
||||||
|
if _, ok := action.(*llmSource); !ok {
|
||||||
|
t.Errorf("action source = %T, want *llmSource for --generator llm", action)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestPickSourcesSeededByDefault(t *testing.T) {
|
||||||
|
fake := newFakeOpenRouter(t)
|
||||||
|
_, verifierInstance := newLLMSource(t, fake)
|
||||||
|
action, _, err := pickSources(Options{
|
||||||
|
Verifier: verifierInstance,
|
||||||
|
Generator: "seeded",
|
||||||
|
Logger: slog.New(slog.NewTextHandler(io.Discard, nil)),
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
t.Fatalf("pickSources: %v", err)
|
||||||
|
}
|
||||||
|
// Even with a generator = llm() config present, the seeded flag wins.
|
||||||
|
if _, ok := action.(gojaSource); !ok {
|
||||||
|
t.Errorf("action source = %T, want gojaSource for --generator seeded", action)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func TestLLMSourceDrivesExecutedActions(t *testing.T) {
|
func TestLLMSourceDrivesExecutedActions(t *testing.T) {
|
||||||
fake := newFakeOpenRouter(t)
|
fake := newFakeOpenRouter(t)
|
||||||
source, verifierInstance := newLLMSource(t, fake)
|
source, verifierInstance := newLLMSource(t, fake)
|
||||||
|
|||||||
Reference in new issue
Block a user