Merge pull request #91083 from KobayashiD27/Add-test-to-scheduler-apis-config-types-test

Add test case in scheduler/apis/config/types_test.go to improve the t…
This commit is contained in:
Kubernetes Prow Robot 2020-05-15 23:01:49 -07:00 committed by GitHub
commit 738e557f2c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -22,6 +22,67 @@ import (
"github.com/google/go-cmp/cmp"
)
func TestPluginsAppend(t *testing.T) {
tests := []struct {
name string
customPlugins *Plugins
defaultPlugins *Plugins
expectedPlugins *Plugins
}{
{
name: "AppendPlugin",
customPlugins: &Plugins{
Filter: &PluginSet{
Enabled: []Plugin{
{Name: "CustomPlugin"},
},
},
},
defaultPlugins: &Plugins{
Filter: &PluginSet{
Enabled: []Plugin{
{Name: "DefaultPlugin1"},
{Name: "DefaultPlugin2"},
},
},
},
expectedPlugins: &Plugins{
QueueSort: &PluginSet{},
PreFilter: &PluginSet{},
Filter: &PluginSet{
Enabled: []Plugin{
{Name: "DefaultPlugin1"},
{Name: "DefaultPlugin2"},
{Name: "CustomPlugin"},
},
},
PreScore: &PluginSet{},
Score: &PluginSet{},
Reserve: &PluginSet{},
Permit: &PluginSet{},
PreBind: &PluginSet{},
Bind: &PluginSet{},
PostBind: &PluginSet{},
Unreserve: &PluginSet{},
},
},
{
name: "AppendNilPlugin",
customPlugins: nil,
defaultPlugins: &Plugins{},
expectedPlugins: &Plugins{},
},
}
for _, test := range tests {
t.Run(test.name, func(t *testing.T) {
test.defaultPlugins.Append(test.customPlugins)
if d := cmp.Diff(test.expectedPlugins, test.defaultPlugins); d != "" {
t.Fatalf("plugins mismatch (-want +got):\n%s", d)
}
})
}
}
func TestPluginsApply(t *testing.T) {
tests := []struct {
name string
@ -189,6 +250,36 @@ func TestPluginsApply(t *testing.T) {
Unreserve: &PluginSet{Enabled: []Plugin{}},
},
},
{
name: "ApplyNilCustomPlugin",
customPlugins: nil,
defaultPlugins: &Plugins{
Filter: &PluginSet{
Enabled: []Plugin{
{Name: "DefaultPlugin1"},
{Name: "DefaultPlugin2"},
},
},
},
expectedPlugins: &Plugins{
QueueSort: nil,
PreFilter: nil,
Filter: &PluginSet{
Enabled: []Plugin{
{Name: "DefaultPlugin1"},
{Name: "DefaultPlugin2"},
},
},
PreScore: nil,
Score: nil,
Reserve: nil,
Permit: nil,
PreBind: nil,
Bind: nil,
PostBind: nil,
Unreserve: nil,
},
},
}
for _, test := range tests {