@@ -11,14 +11,18 @@ import (
1111)
1212
1313func TestHttpAuthRandom_OnHttpRequestHeaders (t * testing.T ) {
14- host , done := proxytest .NewHttpFilterHost ( newContext )
15- defer done ()
14+ host := proxytest .NewHostEmulator ( nil , nil , nil , nil , newContext )
15+ defer host . Done ()
1616
17- id := host .InitContext ()
18- host .PutRequestHeaders ( id , [][2 ]string {{"key" , "value" }}) // OnHttpRequestHeaders called
17+ contextID := host .HttpFilterInitContext ()
18+ host .HttpFilterPutRequestHeaders ( contextID , [][2 ]string {{"key" , "value" }}) // OnHttpRequestHeaders called
1919
20- require .True (t , host .IsDispatchCalled (id )) // check if http call is dispatched
21- require .Equal (t , types .ActionPause , host .GetCurrentAction (id )) // check if the current action is pause
20+ attrs := host .GetCalloutAttributesFromContext (contextID )
21+ require .Equal (t , len (attrs ), 1 ) // verify DispatchHttpCall is called
22+
23+ require .Equal (t , "httpbin" , attrs [0 ].Upstream )
24+ require .Equal (t , types .ActionPause ,
25+ host .HttpFilterGetCurrentStreamAction (contextID )) // check if the current action is pause
2226
2327 logs := host .GetLogs (types .LogLevelInfo )
2428 require .GreaterOrEqual (t , len (logs ), 2 )
@@ -28,8 +32,8 @@ func TestHttpAuthRandom_OnHttpRequestHeaders(t *testing.T) {
2832}
2933
3034func TestHttpAuthRandom_OnHttpCallResponse (t * testing.T ) {
31- host , done := proxytest .NewHttpFilterHost ( newContext )
32- defer done ()
35+ host := proxytest .NewHostEmulator ( nil , nil , nil , nil , newContext )
36+ defer host . Done ()
3337
3438 // http://httpbin.org/uuid
3539 headers := [][2 ]string {
@@ -40,20 +44,30 @@ func TestHttpAuthRandom_OnHttpCallResponse(t *testing.T) {
4044 }
4145
4246 // access granted body
43- id := host .InitContext ()
47+ contextID := host .HttpFilterInitContext ()
48+ host .HttpFilterPutRequestHeaders (contextID , nil ) // OnHttpRequestHeaders called
49+
4450 body := []byte (`{"uuid": "7b10a67a-1c67-4199-835b-cbefcd4a63d4"}` )
45- host .PutCalloutResponse (id , headers , nil , body )
46- assert .Nil (t , host .GetSentLocalResponse (id ))
51+ attrs := host .GetCalloutAttributesFromContext (contextID )
52+ require .Equal (t , len (attrs ), 1 ) // verify DispatchHttpCall is called
53+
54+ host .PutCalloutResponse (attrs [0 ].CalloutID , headers , nil , body )
55+ assert .Nil (t , host .HttpFilterGetSentLocalResponse (contextID ))
4756
4857 logs := host .GetLogs (types .LogLevelInfo )
4958 require .Greater (t , len (logs ), 1 )
5059 assert .Equal (t , "access granted" , logs [len (logs )- 1 ])
5160
5261 // access denied body
53- id = host .InitContext ()
62+ contextID = host .HttpFilterInitContext ()
63+ host .HttpFilterPutRequestHeaders (contextID , nil ) // OnHttpRequestHeaders called
64+
5465 body = []byte (`{"uuid": "aaaaaaaa-1c67-4199-835b-cbefcd4a63d4"}` )
55- host .PutCalloutResponse (id , headers , nil , body )
56- localResponse := host .GetSentLocalResponse (id ) // check local responses
66+ attrs = host .GetCalloutAttributesFromContext (contextID )
67+ require .Equal (t , len (attrs ), 1 ) // verify DispatchHttpCall is called
68+
69+ host .PutCalloutResponse (attrs [0 ].CalloutID , headers , nil , body )
70+ localResponse := host .HttpFilterGetSentLocalResponse (contextID ) // check local responses
5771 assert .NotNil (t , localResponse )
5872 logs = host .GetLogs (types .LogLevelInfo )
5973 assert .Equal (t , "access forbidden" , logs [len (logs )- 1 ])
0 commit comments