Skip to content

Commit cda15c5

Browse files
committed
adds a test for defined mapstructure of field
1 parent 5250669 commit cda15c5

File tree

1 file changed

+21
-2
lines changed

1 file changed

+21
-2
lines changed

utils/config/service_configuration_test.go

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,12 +135,31 @@ func TestErrorFormatting(t *testing.T) {
135135
}
136136

137137
func TestDeepErrorFormatting(t *testing.T) {
138-
cfg := DefaultDeepConfiguration()
139-
err := cfg.Validate()
138+
defaults := DefaultDeepConfiguration()
139+
err := defaults.Validate()
140140
require.Error(t, err)
141141

142142
errortest.AssertError(t, err, commonerrors.ErrInvalid)
143143
assert.Contains(t, err.Error(), "invalid: structure failed validation: (TestConfigDeep->TestConfig->db) [DEEP_CONFIG_DUMMYCONFIG_DB] cannot be blank")
144+
145+
err = os.Setenv("TEST_DEEP_CONFIG_DUMMYCONFIG_DB", "a test db")
146+
require.NoError(t, err)
147+
err = os.Setenv("TEST_DEEP_CONFIG_DUMMYCONFIG_DUMMY_HOST", "a test host")
148+
require.NoError(t, err)
149+
err = os.Setenv("TEST_DEEP_CONFIG_DUMMYCONFIG_PASSWORD", "a test password")
150+
require.NoError(t, err)
151+
err = os.Setenv("TEST_DEEP_CONFIG_DUMMYCONFIG_USER", "a test user")
152+
require.NoError(t, err)
153+
err = os.Setenv("TEST_DEEP_CONFIG_DUMMY_CONFIG_DB", "a test user")
154+
require.NoError(t, err)
155+
156+
t.Run("defined mapstructure", func(t *testing.T) {
157+
configTest2 := &DeepConfig{}
158+
err = LoadFromSystem("test", configTest2, defaults)
159+
160+
errortest.AssertError(t, err, commonerrors.ErrInvalid)
161+
assert.Contains(t, err.Error(), "invalid: structure failed validation: (TestConfigDeep->TestConfig2->dummy_host) [TEST_DEEP_CONFIG_DUMMY_CONFIG_DUMMY_HOST] cannot be blank")
162+
})
144163
}
145164

146165
func TestServiceConfigurationLoad(t *testing.T) {

0 commit comments

Comments
 (0)