I have following web Api controller method.
When I run this code through web, HttpContext.Current is never null and give desired value.
HttpContext.Current
never null
All you need is
controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration();
From unit-testing-controllers-in-web-api