estes de unidade do @MvcMailer: System.ArgumentNullException httpContext não pode ser nulo
Não consigo executar testes de unidade com sucesso no MvcMailer usando o conjunto de testes do visual studio e o Moq. Copiei o exemplo da palavra wiki por palavra, mas sempre recebo a seguinte exceção:
Test method MvcMailerTest.Tests.MailerTest.TestMethod1 threw exception:
System.ArgumentNullException: Value cannot be null.
Parameter name: httpContext
Code é o seguinte: (Usando a estrutura de teste de unidade VS - exatamente o mesmo erro ao usar o nUnit como no exemplo)
//Arrange: Moq out the PopulateBody method
var _userMailerMock = new Mock<UserMailer>();
_userMailerMock.Setup(mailer => mailer.PopulateBody(It.IsAny<MailMessage>(), "Welcome", null));
_userMailerMock.CallBase = true;
//Act
var mailMessage = _userMailerMock.Object.Welcome();
Falha na seguinte linha no método Welcome () (copiado diretamente do wiki):
PopulateBody(mailMessage, viewName: "Welcome");
O wiki está aqui:https: //github.com/smsohan/MvcMailer/wiki/MvcMailer-Step-by-Step-Guid
Semelhante (quase exatamente o mesmo) Pergunta:MvcMailer: Não é possível concluir os testes do NUnit nas exibições do Razor que usam Url.Action
Alguém sabe como consertar / contornar isso? A pergunta vinculada diz que eu preciso zombar do método PopulateBody que fiz (conforme o wiki).