Language: C#
Testing the finally clause?
1: public void Send_DatabaseTimeOutNewsletterFails_LastPublishDateNotChanged() 2: { 3: //Arrange 4: var originalNewsletter = new AutomaticNewsletter() 5: { 6: Id = 1, 7: Name = "TestNewsletter", 8: LastPublishStatus = PublishStatus.NotSent, 9: LastPublishDate = new DateTime(2000, 01, 01), 10: PublishDay = DayOfWeek.Friday, 11: PublishHour = 15, 12: PublishMinute = 0, 13: Frequency = INewsletter.PublishFrequency.Daily 14: }; 15: var resultNewsletter = new AutomaticNewsletter(); 16: 17: var fakeNewsletterRepository = new Mock<INewsletterRepository>(); 18: fakeNewsletterRepository.Setup(r => r.GetContent(It.IsAny<INewsletter>())).Throws(SqlExceptionFake.CreateSqlException("Connection timed out", 0)); 19: fakeNewsletterRepository.Setup(r => r.Save(It.IsAny<INewsletter>())) 20: .Callback((INewsletter newsletter) => 21: { 22: resultNewsletter = (AutomaticNewsletter)newsletter; 23: }); 24: var serializer = new Mock<INewsletterSerializer>(); 25: 26: var sendmail = new SendMailManager(originalNewsletter) 27: { 28: Logger = new Mock<IThreadLogger>().Object, 29: NewsletterRepository = fakeNewsletterRepository.Object, 30: Serializer = serializer.Object, 31: StatBuilder = new Mock<IStatBuilder>().Object 32: }; 33: var tracker = new NewsLetterTracker(); 34: tracker.TryAdd(1); 35: 36: //Act 37: try 38: { 39: sendmail.Send(tracker); 40: } 41: catch (SqlException ex) 42: { 43: //do Nothing, I want to test the finally clause 44: } 45: 46: //Assert 47: Assert.AreEqual(new DateTime(2000, 01, 01), resultNewsletter.LastPublishDate);
Tags:
Description:
Trying to test what is the test of my newsletter in the finally clause when the SqlException is thrown (caught at a higher level)
Modules are decoupled and injected using Lazy-Loading properties.
Modules are decoupled and injected using Lazy-Loading properties.
Report Abuse
Subscribe
Discuss
What's new
What is it
New Snippet
Recent Snippets
My Snippets
Web Code
Search

