github.com/wanliu/go-oauth2-server@v0.0.0-20180817021415-f928fa1580df/test-util/database_test.go (about) 1 package testutil_test 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 "github.com/wanliu/go-oauth2-server/test-util" 8 ) 9 10 var ( 11 testDBName = "go_oauth2_server_database_test" 12 testDBUser = "go_oauth2_server" 13 ) 14 15 func TestCreateTestDatabaseFailsWithBadValues(t *testing.T) { 16 db, err := testutil.CreateTestDatabase("!_@£@$@!±/\\", nil, nil) 17 assert.Error(t, err) 18 assert.Nil(t, db) 19 } 20 21 func TestCreateTestDatabaseWorksWithValidEntry(t *testing.T) { 22 db, err := testutil.CreateTestDatabase("", nil, nil) 23 assert.Nil(t, err) 24 assert.NotNil(t, db) 25 err = db.Close() 26 assert.Nil(t, err) 27 } 28 29 func TestCreateTestDatabaseFailsWithMissingFixtureFile(t *testing.T) { 30 badFixtures := []string{"/badfilename"} 31 db, err := testutil.CreateTestDatabase("", nil, badFixtures) 32 assert.EqualError(t, err, "Error loading file /badfilename: open /badfilename: no such file or directory") 33 assert.Nil(t, db) 34 } 35 36 func TestCreateTestDatabasePostgresFailsWithBadValues(t *testing.T) { 37 db, err := testutil.CreateTestDatabasePostgres("", "", nil, nil) 38 assert.Error(t, err) 39 assert.Nil(t, db) 40 } 41 42 func TestCreateTestDatabasePostgresWorksWithValidEntry(t *testing.T) { 43 db, err := testutil.CreateTestDatabasePostgres(testDBUser, testDBName, nil, nil) 44 assert.NoError(t, err) 45 assert.NotNil(t, db) 46 err = db.Close() 47 assert.Nil(t, err) 48 } 49 50 func TestCreateTestDatabasePostgresFailsWithMissingFixtureFile(t *testing.T) { 51 badFixtures := []string{"/badfilename"} 52 db, err := testutil.CreateTestDatabasePostgres(testDBUser, testDBName, nil, badFixtures) 53 assert.EqualError(t, err, "Error loading file /badfilename: open /badfilename: no such file or directory") 54 assert.Nil(t, db) 55 }