MM-14145: The config store Set will now Save automatically (#10377)
* MM-14145: The config store Set will now Save automatically When UpdateConfig (and configStore.Set) is called in admin.go and config.go, commonStore.Set now takes a store-specific persist function. It uses that persist function to save the configuration automatically. Removed: Now callers do not have to call configStore.Save or app.PersistConfig, and those functions have been removed. Possible downside: this means a "failed to persist config" error can now be thrown during a app.UpdateConfig or commonStore.Set call. But considering application code never really sets a config without saving it (except in the test cases, which were testing that -- see below), it seems fine to group these responsibilities. Also removed: tests for 'set without save'. Since that can not happen anymore, the tests are not needed. * Removed Save completely, cleaned up formatting, joined save test with set tests. * fixed shadowed variable error
Этот коммит содержится в:
коммит произвёл
Jesse Hallam
родитель
06261d32ba
Коммит
8bd182c38f
@@ -615,26 +615,13 @@ func TestFileStoreSave(t *testing.T) {
|
||||
},
|
||||
}
|
||||
|
||||
t.Run("set without save", func(t *testing.T) {
|
||||
t.Run("set with automatic save", func(t *testing.T) {
|
||||
_, err = fs.Set(newCfg)
|
||||
require.NoError(t, err)
|
||||
|
||||
err = fs.Load()
|
||||
require.NoError(t, err)
|
||||
|
||||
assert.Equal(t, "http://minimal", *fs.Get().ServiceSettings.SiteURL)
|
||||
})
|
||||
|
||||
t.Run("set with save", func(t *testing.T) {
|
||||
_, err = fs.Set(newCfg)
|
||||
require.NoError(t, err)
|
||||
|
||||
err = fs.Save()
|
||||
require.NoError(t, err)
|
||||
|
||||
err = fs.Load()
|
||||
require.NoError(t, err)
|
||||
|
||||
assert.Equal(t, "http://new", *fs.Get().ServiceSettings.SiteURL)
|
||||
})
|
||||
}
|
||||
|
||||
Ссылка в новой задаче
Block a user