@@ -93,23 +93,27 @@ func (ds *mockDatastore) PodList(predicate func(backendmetrics.PodMetrics) bool)
9393 return res
9494}
9595
96- type mockPrepareRequestDataPlugin struct {
97- tn plugins.TypedName
98- prepareDataCalled bool
96+ type mockDataProducerPlugin struct {
97+ tn plugins.TypedName
98+ prepareRequestDataCalled bool
9999}
100100
101- func newmockPrepareRequestDataPlugin (name string ) * mockPrepareRequestDataPlugin {
102- return & mockPrepareRequestDataPlugin {
101+ func newmockDataProducerPlugin (name string ) * mockDataProducerPlugin {
102+ return & mockDataProducerPlugin {
103103 tn : plugins.TypedName {Type : "mock-prepare-request-data" , Name : name },
104104 }
105105}
106106
107- func (m * mockPrepareRequestDataPlugin ) TypedName () plugins.TypedName {
107+ func (m * mockDataProducerPlugin ) TypedName () plugins.TypedName {
108108 return m .tn
109109}
110110
111- func (m * mockPrepareRequestDataPlugin ) PrepareData (ctx context.Context , request * schedulingtypes.LLMRequest , pods []schedulingtypes.Pod ) {
112- m .prepareDataCalled = true
111+ func (m * mockDataProducerPlugin ) Produces () map [string ]any {
112+ return map [string ]any {}
113+ }
114+
115+ func (m * mockDataProducerPlugin ) PrepareRequestData (ctx context.Context , request * schedulingtypes.LLMRequest , pods []schedulingtypes.Pod ) {
116+ m .prepareRequestDataCalled = true
113117}
114118
115119type mockAdmitRequestPlugins struct {
@@ -127,9 +131,9 @@ func (m *mockAdmitRequestPlugins) TypedName() plugins.TypedName {
127131 return m .tn
128132}
129133
130- func (m * mockAdmitRequestPlugins ) Admit (ctx context.Context , request * schedulingtypes.LLMRequest , pods []schedulingtypes.Pod ) string {
134+ func (m * mockAdmitRequestPlugins ) AdmitRequest (ctx context.Context , request * schedulingtypes.LLMRequest , pods []schedulingtypes.Pod ) error {
131135 m .admitRequestCalled = true
132- return ""
136+ return nil
133137}
134138
135139func TestDirector_HandleRequest (t * testing.T ) {
@@ -241,19 +245,19 @@ func TestDirector_HandleRequest(t *testing.T) {
241245 }
242246
243247 tests := []struct {
244- name string
245- reqBodyMap map [string ]any
246- mockAdmissionController * mockAdmissionController
247- inferenceObjectiveName string
248- schedulerMockSetup func (m * mockScheduler )
249- wantErrCode string // Expected errutil code string
250- wantReqCtx * handlers.RequestContext // Fields to check in the returned RequestContext
251- wantMutatedBodyModel string // Expected model in reqCtx.Request.Body after PostDispatch
252- targetModelName string // Expected model name after target model resolution
253- prepareDataCalled bool
254- admitRequestCalled bool
255- prepareDataPlugins * mockPrepareRequestDataPlugin
256- admitRequestPlugins * mockAdmitRequestPlugins
248+ name string
249+ reqBodyMap map [string ]any
250+ mockAdmissionController * mockAdmissionController
251+ inferenceObjectiveName string
252+ schedulerMockSetup func (m * mockScheduler )
253+ wantErrCode string // Expected errutil code string
254+ wantReqCtx * handlers.RequestContext // Fields to check in the returned RequestContext
255+ wantMutatedBodyModel string // Expected model in reqCtx.Request.Body after PostDispatch
256+ targetModelName string // Expected model name after target model resolution
257+ prepareRequestDataCalled bool
258+ admitRequestCalled bool
259+ dataProducerPlugins * mockDataProducerPlugin
260+ admitRequestPlugins * mockAdmitRequestPlugins
257261 }{
258262 {
259263 name : "successful completions request" ,
@@ -333,10 +337,10 @@ func TestDirector_HandleRequest(t *testing.T) {
333337 },
334338 TargetEndpoint : "192.168.1.100:8000,192.168.2.100:8000,192.168.4.100:8000" ,
335339 },
336- wantMutatedBodyModel : model ,
337- targetModelName : model ,
338- prepareDataCalled : true ,
339- prepareDataPlugins : newmockPrepareRequestDataPlugin ("test-plugin" ),
340+ wantMutatedBodyModel : model ,
341+ targetModelName : model ,
342+ prepareRequestDataCalled : true ,
343+ dataProducerPlugins : newmockDataProducerPlugin ("test-plugin" ),
340344 },
341345 {
342346 name : "successful chat completions request with admit request plugins" ,
@@ -518,8 +522,8 @@ func TestDirector_HandleRequest(t *testing.T) {
518522 test .schedulerMockSetup (mockSched )
519523 }
520524 config := NewConfig ()
521- if test .prepareDataPlugins != nil {
522- config = config .WithPrepareDataPlugins (test .prepareDataPlugins )
525+ if test .dataProducerPlugins != nil {
526+ config = config .WithDataProducers (test .dataProducerPlugins )
523527 }
524528 if test .admitRequestPlugins != nil {
525529 config = config .WithAdmitRequestPlugins (test .admitRequestPlugins )
@@ -569,10 +573,10 @@ func TestDirector_HandleRequest(t *testing.T) {
569573 "Mutated reqCtx.Request.Body model mismatch" )
570574 }
571575 if test .admitRequestPlugins != nil {
572- assert .True (t , test .admitRequestPlugins .admitRequestCalled , "AdmitRequestPlugins not called" )
576+ assert .True (t , test .admitRequestPlugins .admitRequestCalled , "AdmitRequest not called" )
573577 }
574- if test .prepareDataPlugins != nil {
575- assert .True (t , test .prepareDataPlugins . prepareDataCalled , "PrepareDataPlugins not called" )
578+ if test .dataProducerPlugins != nil {
579+ assert .True (t , test .dataProducerPlugins . prepareRequestDataCalled , "PrepareRequestData not called" )
576580 }
577581 })
578582 }
0 commit comments