MM-16465 Only enable NPS plugin by default if diagnostics are enabled (#11279)
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
c40017b39d
Коммит
73a1bb80f1
@@ -2177,7 +2177,7 @@ type PluginSettings struct {
|
||||
PluginStates map[string]*PluginState
|
||||
}
|
||||
|
||||
func (s *PluginSettings) SetDefaults() {
|
||||
func (s *PluginSettings) SetDefaults(ls LogSettings) {
|
||||
if s.Enable == nil {
|
||||
s.Enable = NewBool(true)
|
||||
}
|
||||
@@ -2215,7 +2215,8 @@ func (s *PluginSettings) SetDefaults() {
|
||||
}
|
||||
|
||||
if s.PluginStates["com.mattermost.nps"] == nil {
|
||||
s.PluginStates["com.mattermost.nps"] = &PluginState{Enable: true}
|
||||
// Enable the NPS plugin by default if diagnostics are enabled
|
||||
s.PluginStates["com.mattermost.nps"] = &PluginState{Enable: ls.EnableDiagnostics == nil || *ls.EnableDiagnostics}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2441,7 +2442,7 @@ func (o *Config) SetDefaults() {
|
||||
o.AnnouncementSettings.SetDefaults()
|
||||
o.ThemeSettings.SetDefaults()
|
||||
o.ClusterSettings.SetDefaults()
|
||||
o.PluginSettings.SetDefaults()
|
||||
o.PluginSettings.SetDefaults(o.LogSettings)
|
||||
o.AnalyticsSettings.SetDefaults()
|
||||
o.ComplianceSettings.SetDefaults()
|
||||
o.LocalizationSettings.SetDefaults()
|
||||
|
||||
@@ -128,18 +128,52 @@ func TestConfigDefaultServiceSettingsExperimentalGroupUnreadChannels(t *testing.
|
||||
}
|
||||
|
||||
func TestConfigDefaultNPSPluginState(t *testing.T) {
|
||||
c1 := Config{}
|
||||
c1.SetDefaults()
|
||||
t.Run("should enable NPS plugin by default", func(t *testing.T) {
|
||||
c1 := Config{}
|
||||
c1.SetDefaults()
|
||||
|
||||
if c1.PluginSettings.PluginStates["com.mattermost.nps"].Enable != true {
|
||||
t.Fatal("PluginSettings.PluginStates[\"com.mattermost.nps\"].Enable should default to true")
|
||||
}
|
||||
assert.True(t, c1.PluginSettings.PluginStates["com.mattermost.nps"].Enable)
|
||||
})
|
||||
|
||||
c1.PluginSettings.PluginStates["com.mattermost.nps"].Enable = false
|
||||
c1.SetDefaults()
|
||||
if c1.PluginSettings.PluginStates["com.mattermost.nps"].Enable != false {
|
||||
t.Fatal("PluginSettings.PluginStates[\"com.mattermost.nps\"].Enable should remain false")
|
||||
}
|
||||
t.Run("should enable NPS plugin if diagnostics are enabled", func(t *testing.T) {
|
||||
c1 := Config{
|
||||
LogSettings: LogSettings{
|
||||
EnableDiagnostics: NewBool(true),
|
||||
},
|
||||
}
|
||||
|
||||
c1.SetDefaults()
|
||||
|
||||
assert.True(t, c1.PluginSettings.PluginStates["com.mattermost.nps"].Enable)
|
||||
})
|
||||
|
||||
t.Run("should not enable NPS plugin if diagnostics are disabled", func(t *testing.T) {
|
||||
c1 := Config{
|
||||
LogSettings: LogSettings{
|
||||
EnableDiagnostics: NewBool(false),
|
||||
},
|
||||
}
|
||||
|
||||
c1.SetDefaults()
|
||||
|
||||
assert.False(t, c1.PluginSettings.PluginStates["com.mattermost.nps"].Enable)
|
||||
})
|
||||
|
||||
t.Run("should not re-enable NPS plugin after it has been disabled", func(t *testing.T) {
|
||||
c1 := Config{
|
||||
PluginSettings: PluginSettings{
|
||||
PluginStates: map[string]*PluginState{
|
||||
"com.mattermost.nps": {
|
||||
Enable: false,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
c1.SetDefaults()
|
||||
|
||||
assert.False(t, c1.PluginSettings.PluginStates["com.mattermost.nps"].Enable)
|
||||
})
|
||||
}
|
||||
|
||||
func TestTeamSettingsIsValidSiteNameEmpty(t *testing.T) {
|
||||
|
||||
Ссылка в новой задаче
Block a user