public async Task GetsProperty()
        {
            // Arrange
            var property = new PropertyWithAlerts()
            {
                PropertyModel  = _fixture.Create <PropertyModel>(),
                PersonAlerts   = StubAlerts().Generate(5),
                LocationAlerts = StubAlerts().Generate(5),
                Contacts       = _fixture.Create <List <ResidentContact> >()
            };

            _getPropertyUseCaseMock.Setup(m => m.ExecuteAsync(It.IsAny <string>())).ReturnsAsync(property);

            var query = new GetPropertyRequest {
                PropertyReference = property.PropertyModel.PropertyReference
            };

            // Act
            var result = await _classUnderTest.GetProperty(query);

            var propertyResult = GetResultData <PropertyResponse>(result);
            var statusCode     = GetStatusCode(result);

            // Assert
            statusCode.Should().Be(200);
            propertyResult.Property.PropertyReference.Should().Be(property.PropertyModel.PropertyReference);
        }
示例#2
0
 public static PropertyResponse ToResponse(this PropertyWithAlerts domain)
 {
     return(new PropertyResponse
     {
         Property = domain.PropertyModel.ToResponse(domain.Tenure),
         Alerts = new AlertsViewModel
         {
             LocationAlert = domain.LocationAlerts.Select(alert => alert.ToResponse()).ToList(),
             PersonAlert = domain.PersonAlerts.Select(alert => alert.ToResponse()).ToList(),
         },
         Tenure = domain.Tenure.ToResponse(),
         Contacts = domain.Contacts.ToResponse(),
         ContactDetails = domain.ContactDetails?.Select(x => x.ToResponse()).ToList()
     });
 }