public void Index_WhenPostWithWorkLogs_ReturnsCorrectResult(
            Mock <IClickWrapService> clickWrapService,
            Account account,
            User user)
        {
            // Arrange
            var clickWrapExpected = JsonConvert.SerializeObject(new { clickWrapId = "1" });

            InitContext(account, user);
            clickWrapService.Setup(c => c.CreateTimeTrackClickWrap(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <int[]>()))
            .Returns(() => new HttpResponseMessage(HttpStatusCode.OK)
            {
                Content = new StringContent(clickWrapExpected)
            });

            var sut = new ClickWrapController(clickWrapService.Object);

            // Act
            var result = sut.Index(new RequestClickWrapModel {
                WorkLogs = new[] { 1, 2, 4 }
            });

            // Assert
            result.Should().BeEquivalentTo(new OkObjectResult
                                               (new ResponseClickWrapModel
            {
                ClickWrap       = JsonConvert.DeserializeObject(clickWrapExpected),
                DocuSignBaseUrl = account.BaseUri
            }));
        }
        public void Index_WhenPostWithModelStateInvalid_ReturnsBadRequestResult()
        {
            // Arrange
            var sut = new ClickWrapController(_clickWrapService.Object);
            // Act
            var result = sut.Index(null);

            // Assert
            Assert.IsType <BadRequestObjectResult>(result);
        }
 public ClickWrapControllerTests()
 {
     _clickWrapService = new Mock <IClickWrapService>();
     _sut = new ClickWrapController(_clickWrapService.Object);
 }