MCPcopy Create free account
hub / github.com/SeldonIO/seldon-core / TestLoadModel

Function TestLoadModel

scheduler/pkg/server/server_test.go:51–357  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

49}
50
51func TestLoadModel(t *testing.T) {
52 g := NewGomegaWithT(t)
53
54 createTestScheduler := func() (*SchedulerServer, *mockAgentHandler, *coordinator.EventHub) {
55 logger := log.New()
56 logger.SetLevel(log.WarnLevel)
57
58 eventHub, err := coordinator.NewEventHub(logger)
59 g.Expect(err).To(BeNil())
60
61 schedulerStore := store.NewMemoryStore(logger, store.NewLocalSchedulerStore(), eventHub)
62 experimentServer := experiment.NewExperimentServer(logger, eventHub, nil, nil)
63 pipelineServer := pipeline.NewPipelineStore(logger, eventHub, schedulerStore)
64 sync := synchroniser.NewSimpleSynchroniser(time.Duration(10 * time.Millisecond))
65 scheduler := scheduler2.NewSimpleScheduler(
66 logger,
67 schedulerStore,
68 scheduler2.DefaultSchedulerConfig(schedulerStore),
69 sync,
70 eventHub,
71 )
72 modelGwLoadBalancer := util.NewRingLoadBalancer(1)
73 pipelineGwLoadBalancer := util.NewRingLoadBalancer(1)
74 s := NewSchedulerServer(
75 logger, schedulerStore, experimentServer, pipelineServer,
76 scheduler, eventHub, sync, SchedulerServerConfig{}, "", "", modelGwLoadBalancer, pipelineGwLoadBalancer, nil, tls.TLSOptions{})
77 sync.Signals(1)
78 mockAgent := &mockAgentHandler{}
79
80 return s, mockAgent, eventHub
81 }
82
83 smallMemory := uint64(100)
84 largeMemory := uint64(2000)
85
86 type test struct {
87 name string
88 req []*pba.AgentSubscribeRequest
89 model *pb.Model
90 scheduleFailed bool
91 }
92
93 tests := []test{
94 {
95 name: "Simple",
96 req: []*pba.AgentSubscribeRequest{
97 {
98 ServerName: "server1",
99 ReplicaIdx: 0,
100 Shared: true,
101 AvailableMemoryBytes: 1000,
102 ReplicaConfig: &pba.ReplicaConfig{
103 InferenceSvc: "server1",
104 InferenceHttpPort: 1,
105 MemoryBytes: 1000,
106 Capabilities: []string{"sklearn"},
107 },
108 },

Callers

nothing calls this directly

Calls 12

SignalsMethod · 0.95
LoadModelMethod · 0.95
NewSchedulerServerFunction · 0.85
RunMethod · 0.80
ModelStateMethod · 0.80
StoreMethod · 0.80
createTestSchedulerFunction · 0.70
AddServerReplicaMethod · 0.65
GetModelMethod · 0.65
LoadMethod · 0.65
GetLatestMethod · 0.45

Tested by

no test coverage detected