¿Cómo simular / falsificar SmtpClient en un UnitTest?

Quiero usarlo para falsificarSystem.Net.Mail.SmtpClient en una prueba de unidad de prueba de MS. Por lo tanto, agregué un Fake Assembmly de System.dll. Entonces creo unShimsContext y unStubSmtpClient.

using (ShimsContext.Create())
{
   StubSmtpClient client = new StubSmtpClient();               
}

¿Pero qué hago con eso? El objetivo final sería escribir una prueba que espere que el método de envío se llame con un objeto deMailMessage.

Respuestas a la pregunta(4)

Su respuesta a la pregunta