Ejemplo n.º 1
0
        public async Task GetCityDistrictAsync_Should_Return_OkObjectResult_With_CityDistrictResponse()
        {
            var cityDistrictOutputQuery = new CityDistrictOutputQuery(Guid.NewGuid(), Array.Empty <byte>(), "Name",
                                                                      "PolishName", Guid.NewGuid(), Guid.NewGuid(), new List <string> {
                "NameVariant"
            });
            var cityDistrictResponse = new CityDistrictResponse(cityDistrictOutputQuery.Id,
                                                                cityDistrictOutputQuery.RowVersion,
                                                                cityDistrictOutputQuery.Name,
                                                                cityDistrictOutputQuery.PolishName,
                                                                cityDistrictOutputQuery.CityId,
                                                                cityDistrictOutputQuery.ParentId,
                                                                cityDistrictOutputQuery.NameVariants);

            _getCityDistrictQueryHandlerMock
            .Setup(x => x.HandleAsync(It.IsAny <GetCityDistrictInputQuery>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(cityDistrictOutputQuery);
            _mapperMock.Setup(x => x.Map <CityDistrictOutputQuery, CityDistrictResponse>(It.IsAny <CityDistrictOutputQuery>())).Returns(cityDistrictResponse);

            var result = await _controller.GetCityDistrictAsync(cityDistrictOutputQuery.Id);

            var okResult = result.As <OkObjectResult>();

            okResult.Value.Should().BeEquivalentTo(cityDistrictResponse);
        }
Ejemplo n.º 2
0
        public async Task CreateCityDistrictAsync_Should_Return_CreatedAtRouteResult_With_CityDistrictResponse()
        {
            var createCityDistrictRequest = new CreateCityDistrictRequest
            {
                Name         = "Name",
                PolishName   = "PolishName",
                CityId       = Guid.NewGuid(),
                ParentId     = Guid.NewGuid(),
                NameVariants = new List <string> {
                    "NameVariant"
                }
            };
            var createCityDistrictCommand = new CreateCityDistrictCommand(Guid.NewGuid(),
                                                                          createCityDistrictRequest.Name,
                                                                          createCityDistrictRequest.PolishName,
                                                                          createCityDistrictRequest.CityId,
                                                                          createCityDistrictRequest.ParentId,
                                                                          createCityDistrictRequest.NameVariants);
            var cityDistrictOutputQuery = new CityDistrictOutputQuery(createCityDistrictCommand.CityDistrictId,
                                                                      Array.Empty <byte>(),
                                                                      createCityDistrictCommand.Name,
                                                                      createCityDistrictCommand.PolishName,
                                                                      createCityDistrictCommand.CityId,
                                                                      createCityDistrictCommand.ParentId,
                                                                      createCityDistrictCommand.NameVariants);
            var cityDistrictResponse = new CityDistrictResponse(cityDistrictOutputQuery.Id,
                                                                cityDistrictOutputQuery.RowVersion,
                                                                cityDistrictOutputQuery.Name,
                                                                cityDistrictOutputQuery.PolishName,
                                                                cityDistrictOutputQuery.CityId,
                                                                cityDistrictOutputQuery.ParentId,
                                                                cityDistrictOutputQuery.NameVariants);

            _mapperMock.Setup(x =>
                              x.Map <CreateCityDistrictRequest, CreateCityDistrictCommand>(It.IsAny <CreateCityDistrictRequest>()))
            .Returns(createCityDistrictCommand);
            _communicationBusMock.Setup(x =>
                                        x.SendCommandAsync(It.IsAny <CreateCityDistrictCommand>(), It.IsAny <CancellationToken>()))
            .Returns(Task.CompletedTask);
            _getCityDistrictQueryHandlerMock
            .Setup(x => x.HandleAsync(It.IsAny <GetCityDistrictInputQuery>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(cityDistrictOutputQuery);
            _mapperMock.Setup(x => x.Map <CityDistrictOutputQuery, CityDistrictResponse>(It.IsAny <CityDistrictOutputQuery>())).Returns(cityDistrictResponse);

            var result = await _controller.CreateCityDistrictAsync(createCityDistrictRequest);

            var createdAtRouteResult = result.As <CreatedAtRouteResult>();

            createdAtRouteResult.Value.Should().BeEquivalentTo(cityDistrictResponse);
            createdAtRouteResult.RouteName.Should().BeEquivalentTo("GetCityDistrict");
            createdAtRouteResult.RouteValues.Should().BeEquivalentTo(new RouteValueDictionary(new { id = cityDistrictResponse.Id }));
        }
Ejemplo n.º 3
0
        public async Task UpdateCityDistrictAsync_Should_Return_OkObjectResult_With_CityDistrictResponse()
        {
            var rowVersion                = new byte[] { 1, 2, 4, 8, 16, 32, 64 };
            var cityDistrictId            = Guid.NewGuid();
            var updateCityDistrictRequest = new UpdateCityDistrictRequest
            {
                Id           = cityDistrictId,
                Name         = "Name",
                PolishName   = "PolishName",
                CityId       = Guid.NewGuid(),
                ParentId     = Guid.NewGuid(),
                NameVariants = new List <string> {
                    "NameVariant"
                }
            };
            var updateCityDistrictCommand = new UpdateCityDistrictCommand(updateCityDistrictRequest.Id,
                                                                          rowVersion,
                                                                          updateCityDistrictRequest.Name,
                                                                          updateCityDistrictRequest.PolishName,
                                                                          updateCityDistrictRequest.CityId,
                                                                          updateCityDistrictRequest.ParentId,
                                                                          updateCityDistrictRequest.NameVariants);
            var cityDistrictOutputQuery = new CityDistrictOutputQuery(updateCityDistrictCommand.CityDistrictId,
                                                                      new byte[] { 1, 2, 4, 8, 16, 32, 128 },
                                                                      updateCityDistrictCommand.Name,
                                                                      updateCityDistrictCommand.PolishName,
                                                                      updateCityDistrictCommand.CityId,
                                                                      updateCityDistrictCommand.ParentId,
                                                                      updateCityDistrictCommand.NameVariants);
            var cityDistrictResponse = new CityDistrictResponse(cityDistrictOutputQuery.Id,
                                                                cityDistrictOutputQuery.RowVersion,
                                                                cityDistrictOutputQuery.Name,
                                                                cityDistrictOutputQuery.PolishName,
                                                                cityDistrictOutputQuery.CityId,
                                                                cityDistrictOutputQuery.ParentId,
                                                                cityDistrictOutputQuery.NameVariants);

            _mapperMock.Setup(x => x.Map <UpdateCityDistrictRequest, UpdateCityDistrictCommand>(It.IsAny <UpdateCityDistrictRequest>()))
            .Returns(updateCityDistrictCommand);
            _communicationBusMock.Setup(x => x.SendCommandAsync(It.IsAny <UpdateCityDistrictCommand>(), It.IsAny <CancellationToken>()))
            .Returns(Task.CompletedTask);
            _getCityDistrictQueryHandlerMock
            .Setup(x => x.HandleAsync(It.IsAny <GetCityDistrictInputQuery>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(cityDistrictOutputQuery);
            _mapperMock.Setup(x => x.Map <CityDistrictOutputQuery, CityDistrictResponse>(It.IsAny <CityDistrictOutputQuery>())).Returns(cityDistrictResponse);

            var result = await _controller.UpdateCityDistrictAsync(cityDistrictId, updateCityDistrictRequest, rowVersion);

            var okObjectResult = result.As <OkObjectResult>();

            okObjectResult.Value.Should().BeEquivalentTo(cityDistrictResponse);
        }
Ejemplo n.º 4
0
        public async Task GetCityDistrictsAsync_Should_Return_OkObjectResult_With_CollectionResponse_With_CityDistrictResponses()
        {
            var getCityDistrictsRequest = new GetCityDistrictsRequest
            {
                Page       = 1,
                PageSize   = 100,
                CityId     = Guid.NewGuid(),
                Name       = "Name",
                PolishName = "PolishName",
                Sort       = "name:asc"
            };
            var getCityDistrictsInputQuery = new GetCityDistrictsInputQuery(getCityDistrictsRequest.Page,
                                                                            getCityDistrictsRequest.PageSize, getCityDistrictsRequest.Sort, getCityDistrictsRequest.Name,
                                                                            getCityDistrictsRequest.PolishName, getCityDistrictsRequest.CityId, null, new List <Guid>());
            var cityDistrictOutputQuery = new CityDistrictOutputQuery(Guid.NewGuid(), Array.Empty <byte>(),
                                                                      "Name", "PolishName", Guid.NewGuid(), Guid.NewGuid(), new List <string> {
                "NameVariant"
            });
            var cityDistrictOutputQueries = new Collection <CityDistrictOutputQuery> {
                cityDistrictOutputQuery
            };
            var collectionOutputQuery = new CollectionOutputQuery <CityDistrictOutputQuery>(cityDistrictOutputQueries.Count, cityDistrictOutputQueries);
            var cityDistrictResponses = cityDistrictOutputQueries.Select(x =>
                                                                         new CityDistrictResponse(x.Id, x.RowVersion, x.Name, x.PolishName, x.CityId, x.ParentId, x.NameVariants));
            var collectionResponse = new CollectionResponse <CityDistrictResponse>(cityDistrictOutputQueries.Count, cityDistrictResponses);

            _mapperMock.Setup(x => x.Map <GetCityDistrictsRequest, GetCityDistrictsInputQuery>(It.IsAny <GetCityDistrictsRequest>()))
            .Returns(getCityDistrictsInputQuery);
            _getCityDistrictsQueryHandlerMock
            .Setup(x => x.HandleAsync(It.IsAny <GetCityDistrictsInputQuery>(), It.IsAny <CancellationToken>()))
            .ReturnsAsync(collectionOutputQuery);
            _mapperMock
            .Setup(x =>
                   x.Map <CollectionOutputQuery <CityDistrictOutputQuery>, CollectionResponse <CityDistrictResponse> >(
                       It.IsAny <CollectionOutputQuery <CityDistrictOutputQuery> >()))
            .Returns(collectionResponse);

            var result = await _controller.GetCityDistrictsAsync(getCityDistrictsRequest);

            var okResult = result.As <OkObjectResult>();

            okResult.Value.Should().BeEquivalentTo(collectionResponse);
        }
Ejemplo n.º 5
0
        public async Task HandleAsync_Should_Return_CityDistrictOutputQuery()
        {
            var cityDistrict = CityDistrict.Builder()
                               .SetId(Guid.NewGuid())
                               .SetRowVersion(Array.Empty <byte>())
                               .SetName("Name")
                               .SetPolishName("PolishName")
                               .SetCityId(Guid.NewGuid())
                               .Build();
            var getCityDistrictResult = GetResult <CityDistrict> .Ok(cityDistrict);

            var cityDistrictOutputQuery = new CityDistrictOutputQuery(cityDistrict.Id, cityDistrict.RowVersion, cityDistrict.Name,
                                                                      cityDistrict.PolishName, cityDistrict.CityId, cityDistrict.ParentId, cityDistrict.NameVariants);

            _cityDistrictGetterServiceMock.Setup(x => x.GetByIdAsync(It.IsAny <Guid>()))
            .ReturnsAsync(getCityDistrictResult);
            _mapperMock.Setup(x => x.Map <CityDistrict, CityDistrictOutputQuery>(It.IsAny <CityDistrict>()))
            .Returns(cityDistrictOutputQuery);

            var result = await _queryHandler.HandleAsync(new GetCityDistrictInputQuery(cityDistrict.Id));

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