public void ShouldThrowIfHeaderNotDetected()
		{
			var viewStream = new MemoryStream(Encoding.UTF8.GetBytes("nothing"));
			var viewReader = MockRepository.GenerateMock<IViewStreamReader>();
			viewReader.Expect(x => x.GetViewStream(null, null, null)).IgnoreArguments().Return(viewStream);

			_service = new EmailTemplateService(viewReader);
			var message = _service.RenderMessage("foo", _controllerContext, null);
		}
Exemplo n.º 2
0
        public void ShouldThrowIfViewNotFound()
        {
            var engine = MockRepository.GenerateMock <IViewEngine>();

            engine.Stub(x => x.FindPartialView(null, null, true)).IgnoreArguments().Return(new ViewEngineResult(new[] { "foo", "bar" }));
            MvcViewEngines.Engines.Clear();
            MvcViewEngines.Engines.Add(engine);

            _service.RenderMessage("foo", new EmailMetadata("*****@*****.**", "*****@*****.**"), _controllerContext);
        }
		public void CanRenderMessageWithEmbededHeader()
		{
			string to = "*****@*****.**";
			string body = "<body>whatever ...</body>";
			var viewStream = new MemoryStream(Encoding.UTF8.GetBytes("to:" + to + Environment.NewLine + body));
			var viewReader = MockRepository.GenerateMock<IViewStreamReader>();
			viewReader.Expect(x => x.GetViewStream(null, null, null)).IgnoreArguments().Return(viewStream);

			_service = new EmailTemplateService(viewReader);
			var message = _service.RenderMessage("foo", _controllerContext, null);

			Assert.IsNotNull(message.To);
			Assert.IsNotNull(message.Body);

			Assert.IsTrue(message.To.ToString().Contains(to));
		}
		public void CanRenderMessage()
		{
			string subject = "this line is subject";
			string body = "Here is message body...";
			var viewStream = new MemoryStream(Encoding.UTF8.GetBytes(subject + Environment.NewLine + body));
			var viewReader = MockRepository.GenerateMock<IViewStreamReader>();
			viewReader.Expect(x => x.GetViewStream(null, null, null)).IgnoreArguments().Return(viewStream);

			_service = new EmailTemplateService(viewReader);
			var message = _service.RenderMessage("foo", new EmailMetadata("*****@*****.**", "*****@*****.**"), _controllerContext);

			Assert.That(message, Is.Not.Null);
			Assert.That(message.Subject, Is.EqualTo(subject));
			Assert.That(message.Body, Is.EqualTo(body));
			Assert.That(message.IsBodyHtml, Is.True, "Emails are HTML by default - plain text should be explicitly set in metadata.");
		}
Exemplo n.º 5
0
        public void CanRenderMessage()
        {
            string subject    = "this line is subject";
            string body       = "Here is message body...";
            var    viewStream = new MemoryStream(Encoding.UTF8.GetBytes(subject + Environment.NewLine + body));
            var    viewReader = MockRepository.GenerateMock <IViewStreamReader>();

            viewReader.Expect(x => x.GetViewStream(null, null, null)).IgnoreArguments().Return(viewStream);

            _service = new EmailTemplateService(viewReader);
            var message = _service.RenderMessage("foo", new EmailMetadata("*****@*****.**", "*****@*****.**"), _controllerContext);

            Assert.That(message, Is.Not.Null);
            Assert.That(message.Subject, Is.EqualTo(subject));
            Assert.That(message.Body, Is.EqualTo(body));
            Assert.That(message.IsBodyHtml, Is.True, "Emails are HTML by default - plain text should be explicitly set in metadata.");
        }
Exemplo n.º 6
0
        public void CanRenderMessage()
        {
            int numberOfTimesFlushed = 0;

            Response.Stub(x => x.Flush()).Do(new Action(() => numberOfTimesFlushed++));

            string messageBody = "test message body..." + Environment.NewLine;

            SetupView("foo", messageBody);

            var message = _service.RenderMessage(_controllerContext, "foo");

            Assert.IsNotNull(message);
            Assert.AreEqual(messageBody, message.Body);
            Assert.IsFalse(message.IsBodyHtml);
            Assert.AreEqual(2, numberOfTimesFlushed);
        }
		public void CanRenderMessageFirstLineEmpty()
		{
			var viewStream = new MemoryStream(Encoding.UTF8.GetBytes(@"
to: [email protected]
subject: Hello !
<html>
<head>
		<title>EmbedHeader</title>
</head>
<body>
what are you doing?
</body>
</html>
"));
			var viewReader = MockRepository.GenerateMock<IViewStreamReader>();
			viewReader.Expect(x => x.GetViewStream(null, null, null)).IgnoreArguments().Return(viewStream);

			_service = new EmailTemplateService(viewReader);
			var message = _service.RenderMessage("foo", _controllerContext, null);

			Assert.IsNotNull(message.To);
		}