@@ -1604,6 +1604,40 @@ func TestDeclTypes(t *testing.T) {
1604
1604
}
1605
1605
}
1606
1606
1607
+ func TestColumnTableName (t * testing.T ) {
1608
+ d := SQLiteDriver {}
1609
+ conn , err := d .Open (":memory:" )
1610
+ if err != nil {
1611
+ t .Fatal ("failed to get database connection:" , err )
1612
+ }
1613
+ defer conn .Close ()
1614
+ sqlite3conn := conn .(* SQLiteConn )
1615
+
1616
+ _ , err = sqlite3conn .Exec (`CREATE TABLE foo (name string)` , nil )
1617
+ if err != nil {
1618
+ t .Fatal ("Failed to create table:" , err )
1619
+ }
1620
+ _ , err = sqlite3conn .Exec (`CREATE TABLE bar (name string)` , nil )
1621
+ if err != nil {
1622
+ t .Fatal ("Failed to create table:" , err )
1623
+ }
1624
+
1625
+ stmt , err := sqlite3conn .Prepare (`SELECT * FROM foo JOIN bar ON foo.name = bar.name` )
1626
+ if err != nil {
1627
+ t .Fatal (err )
1628
+ }
1629
+
1630
+ if exp , got := "foo" , stmt .(* SQLiteStmt ).ColumnTableName (0 ); exp != got {
1631
+ t .Fatalf ("Incorrect table name returned expected: %s, got: %s" , exp , got )
1632
+ }
1633
+ if exp , got := "bar" , stmt .(* SQLiteStmt ).ColumnTableName (1 ); exp != got {
1634
+ t .Fatalf ("Incorrect table name returned expected: %s, got: %s" , exp , got )
1635
+ }
1636
+ if exp , got := "" , stmt .(* SQLiteStmt ).ColumnTableName (2 ); exp != got {
1637
+ t .Fatalf ("Incorrect table name returned expected: %s, got: %s" , exp , got )
1638
+ }
1639
+ }
1640
+
1607
1641
func TestPinger (t * testing.T ) {
1608
1642
db , err := sql .Open ("sqlite3" , ":memory:" )
1609
1643
if err != nil {
0 commit comments