aboutsummaryrefslogtreecommitdiff
path: root/sqlite3_opt_userauth_test.go
diff options
context:
space:
mode:
authorG.J.R. Timmer <gjr.timmer@gmail.com>2019-08-22 12:11:43 +0200
committerGert-Jan Timmer <gjr.timmer@gmail.com>2019-08-22 14:53:27 +0200
commitb22da71572f0074d6f21d3bbbbfc015d2e0134c8 (patch)
tree5a8eaeed4b2c7771857ef820b61ce96120076753 /sqlite3_opt_userauth_test.go
parentCloses #597 (diff)
downloadgolite-b22da71572f0074d6f21d3bbbbfc015d2e0134c8.tar.gz
golite-b22da71572f0074d6f21d3bbbbfc015d2e0134c8.tar.xz
Fix _auth_* parameter check
Fixes: #724
Diffstat (limited to 'sqlite3_opt_userauth_test.go')
-rw-r--r--sqlite3_opt_userauth_test.go26
1 files changed, 25 insertions, 1 deletions
diff --git a/sqlite3_opt_userauth_test.go b/sqlite3_opt_userauth_test.go
index df65215..543f48e 100644
--- a/sqlite3_opt_userauth_test.go
+++ b/sqlite3_opt_userauth_test.go
@@ -60,7 +60,14 @@ func init() {
file = TempFilename(t)
}
- db, err = sql.Open("sqlite3_with_conn", "file:"+file+fmt.Sprintf("?_auth&_auth_user=%s&_auth_pass=%s", username, password))
+ params := "?_auth"
+ if len(username) > 0 {
+ params = fmt.Sprintf("%s&_auth_user=%s", params, username)
+ }
+ if len(password) > 0 {
+ params = fmt.Sprintf("%s&_auth_pass=%s", params, password)
+ }
+ db, err = sql.Open("sqlite3_with_conn", "file:"+file+params)
if err != nil {
defer os.Remove(file)
return file, nil, nil, err
@@ -164,6 +171,23 @@ func TestUserAuthCreateDatabase(t *testing.T) {
}
}
+func TestUserAuthCreateDatabaseWithoutArgs(t *testing.T) {
+ _, db, c, err := connect(t, "", "", "")
+ if err == nil && c == nil && db == nil {
+ t.Fatal("Should have failed due to missing _auth_* parameters")
+ }
+
+ _, db, c, err = connect(t, "", "", "admin")
+ if err == nil && c == nil && db == nil {
+ t.Fatal("Should have failed due to missing _auth_user parameter")
+ }
+
+ _, db, c, err = connect(t, "", "admin", "")
+ if err == nil && c == nil && db == nil {
+ t.Fatal("Should have failed due to missing _auth_pass parameter")
+ }
+}
+
func TestUserAuthLogin(t *testing.T) {
f1, err := create(t, "admin", "admin")
if err != nil {