Esempio n. 1
0
        public async Task <IHttpActionResult> PostRemarketings(SegmentRemarketingCreateViewModel model)
        {
            if (model == null)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var advertiser = await _advertiserService.GetAdvertiser(model.AdvertiserUuid.GetValueOrDefault(Guid.Empty)).ConfigureAwait(false);

            if (advertiser == null)
            {
                return(BadRequest("The specified advertiser was not found."));
            }

            var segment = _mapping.Map <Segment>(model);
            await _segmentService.CreateSegment(segment).ConfigureAwait(false);

            segment = await _segmentService.GetSegment(segment.SegmentId).ConfigureAwait(false);

            var segmentViewModel = _mapping.Map <SegmentViewModel>(segment);

            return(CreatedAtRoute("Segments.GetById", new { Id = segmentViewModel.SegmentId }, segmentViewModel));
        }
Esempio n. 2
0
        public async Task PostRemarketings_ShouldReturnOk()
        {
            // Arrange
            var model = new SegmentRemarketingCreateViewModel
            {
                AdvertiserUuid     = Guid.NewGuid(),
                Name               = "WJsHome",
                Url                = "www.google.com",
                RemarketingRecency = 1
            };

            Mock.Mock <IAdvertiserService>().Setup(x => x.GetAdvertiser(It.IsAny <Guid>()))
            .Returns(Task.FromResult(new Advertiser()));
            Mock.Mock <ISegmentService>().Setup(x => x.GetSegment(It.IsAny <int>()))
            .Returns(Task.FromResult(new Segment()));

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

            // Assert
            Assert.That(retVal, Is.Not.Null);
            Assert.That(retVal, Is.TypeOf <CreatedAtRouteNegotiatedContentResult <SegmentViewModel> >());
            Mock.Mock <ISegmentService>().Verify(x => x.CreateSegment(It.IsAny <Segment>()), Times.Once);
        }