============================================================ DescribeStatement pool tests ============================================================
(t *testing.T)
| 672 | // ============================================================ |
| 673 | |
| 674 | func TestDescribeStatementPool(t *testing.T) { |
| 675 | t.Run("Get returns non-nil", func(t *testing.T) { |
| 676 | stmt := GetDescribeStatement() |
| 677 | if stmt == nil { |
| 678 | t.Fatal("GetDescribeStatement() returned nil") |
| 679 | } |
| 680 | PutDescribeStatement(stmt) |
| 681 | }) |
| 682 | |
| 683 | t.Run("Put nil is safe", func(t *testing.T) { |
| 684 | PutDescribeStatement(nil) |
| 685 | }) |
| 686 | |
| 687 | t.Run("Fields zeroed after Put", func(t *testing.T) { |
| 688 | stmt := GetDescribeStatement() |
| 689 | stmt.TableName = "orders" |
| 690 | |
| 691 | PutDescribeStatement(stmt) |
| 692 | |
| 693 | if stmt.TableName != "" { |
| 694 | t.Errorf("TableName not cleared, got %q", stmt.TableName) |
| 695 | } |
| 696 | }) |
| 697 | |
| 698 | t.Run("Pool roundtrip reuse", func(t *testing.T) { |
| 699 | stmt1 := GetDescribeStatement() |
| 700 | stmt1.TableName = "products" |
| 701 | PutDescribeStatement(stmt1) |
| 702 | |
| 703 | stmt2 := GetDescribeStatement() |
| 704 | if stmt2.TableName != "" { |
| 705 | t.Errorf("Reused statement not clean, TableName=%q", stmt2.TableName) |
| 706 | } |
| 707 | PutDescribeStatement(stmt2) |
| 708 | }) |
| 709 | } |
| 710 | |
| 711 | // ============================================================ |
| 712 | // ReplaceStatement pool tests |
nothing calls this directly
no test coverage detected