Rud*_*koŭ 3 unit-testing http stub go
我正在创建一个请求存根,以便将其传递给测试下的功能:
request := httptest.NewRequest("GET", "http://example.com/foo", nil)
Run Code Online (Sandbox Code Playgroud)
问题:我也可以Context通过向request-uuid它添加Value 来为这个请求存根对象吗?
你有request,你可以在传递它之前对它做任何你想做的事情。
使用Request.Context()访问的情况下,使用context.WithValue()以获得新的context.Context与它的键值,并使用Request.WithContext()获得新的http.Request与新的环境:
request := httptest.NewRequest("GET", "http://example.com/foo", nil)
ctx := request.Context()
ctx = context.WithValue(ctx, "request-uuid", "myvalue")
request = request.WithContext(ctx)
// now request's context contains the "request-uuid" key
Run Code Online (Sandbox Code Playgroud)