github.com/selefra/selefra-utils@v0.0.4/pkg/dsn_util/postgresql_test.go (about) 1 package dsn_util 2 3 import ( 4 "github.com/stretchr/testify/assert" 5 "testing" 6 ) 7 8 func TestNewConfigByDSN(t *testing.T) { 9 10 // ok case 11 dsn := "postgres://xx_username:veryhardpasswd@xxx.xxx.xxx.xxx.xxx.com:5432/xxx_database_name" 12 exceptedMosaicPasswdDSN := "postgres://xx_username:*******@xxx.xxx.xxx.xxx.xxx.com:5432/xxx_database_name" 13 exceptedOriginalPasswdDSN := dsn 14 c, err := NewConfigByDSN(dsn) 15 assert.Nil(t, err) 16 assert.Equal(t, exceptedMosaicPasswdDSN, c.ToDSN(true)) 17 assert.Equal(t, exceptedOriginalPasswdDSN, c.ToDSN(false)) 18 19 // bad case 20 _, err = NewConfigByDSN("asdasdasd") 21 assert.NotNil(t, err) 22 23 dsn = "host=127.0.0.1 user=postgres_user password=postgres_user port=25432 dbname=test sslmode=disable" 24 c, err = NewConfigByDSN(dsn) 25 assert.Nil(t, err) 26 t.Log(c) 27 28 }