public void Test() { var nri = "net://" + Guid.NewGuid(); Assert.IsFalse(_cacheKernelAdapter.Match(nri)); Assert.AreEqual(0, _cacheKernelAdapter.Statistics.ResourcesCached); Assert.AreEqual(0, _cacheKernelAdapter.Statistics.CacheSize); Assert.AreEqual(0, _cacheKernelAdapter.Statistics.CachedEnergyValue); var req = new Request { NetResourceLocator = nri }; var rep = new Response { Status = ResponseCode.Ok, Resource = new ResourceRepresentation { Body = "TEST", Cacheable = true, Energy = 100000, Expires = DateTime.MaxValue, MediaType = "text/plain", NetResourceIdentifier = nri, Size = 4 } }; _cacheKernelAdapter.PostProcess(req, rep); Assert.IsTrue(_cacheKernelAdapter.Match(nri)); Assert.AreEqual(1, _cacheKernelAdapter.Statistics.ResourcesCached); Assert.AreEqual(rep.Resource.Size, _cacheKernelAdapter.Statistics.CacheSize); Assert.AreEqual(rep.Resource.Energy, _cacheKernelAdapter.Statistics.CachedEnergyValue); }
public void Cache_noncanonical_nrl() { var nri = "net://" + Guid.NewGuid(); var nrl = "net://" + Guid.NewGuid(); Assert.IsFalse(_cacheKernelAdapter.Match(nri)); Assert.IsFalse(_cacheKernelAdapter.Match(nrl)); Assert.AreEqual(0, _cacheKernelAdapter.Statistics.ResourcesCached); var req = new Request { NetResourceLocator = nrl }; var req2 = new Request { NetResourceLocator = nri }; var rep = new Response { Status = ResponseCode.Ok, Resource = new ResourceRepresentation { Body = "TEST", Cacheable = true, Energy = 100000, Expires = DateTime.MaxValue, MediaType = "text/plain", NetResourceIdentifier = nri, Size = 4 } }; _cacheKernelAdapter.PostProcess(req, rep); Assert.IsTrue(_cacheKernelAdapter.Match(nri)); Assert.IsTrue(_cacheKernelAdapter.Match(nrl)); Assert.AreEqual(1, _cacheKernelAdapter.Statistics.ResourcesCached); var a = _cacheKernelAdapter.Handler(req); var b = _cacheKernelAdapter.Handler(req2); Assert.IsNotNull(a); Assert.AreSame(a.Resource,b.Resource); }