@@ -60,7 +60,14 @@ func init() {
60
60
file = TempFilename (t )
61
61
}
62
62
63
- db , err = sql .Open ("sqlite3_with_conn" , "file:" + file + fmt .Sprintf ("?_auth&_auth_user=%s&_auth_pass=%s" , username , password ))
63
+ params := "?_auth"
64
+ if len (username ) > 0 {
65
+ params = fmt .Sprintf ("%s&_auth_user=%s" , params , username )
66
+ }
67
+ if len (password ) > 0 {
68
+ params = fmt .Sprintf ("%s&_auth_pass=%s" , params , password )
69
+ }
70
+ db , err = sql .Open ("sqlite3_with_conn" , "file:" + file + params )
64
71
if err != nil {
65
72
defer os .Remove (file )
66
73
return file , nil , nil , err
@@ -164,6 +171,23 @@ func TestUserAuthCreateDatabase(t *testing.T) {
164
171
}
165
172
}
166
173
174
+ func TestUserAuthCreateDatabaseWithoutArgs (t * testing.T ) {
175
+ _ , db , c , err := connect (t , "" , "" , "" )
176
+ if err == nil && c == nil && db == nil {
177
+ t .Fatal ("Should have failed due to missing _auth_* parameters" )
178
+ }
179
+
180
+ _ , db , c , err = connect (t , "" , "" , "admin" )
181
+ if err == nil && c == nil && db == nil {
182
+ t .Fatal ("Should have failed due to missing _auth_user parameter" )
183
+ }
184
+
185
+ _ , db , c , err = connect (t , "" , "admin" , "" )
186
+ if err == nil && c == nil && db == nil {
187
+ t .Fatal ("Should have failed due to missing _auth_pass parameter" )
188
+ }
189
+ }
190
+
167
191
func TestUserAuthLogin (t * testing.T ) {
168
192
f1 , err := create (t , "admin" , "admin" )
169
193
if err != nil {
0 commit comments