Add prompt inspection command
This commit is contained in:
32
internal/format/inspection_test.go
Normal file
32
internal/format/inspection_test.go
Normal file
@@ -0,0 +1,32 @@
|
||||
package format
|
||||
|
||||
import (
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"gitea.maximumdirect.net/eric/promptkit"
|
||||
)
|
||||
|
||||
func TestFormatPromptInspectionPreservesDeclaredOrderAndEmptyValues(t *testing.T) {
|
||||
value := &promptkit.PromptInspection{PromptID: "p", PromptVersion: "1", PromptHash: "hash", Inputs: []promptkit.PromptInputDefinition{{Name: "first", Required: true, ContentType: "text/plain", Description: "first input"}, {Name: "second"}}, OutputContract: promptkit.OutputContract{Format: "text", ValidationMode: promptkit.ValidationNone}}
|
||||
text, err := FormatPromptInspection(value, OutputFormatText)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if !strings.Contains(string(text), "default_profile_id: \ninputs:\n - name: first") || strings.Index(string(text), "name: first") > strings.Index(string(text), "name: second") {
|
||||
t.Fatalf("unexpected text inspection: %s", text)
|
||||
}
|
||||
jsonOutput, err := FormatPromptInspection(value, OutputFormatJSON)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if !strings.HasSuffix(string(jsonOutput), "\n") || !strings.Contains(string(jsonOutput), `"default_profile_id": ""`) {
|
||||
t.Fatalf("unexpected json inspection: %s", jsonOutput)
|
||||
}
|
||||
}
|
||||
|
||||
func TestFormatPromptInspectionRejectsNil(t *testing.T) {
|
||||
if _, err := FormatPromptInspection(nil, OutputFormatText); err == nil {
|
||||
t.Fatal("expected nil inspection error")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user