BinaryStudio.ClientManager.DomainModel.Tests.Input.MailMessagePersisterTests.Should_ReturnMailMessageWithRightData_WhenCallingConvertForMailWithExistingClientAndEmloyees C# (CSharp) Méthode

Should_ReturnMailMessageWithRightData_WhenCallingConvertForMailWithExistingClientAndEmloyees() private méthode

        public void Should_ReturnMailMessageWithRightData_WhenCallingConvertForMailWithExistingClientAndEmloyees()
        {
            //arrange
            var receiver1 = new MailAddress("[email protected]", "Employee Petrov");
            var receiver2 = new MailAddress("[email protected]", "Employee Kozlov");

            var mailMessage = Builder<MailMessage>.CreateNew()
                .With(x => x.Date = GetRandom.DateTime())
                .With(x => x.Sender = new MailAddress("[email protected]", "Client Ivanov"))
                .With(x => x.Receivers = new List<MailAddress> {receiver1, receiver2})
                .Build();

            var persons = Builder<Person>.CreateListOfSize(3)
                .All().With(x => x.CreationDate = GetRandom.DateTime())
                .TheFirst(1)
                .With(x => x.Role = PersonRole.Client)
                .With(x => x.FirstName = "Client")
                .With(x => x.LastName = "Ivanov")
                .With(x => x.Email = "[email protected]")
                .TheNext(1)
                .With(x => x.Role = PersonRole.Employee)
                .With(x => x.FirstName = "Employee")
                .With(x => x.LastName = "Petrov")
                .With(x => x.Email = "[email protected]")
                .TheNext(1)
                .With(x => x.Role = PersonRole.Employee)
                .With(x => x.FirstName = "Employee")
                .With(x => x.LastName = "Kozlov")
                .With(x => x.Email = "[email protected]")
                .Build();

            repository.Query<Person>().ReturnsForAnyArgs(persons.AsQueryable());

            //act
            var result = mailMessagePersister.Convert(mailMessage);

            //assert
            Assert.That(result.Body == mailMessage.Body &&
                result.Subject == mailMessage.Subject &&
                result.Date == mailMessage.Date &&
                result.Sender == persons[0] &&
                result.Receivers.Count == 2 &&
                result.Receivers.Contains(persons[1]) &&
                result.Receivers.Contains(persons[2]));
        }