Exemple #1
0
        public async Task Should_Create()
        {
            // Arrange
            var createDto = new RegionCreateDto
            {
                Name = "Hawaii"
            };

            var expectedDto = new RegionDto
            {
                Name       = createDto.Name,
                CreatedBy  = _staff.DisplayName,
                CreatedAt  = FakeDateTime.UtcNow,
                ModifiedAt = null,
                ModifiedBy = null,
            };

            // Act
            HttpResponseMessage responseMessage = await _authenticatedServer
                                                  .CreateClient()
                                                  .AuthenticateWith(_staff)
                                                  .PostAsync(ApiEndpoints.RegionsController.Post(), BuildStringContent(createDto));

            // Assert
            responseMessage.StatusCode.Should().Be(HttpStatusCode.Created);
            RegionDto result = await DeserializeResponseMessageAsync <RegionDto>(responseMessage);

            result.Should().BeEquivalentTo(expectedDto, opt => opt
                                           .Excluding(dto => dto.Id));
            result.Id.Should().NotBeEmpty();
            responseMessage.Headers.Location.AbsolutePath.Should().Be($"/{ApiEndpoints.RegionsController.Get(result.Id)}");
        }
Exemple #2
0
        public void Should_Map()
        {
            // Arrange
            Region    region      = RegionSeedData.Berlin;
            RegionDto expectedDto = RegionDtoData.Berlin;

            // Act
            RegionDto dto = _mapper.Map <RegionDto>(region);

            // Assert
            dto.Should().BeEquivalentTo(expectedDto);
        }
Exemple #3
0
        public async Task Should_Get_ById()
        {
            // Arrange
            RegionDto expectedDto = RegionDtoData.Freiburg;

            // Act
            HttpResponseMessage responseMessage = await _authenticatedServer
                                                  .CreateClient()
                                                  .AuthenticateWith(_performer)
                                                  .GetAsync(ApiEndpoints.RegionsController.Get(expectedDto.Id));

            // Assert
            responseMessage.StatusCode.Should().Be(HttpStatusCode.OK);
            RegionDto result = await DeserializeResponseMessageAsync <RegionDto>(responseMessage);

            result.Should().BeEquivalentTo(expectedDto);
        }
Exemple #4
0
        public async Task Should_Modify()
        {
            // Arrange
            Region regionToModify = RegionSeedData.Berlin;
            var    modifyDto      = new RegionModifyBodyDto
            {
                Name = "Honolulu"
            };

            var expectedDto = new RegionDto
            {
                Id         = regionToModify.Id,
                Name       = modifyDto.Name,
                CreatedBy  = regionToModify.CreatedBy,
                CreatedAt  = null,
                ModifiedAt = FakeDateTime.UtcNow,
                ModifiedBy = _staff.DisplayName,
            };

            // Act
            HttpClient client = _authenticatedServer
                                .CreateClient()
                                .AuthenticateWith(_staff);

            HttpResponseMessage responseMessage = await client
                                                  .PutAsync(ApiEndpoints.RegionsController.Put(regionToModify.Id), BuildStringContent(modifyDto));

            // Assert
            responseMessage.StatusCode.Should().Be(HttpStatusCode.NoContent);

            HttpResponseMessage getMessage = await client
                                             .GetAsync(ApiEndpoints.RegionsController.Get(regionToModify.Id));

            getMessage.StatusCode.Should().Be(HttpStatusCode.OK);
            RegionDto result = await DeserializeResponseMessageAsync <RegionDto>(getMessage);

            result.Should().BeEquivalentTo(expectedDto);
        }