public void Test_OnBeginRequest() { string url = "https://magick.codeplex.com/"; MagickModule module = CreateFileModule(); TestHttpContextBase context = new TestHttpContextBase(url); module.OnBeginRequest(context); Assert.AreEqual(1, context.Items.Count); Assert.AreEqual(url, context.Items.Values.Cast <object>().First().ToString()); }
public void Test_OnPostAuthorizeRequestFile() { MagickModule module = CreateFileModule(); TestHttpContextBase context = new TestHttpContextBase(); module.OnBeginRequest(context); module.OnPostAuthorizeRequest(context); Assert.IsNull(context.RemapedHandler); TestFileUrlResolver.Result = new TestFileUrlResolverResult(); module.OnPostAuthorizeRequest(context); Assert.IsNull(context.RemapedHandler); TestFileUrlResolver.Result.FileName = "c:\foo.bar"; module.OnPostAuthorizeRequest(context); Assert.IsNull(context.RemapedHandler); string tempFile = Path.GetTempFileName(); try { TestFileUrlResolver.Result.FileName = tempFile; module.OnPostAuthorizeRequest(context); Assert.IsNull(context.RemapedHandler); TestFileUrlResolver.Result.Format = MagickFormat.Stegano; module.OnPostAuthorizeRequest(context); Assert.IsNull(context.RemapedHandler); TestFileUrlResolver.Result.Format = MagickFormat.Tiff; module.OnPostAuthorizeRequest(context); Assert.IsNull(context.RemapedHandler); TestFileUrlResolver.Result.Format = MagickFormat.Svg; module.OnPostAuthorizeRequest(context); Assert.IsNotNull(context.RemapedHandler); Assert.AreEqual(context.RemapedHandler.GetType(), typeof(GzipHandler)); } finally { Cleanup.DeleteFile(tempFile); } }
public void Test_Exceptions() { string config = @"<magick.net.web canCreateDirectories=""false"" cacheDirectory=""c:\cache"" useOpenCL=""true""/>"; MagickModule module = CreateModule(config); ExceptionAssert.Throws <ConfigurationErrorsException>(() => { module.Initialize(); }); ExceptionAssert.Throws <ConfigurationErrorsException>(() => { new MagickModule(); }); }
public void Test_OnPostMapRequestHandlerStream() { MagickModule module = CreateStreamModule(); module.Init(new TestHttpApplication()); TestHttpContextBase context = new TestHttpContextBase(); module.OnBeginRequest(context); module.OnPostMapRequestHandler(context); Assert.IsNull(context.Handler); TestStreamUrlResolver.Result = true; module.OnPostMapRequestHandler(context); Assert.IsNotNull(context.Handler); Assert.AreEqual(context.Handler.GetType(), typeof(ImageOptimizerHandler)); }
public void Test_OnPostMapRequestHandlerFile() { MagickModule module = CreateFileModule(); module.Init(new TestHttpApplication()); TestHttpContextBase context = new TestHttpContextBase(); module.OnBeginRequest(context); module.OnPostMapRequestHandler(context); Assert.IsNull(context.Handler); string tempFile = Path.GetTempFileName(); try { TestFileUrlResolver.Result = new TestFileUrlResolverResult() { FileName = tempFile, Format = MagickFormat.Jpg, }; module.OnPostMapRequestHandler(context); Assert.IsNotNull(context.Handler); Assert.AreEqual(context.Handler.GetType(), typeof(ImageOptimizerHandler)); TestFileUrlResolver.ScriptResult = new TestScriptData() { OutputFormat = MagickFormat.Tiff, Script = XElement.Parse("<test/>").CreateNavigator(), }; module.OnPostMapRequestHandler(context); Assert.IsNotNull(context.Handler); Assert.AreEqual(context.Handler.GetType(), typeof(MagickScriptHandler)); } finally { Cleanup.DeleteFile(tempFile); } }
public void Test_Initialize() { string config = @" <magick.net.web canCreateDirectories=""false"" cacheDirectory=""c:\cache"" useOpenCL=""true""> <urlResolvers> <urlResolver type=""Magick.NET.Tests.TestFileUrlResolver, Magick.NET.Tests""/> </urlResolvers> </magick.net.web>"; bool isEnabled = OpenCL.IsEnabled; ulong width = ResourceLimits.Width; ulong height = ResourceLimits.Height; MagickModule module = CreateModule(config); module.Initialize(); Assert.AreEqual(isEnabled, OpenCL.IsEnabled); Assert.AreEqual(width, ResourceLimits.Width); Assert.AreEqual(height, ResourceLimits.Height); config = @" <magick.net.web canCreateDirectories=""false"" cacheDirectory=""c:\cache""> <resourceLimits width=""40000"" height=""30000""/> <urlResolvers> <urlResolver type=""Magick.NET.Tests.TestFileUrlResolver, Magick.NET.Tests""/> </urlResolvers> </magick.net.web>"; module = CreateModule(config); module.Initialize(); Assert.IsFalse(OpenCL.IsEnabled); Assert.AreEqual(40000UL, ResourceLimits.Width); Assert.AreEqual(30000UL, ResourceLimits.Height); OpenCL.IsEnabled = isEnabled; ResourceLimits.Width = width; ResourceLimits.Height = height; }