package config_test import ( "testing" "github.com/stretchr/testify/assert" "gerrit.wikimedia.org/r/blubber/config" ) func TestVersionConfigYAML(t *testing.T) { cfg, err := config.ReadYAMLConfig([]byte(`--- version: v4 variants: foo: {}`)) assert.Nil(t, err) if assert.NoError(t, err) { assert.Equal(t, "v4", cfg.Version) } } func TestVersionConfigValidation(t *testing.T) { t.Run("supported version", func(t *testing.T) { err := config.Validate(config.VersionConfig{ Version: "v4", }) assert.False(t, config.IsValidationError(err)) }) t.Run("unsupported version", func(t *testing.T) { err := config.Validate(config.VersionConfig{ Version: "vX", }) if assert.True(t, config.IsValidationError(err)) { msg := config.HumanizeValidationError(err) assert.Equal(t, `version: config version "vX" is unsupported`, msg) } }) }