public void TearDown()
{
//this is the worst. Dispose renders the memory cache unusable so have to handle it this way.
foreach (var key in MemoryCache.Default)
{
MemoryCache.Default.Remove(key.Key);
}
}
}