Esempio n. 1
0
        public void SendMailTestFixture()
        {
            //Create a mock object of a MailClient class which implements IMailClient
            var mockMailClient = new Moq.Mock <IMailClient>();

            //Mock the properties of MailClient
            mockMailClient.SetupProperty(client => client.Server, "chat.mail.com").SetupProperty(client => client.Port, "1212");

            //Configure dummy method so that it return true when it gets any string as parameters to the method
            mockMailClient.Setup(client => client.SendMail(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(true);

            IMailer mailer = new DefaultMailer()
            {
                From = "*****@*****.**", To = "*****@*****.**", Subject = "Using Moq", Body = "Moq is awesome"
            };

            //Use the mock object of MailClient instead of actual object
            var result = mailer.SendMail(mockMailClient.Object);

            //Verify that it return true
            Assert.IsTrue(result);

            //Verify that the MailClient's SendMail methods gets called exactly once when string is passed as parameters
            mockMailClient.Verify(client => client.SendMail(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()), Times.Once);
        }
Esempio n. 2
0
        public void SendEmailTest()
        {
            //Create a mock object
            var mockClient = new Mock <IMailClient>();

            //Mock the properties
            mockClient.SetupProperty(x => x.Server, "smtp.xyz.com")
            .SetupProperty(x => x.Port, "25");
            //Configure dummy method so that it return true when it gets any string as parameters to the method
            mockClient.Setup(x => x.SendMail(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()))
            .Returns(true);
            var mailer = new DefaultMailer
            {
                From    = "*****@*****.**",
                To      = "*****@*****.**",
                Subject = "Test subject",
                Body    = "Test moq framework"
            };
            //Use the mock object instead of actual object
            var result = mailer.SendMail(mockClient.Object);

            //Verify that it return true
            Assert.IsTrue(result);
            //Verify that the SendMail method gets called exactly once when string is passed as parameters
            mockClient.Verify(x => x.SendMail(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()), Times.Once);
        }
Esempio n. 3
0
        public void SendMail()
        {
            //assign
            var mockMailClient = new Mock <IMailClient>();

            mockMailClient.Setup(s => s.Server).Returns("chat.mail.com");
            mockMailClient.Setup(s => s.Port).Returns("1234");
            mockMailClient.Setup(s => s.SendMail(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(true);

            //act
            IMailer mailer = new DefaultMailer {
                From = "*****@*****.**", To = "*****@*****.**", Subject = "Using Moq", Body = "Hello world!"
            };
            var result = mailer.SendMail(mockMailClient.Object);

            //assert
            Assert.IsTrue(result);
            //verify that MailClient's SendMail is called only once
            mockMailClient.Verify(client => client.SendMail(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()), Times.Once);
        }
Esempio n. 4
0
        public void SendMailTestFixture()
        {
            //Arrage
            var mockMailClient = new Moq.Mock <IMailClient>();

            mockMailClient.SetupProperty(client => client.Server, "chat.mail.com").SetupProperty(client => client.Port, "1212");

            mockMailClient.Setup(client => client.SendMail(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(true);

            IMailer mailer = new DefaultMailer()
            {
                From = "*****@*****.**", To = "*****@*****.**", Subject = "Using Moq", Body = "Moq is awesome"
            };

            //Act
            var result = mailer.SendMail(mockMailClient.Object);

            //Assert
            Assert.IsTrue(result);
            mockMailClient.Verify(client => client.SendMail(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()), Times.Once);
        }
Esempio n. 5
0
        public void TestMethodMailToSend()
        {
            var moqMail = new Moq.Mock <IMailClient>();

            moqMail.SetupProperty(client => client.Server, "chat.mail.com")
            .SetupProperty(client => client.Port, "80");
            moqMail.Setup(client => client.SendMail(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())).Returns(true);
            IMailer mailer = new DefaultMailer()
            {
                From = "*****@*****.**", To = "*****@*****.**", Subject = "Using Moq", Body = "Moq is awesome"
            };

            //Use the mock object of MailClient instead of actual object
            var result = mailer.SendMail(moqMail.Object);

            //Verify that it return true
            Assert.IsTrue(result);

            // Verify that the MailClient's SendMail methods gets called exactly once when string is passed as parameters
            moqMail.Verify(client => client.SendMail(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()), Times.Once);
        }
Esempio n. 6
0
 public void Should_Register_Event()
 {
     var mailer = new DefaultMailer();
 }