How to mock non virtual methods?
问题 [TestMethod] public void TestMethod1() { var mock = new Mock<EmailService>(); mock.Setup(x => x.SendEmail()).Returns(true); var cus = new Customer(); var result = cus.AddCustomer(mock.Object); Assert.IsTrue(result); } public class Customer { public bool AddCustomer(EmailService emailService) { emailService.SendEmail(); Debug.WriteLine(\"new customer added\"); return true; } } public class EmailService { public virtual bool SendEmail() { throw new Exception(\"send email failed cuz bla bla bla\