Stabilize application config support
This commit is contained in:
@@ -322,6 +322,22 @@ func TestParseRunArgsMissingExplicitConfigReturnsError(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestParseRunArgsInvalidExplicitConfigReturnsError(t *testing.T) {
|
||||
configPath := writeAppConfigFile(t, "api_key: secret\n")
|
||||
|
||||
_, err := parseRunArgs([]string{
|
||||
"--config", configPath,
|
||||
"--prompt", "p",
|
||||
"--input", "a=b",
|
||||
})
|
||||
if err == nil {
|
||||
t.Fatal("expected invalid explicit config error")
|
||||
}
|
||||
if !strings.Contains(err.Error(), "application config error") {
|
||||
t.Fatalf("expected application config context, got %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestResolveAppSettingsMissingImplicitConfigDoesNotError(t *testing.T) {
|
||||
fs := flag.NewFlagSet("test", flag.ContinueOnError)
|
||||
settings, err := resolveAppSettings(fs, filepath.Join(t.TempDir(), "missing.yml"), appconfig.CLIOverrides{})
|
||||
|
||||
@@ -49,6 +49,18 @@ func TestLoadConfigInvalidYAMLReturnsError(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestLoadConfigInvalidYAMLImplicitPathReturnsError(t *testing.T) {
|
||||
path := writeConfigFile(t, "config.yml", "prompt_dir: [")
|
||||
|
||||
_, err := LoadConfig(path, false)
|
||||
if err == nil {
|
||||
t.Fatal("expected invalid YAML error")
|
||||
}
|
||||
if !errors.Is(err, ErrInvalidConfigYAML) {
|
||||
t.Fatalf("expected ErrInvalidConfigYAML, got %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestLoadConfigUnknownFieldReturnsError(t *testing.T) {
|
||||
path := writeConfigFile(t, "config.yml", "unknown_field: true\n")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user