@@ -13,25 +13,25 @@ func newContext(sess *session, msg *message.Entry) *routeContext {
1313 return & routeContext {session : sess , reqEntry : msg }
1414}
1515
16- func TestRouteContext_Deadline (t * testing.T ) {
16+ func Test_routeContext_Deadline (t * testing.T ) {
1717 c := newContext (nil , nil )
1818 dl , ok := c .Deadline ()
1919 assert .False (t , ok )
2020 assert .Zero (t , dl )
2121}
2222
23- func TestRouteContext_Done (t * testing.T ) {
23+ func Test_routeContext_Done (t * testing.T ) {
2424 c := newContext (nil , nil )
2525 done := c .Done ()
2626 assert .Nil (t , done )
2727}
2828
29- func TestRouteContext_Err (t * testing.T ) {
29+ func Test_routeContext_Err (t * testing.T ) {
3030 c := newContext (nil , nil )
3131 assert .Nil (t , c .Err ())
3232}
3333
34- func TestRouteContext_Value (t * testing.T ) {
34+ func Test_routeContext_Value (t * testing.T ) {
3535 c := newContext (nil , nil )
3636 assert .Nil (t , c .Value ("not found" ))
3737 c .Set ("found" , true )
@@ -40,7 +40,7 @@ func TestRouteContext_Value(t *testing.T) {
4040 assert .Nil (t , c .Value (123 ))
4141}
4242
43- func TestRouteContext_Get (t * testing.T ) {
43+ func Test_routeContext_Get (t * testing.T ) {
4444 c := newContext (nil , nil )
4545 v , ok := c .Get ("not found" )
4646 assert .False (t , ok )
@@ -52,15 +52,15 @@ func TestRouteContext_Get(t *testing.T) {
5252 assert .True (t , v .(bool ))
5353}
5454
55- func TestRouteContext_Set (t * testing.T ) {
55+ func Test_routeContext_Set (t * testing.T ) {
5656 c := newContext (nil , nil )
5757 c .Set ("found" , true )
5858 v , ok := c .storage ["found" ]
5959 assert .True (t , ok )
6060 assert .True (t , v .(bool ))
6161}
6262
63- func TestRouteContext_Remove (t * testing.T ) {
63+ func Test_routeContext_Remove (t * testing.T ) {
6464 c := newContext (nil , nil )
6565 c .Set ("found" , true )
6666 c .Remove ("found" )
@@ -69,7 +69,7 @@ func TestRouteContext_Remove(t *testing.T) {
6969 assert .Nil (t , v )
7070}
7171
72- func TestRouteContext_Bind (t * testing.T ) {
72+ func Test_routeContext_Bind (t * testing.T ) {
7373 t .Run ("when session has codec" , func (t * testing.T ) {
7474 entry := & message.Entry {
7575 ID : 1 ,
@@ -100,14 +100,14 @@ func TestRouteContext_Bind(t *testing.T) {
100100 })
101101}
102102
103- func TestRouteContext_Session (t * testing.T ) {
103+ func Test_routeContext_Session (t * testing.T ) {
104104 sess := newSession (nil , & sessionOption {})
105105
106106 c := newContext (sess , nil )
107107 assert .Equal (t , c .Session (), sess )
108108}
109109
110- func TestRouteContext_SetResponse (t * testing.T ) {
110+ func Test_routeContext_SetResponse (t * testing.T ) {
111111 t .Run ("when session hasn't codec" , func (t * testing.T ) {
112112 entry := & message.Entry {
113113 ID : 1 ,
@@ -153,7 +153,7 @@ func TestRouteContext_SetResponse(t *testing.T) {
153153 })
154154}
155155
156- func TestRouteContext_Send (t * testing.T ) {
156+ func Test_routeContext_Send (t * testing.T ) {
157157 t .Run ("when success" , func (t * testing.T ) {
158158 sess := newSession (nil , & sessionOption {})
159159 ctx := newContext (sess , nil )
@@ -164,7 +164,7 @@ func TestRouteContext_Send(t *testing.T) {
164164 })
165165}
166166
167- func TestRouteContext_SendTo (t * testing.T ) {
167+ func Test_routeContext_SendTo (t * testing.T ) {
168168 t .Run ("when success" , func (t * testing.T ) {
169169 sess1 := newSession (nil , & sessionOption {})
170170 sess2 := newSession (nil , & sessionOption {})
@@ -176,7 +176,7 @@ func TestRouteContext_SendTo(t *testing.T) {
176176 })
177177}
178178
179- func TestRouteContext_reset (t * testing.T ) {
179+ func Test_routeContext_reset (t * testing.T ) {
180180 ctx := newContext (nil , nil )
181181 sess := newSession (nil , & sessionOption {})
182182 entry := & message.Entry {
@@ -190,7 +190,7 @@ func TestRouteContext_reset(t *testing.T) {
190190 assert .Nil (t , ctx .respEntry )
191191}
192192
193- func TestRouteContext_Copy (t * testing.T ) {
193+ func Test_routeContext_Copy (t * testing.T ) {
194194 ctx := newContext (nil , nil )
195195 ctx .SetResponseMessage (& message.Entry {ID : 1 , Data : []byte ("resp origin" )})
196196
@@ -243,7 +243,7 @@ func Test_routeContext_MustSetResponse(t *testing.T) {
243243
244244 c := newContext (sess , entry )
245245 assert .NotPanics (t , func () {
246- c .MustSetResponse (1 , "test" )
246+ assert . Equal ( t , c .MustSetResponse (1 , "test" ), c )
247247 })
248248 })
249249}
@@ -267,3 +267,96 @@ func Test_routeContext_RawResponseData(t *testing.T) {
267267 assert .Nil (t , c .RawResponseData ())
268268 })
269269}
270+
271+ func Test_routeContext_SetSession (t * testing.T ) {
272+ sess := newSession (nil , & sessionOption {})
273+ c := newContext (nil , nil )
274+ c .SetSession (sess )
275+ assert .Equal (t , c .Session (), sess )
276+ }
277+
278+ func Test_routeContext_SetRequest (t * testing.T ) {
279+ t .Run ("when session hasn't codec" , func (t * testing.T ) {
280+ sess := newSession (nil , & sessionOption {})
281+ c := newContext (sess , nil )
282+ err := c .SetRequest (1 , []string {"invalid" , "data" })
283+ assert .Error (t , err )
284+ assert .Nil (t , c .reqEntry )
285+ })
286+ t .Run ("when encode failed" , func (t * testing.T ) {
287+ ctrl := gomock .NewController (t )
288+ defer ctrl .Finish ()
289+
290+ codec := mock .NewMockCodec (ctrl )
291+ codec .EXPECT ().Encode (gomock .Any ()).Return (nil , fmt .Errorf ("some err" ))
292+ sess := newSession (nil , & sessionOption {Codec : codec })
293+
294+ c := newContext (sess , nil )
295+ err := c .SetRequest (1 , "test" )
296+ assert .Error (t , err )
297+ assert .Nil (t , c .reqEntry )
298+ })
299+ t .Run ("when succeed" , func (t * testing.T ) {
300+ ctrl := gomock .NewController (t )
301+ defer ctrl .Finish ()
302+ entry := & message.Entry {
303+ ID : 1 ,
304+ Data : []byte ("test" ),
305+ }
306+ codec := mock .NewMockCodec (ctrl )
307+ codec .EXPECT ().Encode (gomock .Any ()).Return ([]byte ("test" ), nil )
308+ sess := newSession (nil , & sessionOption {Codec : codec })
309+
310+ c := newContext (sess , nil )
311+ err := c .SetRequest (1 , "test" )
312+ assert .NoError (t , err )
313+ assert .Equal (t , c .reqEntry , entry )
314+ })
315+ }
316+
317+ func Test_routeContext_MustSetRequest (t * testing.T ) {
318+ t .Run ("when session hasn't codec" , func (t * testing.T ) {
319+ sess := newSession (nil , & sessionOption {})
320+
321+ c := newContext (sess , nil )
322+ assert .Panics (t , func () {
323+ c .MustSetRequest (1 , []string {"invalid" , "data" })
324+ })
325+ })
326+ t .Run ("when encode failed" , func (t * testing.T ) {
327+ ctrl := gomock .NewController (t )
328+ defer ctrl .Finish ()
329+
330+ codec := mock .NewMockCodec (ctrl )
331+ codec .EXPECT ().Encode (gomock .Any ()).Return (nil , fmt .Errorf ("some err" ))
332+ sess := newSession (nil , & sessionOption {Codec : codec })
333+
334+ c := newContext (sess , nil )
335+ assert .Panics (t , func () {
336+ c .MustSetRequest (1 , "test" )
337+ })
338+ })
339+ t .Run ("when succeed" , func (t * testing.T ) {
340+ ctrl := gomock .NewController (t )
341+ defer ctrl .Finish ()
342+
343+ codec := mock .NewMockCodec (ctrl )
344+ codec .EXPECT ().Encode (gomock .Any ()).Return ([]byte ("test" ), nil )
345+ sess := newSession (nil , & sessionOption {Codec : codec })
346+
347+ c := newContext (sess , nil )
348+ assert .NotPanics (t , func () {
349+ assert .Equal (t , c .MustSetRequest (1 , "test" ), c )
350+ })
351+ })
352+ }
353+
354+ func Test_routeContext_SetRequestMessage (t * testing.T ) {
355+ entry := & message.Entry {
356+ ID : 1 ,
357+ Data : []byte ("test" ),
358+ }
359+ c := NewContext ()
360+ c .SetRequestMessage (entry )
361+ assert .Equal (t , c .reqEntry , entry )
362+ }
0 commit comments