// The returned shutdown func will delete created resources and scheduler, resources should be those // that will affect the scheduling result, like nodes, pods, etc.. Namespaces should not be // deleted here because it's created together with the apiserver, they should be deleted // simultaneously or we'll have no namespace. // This should only be called when you want to kill the scheduler alone, away from apiserver. // For example, in scheduler integration tests, recreating apiserver is performance consuming, // then shutdown the scheduler and recreate it between each test case is a better approach. func InitTestSchedulerForFrameworkTest(t *testing.T, testCtx *testutils.TestContext, nodeCount int, opts ...scheduler.Option) (*testutils.TestContext, testutils.ShutdownFunc) { … } // NewPlugin returns a plugin factory with specified Plugin. func NewPlugin(plugin framework.Plugin) frameworkruntime.PluginFactory { … } // InitRegistryAndConfig returns registry and plugins config based on give plugins. func InitRegistryAndConfig(t *testing.T, factory func(plugin framework.Plugin) frameworkruntime.PluginFactory, plugins ...framework.Plugin) (frameworkruntime.Registry, schedulerconfig.KubeSchedulerProfile) { … }