forked from TrueCloudLab/frostfs-node
Anton Nikiforov
ef222e2487
Add `opts.WithViper`, set opts struct as private. Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
38 lines
1.1 KiB
Go
38 lines
1.1 KiB
Go
package main
|
|
|
|
import (
|
|
"os"
|
|
"path/filepath"
|
|
"testing"
|
|
|
|
"git.frostfs.info/TrueCloudLab/frostfs-node/cmd/frostfs-node/config"
|
|
configtest "git.frostfs.info/TrueCloudLab/frostfs-node/cmd/frostfs-node/config/test"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestValidate(t *testing.T) {
|
|
const exampleConfigPrefix = "../../config/"
|
|
t.Run("examples", func(t *testing.T) {
|
|
p := filepath.Join(exampleConfigPrefix, "example/node")
|
|
configtest.ForEachFileType(p, func(c *config.Config) {
|
|
var err error
|
|
require.NotPanics(t, func() {
|
|
err = validateConfig(c)
|
|
})
|
|
require.NoError(t, err)
|
|
})
|
|
})
|
|
|
|
t.Run("mainnet", func(t *testing.T) {
|
|
os.Clearenv() // ENVs have priority over config files, so we do this in tests
|
|
p := filepath.Join(exampleConfigPrefix, "mainnet/config.yml")
|
|
c := config.New(p, "", config.EnvPrefix)
|
|
require.NoError(t, validateConfig(c))
|
|
})
|
|
t.Run("testnet", func(t *testing.T) {
|
|
os.Clearenv() // ENVs have priority over config files, so we do this in tests
|
|
p := filepath.Join(exampleConfigPrefix, "testnet/config.yml")
|
|
c := config.New(p, "", config.EnvPrefix)
|
|
require.NoError(t, validateConfig(c))
|
|
})
|
|
}
|