コード例 #1
0
        public void ReplaceLinkedImagesWithEmbeddedImages_replaces_cid_reference_with_correct_mime()
        {
            var embedder = new ImageEmbedder();
            var resource = embedder.ReferenceImage("postal.png");

            string body = "<img src=\"cid:" + resource.ContentId + @"""/>";
            var    view = AlternateView.CreateAlternateViewFromString(body);

            embedder.AddImagesToView(view);

            string replaced = EmailViewResultExecutor.ReplaceLinkedImagesWithEmbeddedImages(view, body);

            Assert.Contains("data:image/png;base64,", replaced);
        }
コード例 #2
0
        private HttpContext GetHttpContext(IEmailViewRender render, IEmailParser parser = null)
        {
            var options = Options.Create(new MvcViewOptions());

            var viewExecutor = new EmailViewResultExecutor(
                NullLoggerFactory.Instance,
                new TestHttpResponseStreamWriterFactory(),
                render,
                parser);

            var services = new ServiceCollection();

            services.AddSingleton <IActionResultExecutor <EmailViewResult> >(viewExecutor);

            var httpContext  = new DefaultHttpContext();
            var memoryStream = new MemoryStream();

            httpContext.Response.Body   = memoryStream;
            httpContext.RequestServices = services.BuildServiceProvider();
            return(httpContext);
        }