Exemplo n.º 1
0
        public async Task When_Calling_GetArtists_Then_Should_Return_Artists()
        {
            // Arrange
            EntityList <Artist> artists = new EntityList <Artist>()
            {
                PageData = new List <Artist>()
                {
                    TestData.GetArtist()
                }, FilteredCount = 1, TotalCount = 1
            };
            ArtistListDto artistsDto = new ArtistListDto()
            {
                PageData = new List <ArtistListItemDto>()
                {
                    TestData.GetArtistListItemDto()
                }, FilteredCount = 1, TotalCount = 1
            };

            // Action
            this.artistRepositoryMock.Setup(s => s.GetAllAsync(
                                                f => true,
                                                It.IsAny <Func <IQueryable <Artist>, IOrderedQueryable <Artist> > >(),
                                                null,
                                                1,
                                                100)).Returns(Task.FromResult(artists));

            var result = await this.underTest.GetArtistsAsync();

            var expected = JsonConvert.SerializeObject(artistsDto);
            var actual   = JsonConvert.SerializeObject(result);

            // Asserts
            Assert.AreEqual(expected, actual);
        }
Exemplo n.º 2
0
        public async Task <ArtistListDto> GetArtistsAsync(
            int?page     = Constants.Contracts.Services.Artist.Operations.Gets.PARAMETER_PAGE,
            int?pageSize = Constants.Contracts.Services.Artist.Operations.Gets.PARAMETER_PAGE_SIZE)
        {
            ArtistListDto result = new ArtistListDto();

            var artists = await this.artistRepository.GetAllAsync(
                query => true,
                query => query.OrderBy(x => x.Name),
                null,
                page,
                pageSize);

            if (artists == null)
            {
                return(result);
            }

            result.FilteredCount = artists.FilteredCount;
            result.TotalCount    = artists.TotalCount;

            foreach (var artist in artists.PageData)
            {
                result.PageData.Add(new ArtistListItemDto {
                    Id = artist.Id, Name = artist.Name
                });
            }

            return(result);
        }
Exemplo n.º 3
0
        public async Task <IActionResult> List([FromQuery] ArtistListDto dto)
        {
            var data   = _dtoParseService.Parse(dto);
            var result = await _artistService.List(data);

            return(Content(result, "application/json"));
        }