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
|
PluginStates map[string]*PluginState
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *PluginSettings) SetDefaults() {
|
func (s *PluginSettings) SetDefaults(ls LogSettings) {
|
||||||
if s.Enable == nil {
|
if s.Enable == nil {
|
||||||
s.Enable = NewBool(true)
|
s.Enable = NewBool(true)
|
||||||
}
|
}
|
||||||
@@ -2215,7 +2215,8 @@ func (s *PluginSettings) SetDefaults() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if s.PluginStates["com.mattermost.nps"] == nil {
|
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.AnnouncementSettings.SetDefaults()
|
||||||
o.ThemeSettings.SetDefaults()
|
o.ThemeSettings.SetDefaults()
|
||||||
o.ClusterSettings.SetDefaults()
|
o.ClusterSettings.SetDefaults()
|
||||||
o.PluginSettings.SetDefaults()
|
o.PluginSettings.SetDefaults(o.LogSettings)
|
||||||
o.AnalyticsSettings.SetDefaults()
|
o.AnalyticsSettings.SetDefaults()
|
||||||
o.ComplianceSettings.SetDefaults()
|
o.ComplianceSettings.SetDefaults()
|
||||||
o.LocalizationSettings.SetDefaults()
|
o.LocalizationSettings.SetDefaults()
|
||||||
|
|||||||
@@ -128,18 +128,52 @@ func TestConfigDefaultServiceSettingsExperimentalGroupUnreadChannels(t *testing.
|
|||||||
}
|
}
|
||||||
|
|
||||||
func TestConfigDefaultNPSPluginState(t *testing.T) {
|
func TestConfigDefaultNPSPluginState(t *testing.T) {
|
||||||
c1 := Config{}
|
t.Run("should enable NPS plugin by default", func(t *testing.T) {
|
||||||
c1.SetDefaults()
|
c1 := Config{}
|
||||||
|
c1.SetDefaults()
|
||||||
|
|
||||||
if c1.PluginSettings.PluginStates["com.mattermost.nps"].Enable != true {
|
assert.True(t, c1.PluginSettings.PluginStates["com.mattermost.nps"].Enable)
|
||||||
t.Fatal("PluginSettings.PluginStates[\"com.mattermost.nps\"].Enable should default to true")
|
})
|
||||||
}
|
|
||||||
|
|
||||||
c1.PluginSettings.PluginStates["com.mattermost.nps"].Enable = false
|
t.Run("should enable NPS plugin if diagnostics are enabled", func(t *testing.T) {
|
||||||
c1.SetDefaults()
|
c1 := Config{
|
||||||
if c1.PluginSettings.PluginStates["com.mattermost.nps"].Enable != false {
|
LogSettings: LogSettings{
|
||||||
t.Fatal("PluginSettings.PluginStates[\"com.mattermost.nps\"].Enable should remain false")
|
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) {
|
func TestTeamSettingsIsValidSiteNameEmpty(t *testing.T) {
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user