public static IUserStream GetUserStream(this IUserSession session) { Func<Task<HttpResponseMessage>> startConnection = () => { var resp = ((TestableUserSession)session).MakeResponse(); return resp; }; return new UserStream(startConnection); } }