MM-37787: ThreadAutoFollow must be true to enable CollapsedThreads (#18253)

* MM-37787: ThreadAutoFollow must be true to enable CollapsedThreads

* check if defaults are valid
Этот коммит содержится в:
Ashish Bhate
2021-08-25 19:25:30 +05:30
коммит произвёл GitHub
родитель 4dc54004ec
Коммит 3048f5d435
3 изменённых файлов: 34 добавлений и 0 удалений

Просмотреть файл

@@ -3703,6 +3703,10 @@ func (s *ServiceSettings) isValid() *AppError {
return NewAppError("Config.IsValid", "model.config.is_valid.group_unread_channels.app_error", nil, "", http.StatusBadRequest)
}
if *s.CollapsedThreads != CollapsedThreadsDisabled && !*s.ThreadAutoFollow {
return NewAppError("Config.IsValid", "model.config.is_valid.collapsed_threads.autofollow.app_error", nil, "", http.StatusBadRequest)
}
if *s.CollapsedThreads != CollapsedThreadsDisabled &&
*s.CollapsedThreads != CollapsedThreadsDefaultOn &&
*s.CollapsedThreads != CollapsedThreadsDefaultOff {

Просмотреть файл

@@ -1467,3 +1467,29 @@ func TestConfigExportSettingsIsValid(t *testing.T) {
require.NotNil(t, err)
require.Equal(t, "model.config.is_valid.export.retention_days_too_low.app_error", err.Id)
}
func TestConfigServiceSettingsIsValid(t *testing.T) {
cfg := Config{}
cfg.SetDefaults()
err := cfg.ServiceSettings.isValid()
require.Nil(t, err)
*cfg.ServiceSettings.CollapsedThreads = CollapsedThreadsDisabled
err = cfg.ServiceSettings.isValid()
require.Nil(t, err)
*cfg.ServiceSettings.ThreadAutoFollow = false
err = cfg.ServiceSettings.isValid()
require.Nil(t, err)
*cfg.ServiceSettings.CollapsedThreads = CollapsedThreadsDefaultOff
err = cfg.ServiceSettings.isValid()
require.NotNil(t, err)
require.Equal(t, "model.config.is_valid.collapsed_threads.autofollow.app_error", err.Id)
*cfg.ServiceSettings.CollapsedThreads = CollapsedThreadsDefaultOn
err = cfg.ServiceSettings.isValid()
require.NotNil(t, err)
require.Equal(t, "model.config.is_valid.collapsed_threads.autofollow.app_error", err.Id)
}