@@ -14,6 +14,8 @@ import (
14
14
15
15
// use docker mysql for test
16
16
var host = flag .String ("host" , "127.0.0.1" , "MySQL host" )
17
+ var schema = flag .String ("schema" , "test" , "MySQL Database" )
18
+ var pwd = flag .String ("pwd" , "" , "MySQL password" )
17
19
18
20
func Test (t * testing.T ) {
19
21
TestingT (t )
@@ -28,10 +30,10 @@ var _ = Suite(&schemaTestSuite{})
28
30
29
31
func (s * schemaTestSuite ) SetUpSuite (c * C ) {
30
32
var err error
31
- s .conn , err = client .Connect (fmt .Sprintf ("%s:%d" , * host , 3306 ), "root" , "" , "test" )
33
+ s .conn , err = client .Connect (fmt .Sprintf ("%s:%d" , * host , 3306 ), "root" , * pwd , * schema )
32
34
c .Assert (err , IsNil )
33
35
34
- s .sqlDB , err = sql .Open ("mysql" , fmt .Sprintf ("root:@%s:3306" , * host ))
36
+ s .sqlDB , err = sql .Open ("mysql" , fmt .Sprintf ("root:%s @%s:3306" , * pwd , * host ))
35
37
c .Assert (err , IsNil )
36
38
}
37
39
@@ -75,12 +77,20 @@ func (s *schemaTestSuite) TestSchema(c *C) {
75
77
_ , err = s .conn .Execute (str )
76
78
c .Assert (err , IsNil )
77
79
78
- ta , err := NewTable (s .conn , "test" , "schema_test" )
80
+ ta , err := NewTable (s .conn , * schema , "schema_test" )
79
81
c .Assert (err , IsNil )
80
82
81
83
c .Assert (ta .Columns , HasLen , 15 )
82
84
c .Assert (ta .Indexes , HasLen , 3 )
83
85
c .Assert (ta .PKColumns , DeepEquals , []int {2 , 0 })
86
+ c .Assert (ta .GetPKIndex (0 ), Equals , ta .Indexes [0 ])
87
+ c .Assert (ta .GetPKIndex (1 ), IsNil )
88
+ c .Assert (ta .GetPKIndex (2 ), Equals , ta .Indexes [0 ])
89
+ c .Assert (ta .GetPKIndex (3 ), IsNil )
90
+ c .Assert (ta .GetPKColumn (0 ), Equals , & ta .Columns [2 ])
91
+ c .Assert (ta .GetPKColumn (1 ), Equals , & ta .Columns [0 ])
92
+ c .Assert (ta .GetPKColumn (2 ), IsNil )
93
+ c .Assert (ta .GetPKColumn (3 ), IsNil )
84
94
c .Assert (ta .Indexes [0 ].Columns , HasLen , 2 )
85
95
c .Assert (ta .Indexes [0 ].Name , Equals , "PRIMARY" )
86
96
c .Assert (ta .Indexes [2 ].Name , Equals , "name_idx" )
@@ -107,7 +117,7 @@ func (s *schemaTestSuite) TestSchema(c *C) {
107
117
c .Assert (ta .Columns [14 ].MaxSize , Equals , uint (12 ))
108
118
c .Assert (ta .Columns [14 ].FixedSize , Equals , uint (0 ))
109
119
110
- taSqlDb , err := NewTableFromSqlDB (s .sqlDB , "test" , "schema_test" )
120
+ taSqlDb , err := NewTableFromSqlDB (s .sqlDB , * schema , "schema_test" )
111
121
c .Assert (err , IsNil )
112
122
113
123
c .Assert (taSqlDb , DeepEquals , ta )
@@ -119,7 +129,7 @@ func (s *schemaTestSuite) TestQuoteSchema(c *C) {
119
129
_ , err := s .conn .Execute (str )
120
130
c .Assert (err , IsNil )
121
131
122
- ta , err := NewTable (s .conn , "test" , "a-b_test" )
132
+ ta , err := NewTable (s .conn , * schema , "a-b_test" )
123
133
c .Assert (err , IsNil )
124
134
125
135
c .Assert (ta .Columns [0 ].Name , Equals , "a.b" )
0 commit comments