public void ParseEmailsFromDataTo_ShouldParsToAddress() { //arrange var headers = new NameValueCollection(); headers.Add("To", "\"To Name\" <*****@*****.**>,\r\n\"To Name\"<*****@*****.**>, \"To \r\nName\"<*****@*****.**>"); //act var result = _emailParser.ParseEmailsFromDataTo(headers); //assert result.Count.Should().Be(1); result[0].Should().BeOfType <MailAddress>(); result[0].Address.Should().Be("*****@*****.**"); result[0].DisplayName.Should().Be("To Name"); }
public void Run_SetsCorrectToList() { //arrange var readLine = "not empty string"; var parsedFromHeaderCollection = new List <MailAddress> { new MailAddress("*****@*****.**"), new MailAddress("*****@*****.**", "To Name1"), new MailAddress("*****@*****.**", "To Name2") }; var toAddress = new MailAddress("*****@*****.**"); var expectedCollection = new List <MailAddress> { new MailAddress("*****@*****.**"), new MailAddress("*****@*****.**", "To Name1"), new MailAddress("*****@*****.**", "To Name2") }; _clientController.Read().Returns(readLine, readLine, readLine, _mailDataSection); _requestCommandsConverter.ToRequestCommandCode(Arg.Any <string>()).Returns( RequestCommands.Hello, RequestCommands.RcptTo, RequestCommands.Data, RequestCommands.Quit); _serverStatusCodesConverter.GetTextResponseForStatus(ResponseCodes.SrvReady, _hostName).Returns("response1"); _serverStatusCodesConverter.GetTextResponseForStatus(ResponseCodes.SrvHelloNoTls, _hostName).Returns("response2"); _serverStatusCodesConverter.GetTextResponseForStatus(ResponseCodes.StrtInputEndWith).Returns("response3"); _serverStatusCodesConverter.GetTextResponseForStatus(ResponseCodes.RqstActOkCompleted).Returns("response4"); _emailParser.ParseEmailsFromDataTo(Arg.Any <NameValueCollection>()).Returns(parsedFromHeaderCollection); _emailParser.ParseEmailFromString(readLine).Returns(toAddress); //act var message = _clientProcessor.Run(); //assert message.To.ShouldAllBeEquivalentTo(expectedCollection); }