예제 #1
0
        public async Task PatchThirdParties_ShouldReturnOk()
        {
            // Arrange
            var id    = 1;
            var model = new SegmentThirdPartyPatchViewModel
            {
                Name = "WJsHome"
            };

            Mock.Mock <ISegmentService>().Setup(x => x.GetSegment(id))
            .Returns(Task.FromResult(new Segment()));

            // Act
            var retVal = await Controller.PatchThirdParties(id, model);

            // Assert
            Assert.That(retVal, Is.Not.Null);
            Assert.That(retVal, Is.TypeOf <OkResult>());
            Mock.Mock <ISegmentService>().Verify(x => x.UpdateSegment(It.IsAny <Segment>()), Times.Once);
        }
예제 #2
0
        public async Task <IHttpActionResult> PatchThirdParties(int id, SegmentThirdPartyPatchViewModel model)
        {
            if (model == null)
            {
                return(BadRequest());
            }

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

            var segment = await _segmentService.GetSegment(id).ConfigureAwait(false);

            if (segment == null)
            {
                return(NotFound());
            }

            _mapping.Map(model, segment);
            await _segmentService.UpdateSegment(segment).ConfigureAwait(false);

            return(Ok());
        }