| 291 | } |
| 292 | |
| 293 | func TestResolve_DefaultAliasOverride(t *testing.T) { |
| 294 | home := t.TempDir() |
| 295 | t.Setenv("HOME", home) |
| 296 | |
| 297 | // Create an agent file |
| 298 | agentFile := filepath.Join(t.TempDir(), "custom-agent.yaml") |
| 299 | require.NoError(t, os.WriteFile(agentFile, []byte(`agents: |
| 300 | root: |
| 301 | model: openai/gpt-4o |
| 302 | description: Custom agent |
| 303 | `), 0o644)) |
| 304 | |
| 305 | // Set up alias for "default" |
| 306 | cfg, err := userconfig.Load() |
| 307 | require.NoError(t, err) |
| 308 | require.NoError(t, cfg.SetAlias("default", &userconfig.Alias{Path: agentFile})) |
| 309 | require.NoError(t, cfg.Save()) |
| 310 | |
| 311 | // Resolve with "default" should return the aliased file |
| 312 | source, err := Resolve("default", nil) |
| 313 | require.NoError(t, err) |
| 314 | assert.Equal(t, agentFile, source.Name()) |
| 315 | |
| 316 | // Verify it reads the custom content |
| 317 | data, err := source.Read(t.Context()) |
| 318 | require.NoError(t, err) |
| 319 | assert.Contains(t, string(data), "Custom agent") |
| 320 | } |
| 321 | |
| 322 | func TestResolve_CoderBuiltinAgent(t *testing.T) { |
| 323 | t.Parallel() |