public void ReturnContactDetailsResponse() { var domain = new ContactDetailsDomain { Id = 1234, Type = "Address", ContactValue = "123456", AddedBy = "test", IsActive = false, IsDefault = false, DateLastModified = new DateTime(2020, 04, 23), ModifiedBy = "Tester", SubType = "Home", DateAdded = new DateTime(2021, 05, 21), ResidentId = 12345 }; var expectedResponse = new ContactDetailsResponse { Id = 1234, Type = "Address", Value = "123456", AddedBy = "test", Active = false, Default = false, DateLastModified = new DateTime(2020, 04, 23), ModifiedBy = "Tester", SubType = "Home", DateAdded = new DateTime(2021, 05, 21), }; domain.ToResponse().Should().BeEquivalentTo(expectedResponse); }
public int?InsertResidentContactDetails(int?residentId, string nccContactId, ContactDetailsDomain contactDetails) { if (ResidentNotFoundForId(residentId)) { residentId = null; } residentId = residentId ?? FindResidentIdByContactId(nccContactId); if (residentId == null) { return(null); } var contact = new Contact { ResidentId = residentId.Value, ContactValue = contactDetails.ContactValue, IsActive = contactDetails.IsActive, IsDefault = contactDetails.IsDefault, ContactTypeLookupId = contactDetails.TypeId, ContactSubTypeLookupId = contactDetails.SubtypeId }; _residentContactContext.ContactDetails.Add(contact); _residentContactContext.SaveChanges(); return(contact.Id); }
public ContactDetailsResponse Execute(ResidentContact contactRequest) { if (contactRequest.ResidentId == null && string.IsNullOrWhiteSpace(contactRequest.NccContactId)) { throw new NoIdentifierException(); } var contactDomain = new ContactDetailsDomain { ContactValue = contactRequest.Value, IsActive = contactRequest.Active, IsDefault = contactRequest.Default, TypeId = contactRequest.TypeId, SubtypeId = contactRequest.SubtypeId, Id = contactRequest?.Id }; var response = _residentGateway.InsertResidentContactDetails(contactRequest.ResidentId, contactRequest.NccContactId, contactDomain); if (response == null) { throw new ResidentNotFoundException(); } if (contactRequest.Id != null) { _residentGateway.InvalidateContactDetailsRecord(contactRequest.Id); } return(new ContactDetailsResponse { Id = response.Value }); }
private static bool CheckContactDetails(ContactDetailsDomain x, ContactDetailsDomain expectedDomain) { return(x.ContactValue == expectedDomain.ContactValue && x.IsActive == expectedDomain.IsActive && x.IsDefault == expectedDomain.IsDefault && x.SubtypeId == expectedDomain.SubtypeId && x.TypeId == expectedDomain.TypeId && x.Id == expectedDomain.Id); }
public void UseCaseShouldCallGatewayWithADomainObjectToInsertContactData() { var request = _fixture.Create <ResidentContact>(); var expectedDomain = new ContactDetailsDomain { ContactValue = request.Value, IsActive = request.Active, IsDefault = request.Default, SubtypeId = request.SubtypeId, TypeId = request.TypeId, Id = request.Id }; _mockGateway.Setup( x => x.InsertResidentContactDetails(request.ResidentId.Value, request.NccContactId, It.Is <ContactDetailsDomain>(x => CheckContactDetails(x, expectedDomain)))).Returns(1); _classUnderTest.Execute(request); _mockGateway.Verify(); }
public void EntitiesHaveAnId() { var entity = new ContactDetailsDomain(); entity.Id?.Should().BeGreaterOrEqualTo(0); }