public void CtorSetsCacheability() { // arrange, act var result = new CacheableFileContentResult(new byte[] { }, "image/gif", DateTime.UtcNow, HttpCacheability.Server); // assert Assert.AreEqual(HttpCacheability.Server, result.Cacheability); }
public void CtorSetsLastModified() { // arrange DateTime dateTime = DateTime.UtcNow; // act var result = new CacheableFileContentResult(new byte[] { }, "image/gif", dateTime, HttpCacheability.Public); // assert Assert.AreEqual(dateTime, result.LastModified); }
public void ExecuteResultSetsCacheCacheability() { // arrange DateTime dateTime = DateTime.UtcNow; var result = new CacheableFileContentResult(new byte[] { }, "image/gif", dateTime, HttpCacheability.Public); var httpContext = new Mock <HttpContextBase>(); HttpCacheability cacheability = HttpCacheability.NoCache; httpContext.Setup(h => h.Response.Cache.SetCacheability(It.IsAny <HttpCacheability>())).Callback <HttpCacheability>(cacheSetting => cacheability = cacheSetting); httpContext.Setup(h => h.Response.OutputStream.Write(It.IsAny <byte[]>(), 0, It.IsAny <int>())); var controllerContext = new ControllerContext(); controllerContext.HttpContext = httpContext.Object; // act result.ExecuteResult(controllerContext); // assert Assert.AreEqual(HttpCacheability.Public, cacheability); }
public void ExecuteResultSetsCacheLastModified() { // arrange DateTime dateTime = DateTime.UtcNow; var result = new CacheableFileContentResult(new byte[] { }, "image/gif", dateTime, HttpCacheability.Server); var httpContext = new Mock <HttpContextBase>(); DateTime lastModified = DateTime.MinValue; httpContext.Setup(h => h.Response.Cache.SetLastModified(It.IsAny <DateTime>())).Callback <DateTime>( date => lastModified = date); httpContext.Setup(h => h.Response.OutputStream.Write(It.IsAny <byte[]>(), 0, It.IsAny <int>())); var controllerContext = new ControllerContext(); controllerContext.HttpContext = httpContext.Object; // act result.ExecuteResult(controllerContext); // assert Assert.AreEqual(dateTime, lastModified); }
public void ExecuteResultWritesBytesToResponse() { // arrange DateTime dateTime = DateTime.Now; var result = new CacheableFileContentResult(new byte[] { 1, 2, 3, 2, 1 }, "image/gif", dateTime, HttpCacheability.Server); var httpContext = new Mock <HttpContextBase>(); DateTime lastModified = DateTime.MinValue; httpContext.Setup(h => h.Response.Cache.SetLastModified(It.IsAny <DateTime>())).Callback <DateTime>( date => lastModified = date); byte[] writtenBytes = null; httpContext.Setup(h => h.Response.OutputStream.Write(It.IsAny <byte[]>(), 0, It.IsAny <int>())).Callback <byte[], int, int>((bytes, i, j) => writtenBytes = bytes); var controllerContext = new ControllerContext(); controllerContext.HttpContext = httpContext.Object; // act result.ExecuteResult(controllerContext); // assert Assert.AreEqual(new byte[] { 1, 2, 3, 2, 1 }, writtenBytes); }