Test extractColumns helper
(t *testing.T)
| 535 | |
| 536 | // Test extractColumns helper |
| 537 | func TestExtractColumns_Simple(t *testing.T) { |
| 538 | sql := "SELECT id, name, email FROM users" |
| 539 | astNode := RequireParse(t, sql) |
| 540 | |
| 541 | columns := extractColumns(astNode) |
| 542 | expectedColumns := []string{"id", "name", "email"} |
| 543 | |
| 544 | if len(columns) != len(expectedColumns) { |
| 545 | t.Errorf("Expected %d columns, got %d: %v", len(expectedColumns), len(columns), columns) |
| 546 | } |
| 547 | |
| 548 | colMap := make(map[string]bool) |
| 549 | for _, col := range columns { |
| 550 | colMap[col] = true |
| 551 | } |
| 552 | |
| 553 | for _, expected := range expectedColumns { |
| 554 | if !colMap[expected] { |
| 555 | t.Errorf("Expected column '%s' not found in extracted columns: %v", expected, columns) |
| 556 | } |
| 557 | } |
| 558 | } |
| 559 | |
| 560 | // Test stringSlicesEqual helper |
| 561 | func TestStringSlicesEqual(t *testing.T) { |
nothing calls this directly
no test coverage detected