Question:
How to test a class that relies on HttpContext.Current.Cache (or so) in order to work.If you test this in NUnit, for example, there will be no current HttpContext around.
So abstract the access to the Context away and in the property you'll provide another cache if need is.
Answer:
////// Give me the current Httpcontext cache or if you do not have (in Nunit test) /// then get the httpRuntime cache. (it seems it is the same) /// private static Cache MyCache { get { return (HttpContext.Current == null) ? HttpRuntime.Cache : HttpContext.Current.Cache; } }
But here is how HttpContext.Cache is implemented
public Cache Cache { get { return HttpRuntime.Cache; } }
So, calling HttpRuntime.Cache should be fine in all cases.
No comments:
Post a Comment