github.com/adacta-ru/mattermost-server/v5@v5.31.1/config/store_test.go (about) 1 // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. 2 // See LICENSE.txt for license information. 3 4 package config_test 5 6 import ( 7 "io/ioutil" 8 "os" 9 "path/filepath" 10 "testing" 11 12 "github.com/adacta-ru/mattermost-server/v5/config" 13 "github.com/stretchr/testify/require" 14 ) 15 16 func TestNewStore(t *testing.T) { 17 if testing.Short() { 18 t.SkipNow() 19 } 20 sqlSettings := mainHelper.GetSQLSettings() 21 22 tempDir, err := ioutil.TempDir("", "TestNewStore") 23 require.NoError(t, err) 24 25 err = os.Chdir(tempDir) 26 require.NoError(t, err) 27 28 require.NoError(t, os.Mkdir(filepath.Join(tempDir, "config"), 0700)) 29 30 t.Run("database dsn", func(t *testing.T) { 31 ds, err := config.NewStore(getDsn(*sqlSettings.DriverName, *sqlSettings.DataSource), false, nil) 32 require.NoError(t, err) 33 ds.Close() 34 }) 35 36 t.Run("database dsn, watch ignored", func(t *testing.T) { 37 ds, err := config.NewStore(getDsn(*sqlSettings.DriverName, *sqlSettings.DataSource), true, nil) 38 require.NoError(t, err) 39 ds.Close() 40 }) 41 42 t.Run("file dsn", func(t *testing.T) { 43 fs, err := config.NewStore("config.json", false, nil) 44 require.NoError(t, err) 45 fs.Close() 46 }) 47 48 t.Run("file dsn, watch", func(t *testing.T) { 49 fs, err := config.NewStore("config.json", true, nil) 50 require.NoError(t, err) 51 fs.Close() 52 }) 53 }