示例#1
0
        public async Task <PagedListViewModel <SegmentListViewModel> > Get([FromUri] SegmentQueryViewModel model)
        {
            var segmentQueryOptions = _mapping.Map <SegmentQueryOptions>(model);
            var deals = await _segmentService.GetSegments(segmentQueryOptions).ToPagedListAsync(model).ConfigureAwait(false);

            return(_mapping.Map <PagedListViewModel <SegmentListViewModel> >(deals));
        }
示例#2
0
        public async Task Get_ShouldReturnListOfSegments()
        {
            // Arrange
            var userId = Guid.NewGuid();
            var model  = new SegmentQueryViewModel {
                UserId = userId
            };
            var buyerAccount = new BuyerAccount {
                BuyerAccountId = 1
            };
            var advertiser = new Advertiser {
                BuyerAccountId = buyerAccount.BuyerAccountId, BuyerAccount = buyerAccount, AdvertiserId = 1
            };
            var segment1 = new Segment {
                AdvertiserId = advertiser.AdvertiserId, SegmentName = "segment a"
            };
            var segment2 = new Segment {
                AdvertiserId = advertiser.AdvertiserId, SegmentName = "segment b"
            };
            var segments = new List <Segment> {
                segment1, segment2
            };

            Mock.Mock <ISegmentService>().Setup(x => x.GetSegments(It.IsAny <SegmentQueryOptions>()))
            .Returns(segments.ToAsyncEnumerable());

            // Act
            var retVal = await Controller.Get(model);

            // Assert
            Assert.That(retVal, Is.Not.Null);
            Assert.That(retVal.TotalItemCount, Is.EqualTo(2));
        }