From d14e48cdd939f886df0cf5f5d53c347faa48bf57 Mon Sep 17 00:00:00 2001 From: "n.wagensonner" Date: Fri, 7 Nov 2014 20:16:37 +0100 Subject: [PATCH] Add test to reproduce missing TableName function --- table_test.go | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 table_test.go diff --git a/table_test.go b/table_test.go new file mode 100644 index 00000000..16703a18 --- /dev/null +++ b/table_test.go @@ -0,0 +1,50 @@ +package gorm_test + +import "testing" + +type Example struct { + Id uint64 `gorm:"column:id; primary_key:yes"` +} + +func (e *Example) TableName() string { + return "exampling" +} + +//Test to reproduce invalid/non-existant TableName behaviour +func TestInsertWithTableName(t *testing.T) { + DB.Exec("drop table examples;") + DB.Exec("drop table exampling;") + + exampling := Example{} + + if err := DB.CreateTable(exampling).Error; err != nil { + t.Error(err) + } + + if err := DB.Save(exampling).Error; err != nil { + t.Error(err) + } + + if err := DB.Exec("SELECT count(*) from exampling;").Error; err != nil { + t.Error(err) + } +} + +func TestInsertWithTableNameExplicit(t *testing.T) { + DB.Exec("drop table examples;") + DB.Exec("drop table exampling;") + + exampling := Example{} + + if err := DB.Table("exampling").CreateTable(exampling).Error; err != nil { + t.Error(err) + } + + if err := DB.Table("exampling").Save(exampling).Error; err != nil { + t.Error(err) + } + + if err := DB.Exec("SELECT count(*) from exampling;").Error; err != nil { + t.Error(err) + } +}