public static ResidentResponse SaveResidentsElectorRecordsToTheDatabase(ElectoralRegisterContext context, string firstName = null, string lastName = null, int id = 0)
        {
            var property = _fixture.Build <ElectorsProperty>()
                           .With(e => e.Uprn, _fixture.Create <int>().ToString).Create();

            context.Properties.Add(property);
            context.SaveChanges();

            var elector = _fixture.Build <Elector>()
                          .Without(e => e.ElectorsProperty)
                          .Without(e => e.ElectorExtension)
                          .With(e => e.PropertyId, property.Id)
                          .Create();

            elector.FirstName = firstName ?? elector.FirstName;
            elector.LastName  = lastName ?? elector.LastName;
            if (id != 0)
            {
                elector.Id = id;
            }

            context.Electors.Add(elector);
            context.SaveChanges();

            var electorExtension = _fixture.Build <ElectorExtension>()
                                   .With(e => e.Id, elector.Id)
                                   .Create();

            context.ElectorExtensions.Add(electorExtension);
            context.SaveChanges();

            var expectedResponse = new ResidentResponse
            {
                Id          = elector.Id,
                Email       = elector.Email,
                Nationality = elector.Nationality,
                Title       = elector.Title,
                Uprn        = Convert.ToInt32(property.Uprn),
                FirstName   = elector.FirstName,
                LastName    = elector.LastName,
                MiddleName  = electorExtension.MiddleName,
                DateOfBirth = electorExtension.DateOfBirth.ToString("yyyy-MM-dd")
            };

            return(expectedResponse);
        }
        public void ViewRecordTest()
        {
            var singleResidentInfo = new ResidentResponse()
            {
                Id          = 1234,
                FirstName   = "test",
                LastName    = "test",
                DateOfBirth = new DateTime()
            };

            _mockGetByIdUseCase.Setup(x => x.Execute(1234)).Returns(singleResidentInfo);
            var response = _classUnderTest.ViewRecord(1234) as OkObjectResult;

            response.Should().NotBeNull();
            response.StatusCode.Should().Be(200);
            response.Value.Should().BeEquivalentTo(singleResidentInfo);
        }
Esempio n. 3
0
        public void ReturnContactDetailsInResidentResponse()
        {
            var domain = new ResidentDomain
            {
                Id          = 1234,
                FirstName   = "Name",
                LastName    = "Last",
                DateOfBirth = new DateTime(),
                Gender      = GenderTypeEnum.F,
                Contacts    = new List <ContactDetailsDomain>
                {
                    new ContactDetailsDomain
                    {
                        Id      = 1234,
                        AddedBy = "Test"
                    }
                }
            };

            var expectedResponse = new ResidentResponse
            {
                Id                 = 1234,
                FirstName          = "Name",
                LastName           = "Last",
                DateOfBirth        = new DateTime(),
                Gender             = "F",
                ContactInformation = new List <ContactDetailsResponse>
                {
                    new ContactDetailsResponse
                    {
                        Id      = 1234,
                        AddedBy = "Test"
                    }
                }
            };

            domain.ToResponse().Should().BeEquivalentTo(expectedResponse);
        }
Esempio n. 4
0
        public void CanMapResidentInformationFromDomainToResponse()
        {
            var domain = new ResidentDomain
            {
                Id          = 1234,
                FirstName   = "Name",
                LastName    = "Last",
                DateOfBirth = new DateTime(),
                Gender      = GenderTypeEnum.F,
                Contacts    = null
            };

            var expectedResponse = new ResidentResponse
            {
                Id                 = 1234,
                FirstName          = "Name",
                LastName           = "Last",
                DateOfBirth        = new DateTime(),
                Gender             = "F",
                ContactInformation = null
            };

            domain.ToResponse().Should().BeEquivalentTo(expectedResponse);
        }