(t *testing.T)
| 321 | } |
| 322 | |
| 323 | func TestQueryDatabase_Ambiguous(t *testing.T) { |
| 324 | databases := []map[string]any{ |
| 325 | makeDatabase("instances/prod-pg/databases/employee_db", "instances/prod-pg", "projects/hr-system", "POSTGRES", "ds-admin-1"), |
| 326 | makeDatabase("instances/staging-mysql/databases/employee_db", "instances/staging-mysql", "projects/hr-system", "MYSQL", "ds-admin-2"), |
| 327 | } |
| 328 | s := newTestServerWithMock(t, mockListDatabases(databases)) |
| 329 | |
| 330 | resolved, err := s.resolveDatabase(testContext(), "employee_db", "", "") |
| 331 | require.NoError(t, err) |
| 332 | require.True(t, resolved.ambiguous) |
| 333 | require.Len(t, resolved.candidates, 2) |
| 334 | require.Equal(t, "instances/prod-pg/databases/employee_db", resolved.candidates[0].Database) |
| 335 | require.Equal(t, "POSTGRES", resolved.candidates[0].Engine) |
| 336 | require.Equal(t, "instances/staging-mysql/databases/employee_db", resolved.candidates[1].Database) |
| 337 | require.Equal(t, "MYSQL", resolved.candidates[1].Engine) |
| 338 | } |
| 339 | |
| 340 | func TestQueryDatabase_AmbiguousWithInstance(t *testing.T) { |
| 341 | databases := []map[string]any{ |
nothing calls this directly
no test coverage detected