@ -331,10 +331,35 @@ func TestMakePluginResourceRequest(t *testing.T) {
}
}
}
}
require . Equal ( t , resp . Header ( ) . Get ( "Content-Type" ) , "application/json" )
require . Equal ( t , "sandbox" , resp . Header ( ) . Get ( "Content-Security-Policy" ) )
require . Equal ( t , "sandbox" , resp . Header ( ) . Get ( "Content-Security-Policy" ) )
require . Empty ( t , req . Header . Get ( customHeader ) )
require . Empty ( t , req . Header . Get ( customHeader ) )
}
}
func TestMakePluginResourceRequestContentTypeEmpty ( t * testing . T ) {
pluginClient := & fakePluginClient {
statusCode : http . StatusNoContent ,
}
hs := HTTPServer {
Cfg : setting . NewCfg ( ) ,
log : log . New ( ) ,
pluginClient : pluginClient ,
}
req := httptest . NewRequest ( http . MethodGet , "/" , nil )
resp := httptest . NewRecorder ( )
pCtx := backend . PluginContext { }
err := hs . makePluginResourceRequest ( resp , req , pCtx )
require . NoError ( t , err )
for {
if resp . Flushed {
break
}
}
require . Zero ( t , resp . Header ( ) . Get ( "Content-Type" ) )
}
func callGetPluginAsset ( sc * scenarioContext ) {
func callGetPluginAsset ( sc * scenarioContext ) {
sc . fakeReqWithParams ( "GET" , sc . url , map [ string ] string { } ) . exec ( )
sc . fakeReqWithParams ( "GET" , sc . url , map [ string ] string { } ) . exec ( )
}
}
@ -366,6 +391,8 @@ type fakePluginClient struct {
req * backend . CallResourceRequest
req * backend . CallResourceRequest
backend . QueryDataHandlerFunc
backend . QueryDataHandlerFunc
statusCode int
}
}
func ( c * fakePluginClient ) CallResource ( _ context . Context , req * backend . CallResourceRequest , sender backend . CallResourceResponseSender ) error {
func ( c * fakePluginClient ) CallResource ( _ context . Context , req * backend . CallResourceRequest , sender backend . CallResourceResponseSender ) error {
@ -377,8 +404,13 @@ func (c *fakePluginClient) CallResource(_ context.Context, req *backend.CallReso
return err
return err
}
}
statusCode := http . StatusOK
if c . statusCode != 0 {
statusCode = c . statusCode
}
return sender . Send ( & backend . CallResourceResponse {
return sender . Send ( & backend . CallResourceResponse {
Status : http . StatusOK ,
Status : statusCode ,
Headers : make ( map [ string ] [ ] string ) ,
Headers : make ( map [ string ] [ ] string ) ,
Body : bytes ,
Body : bytes ,
} )
} )