コード例 #1
0
        public async Task Post_NewObject_ReturnStatusAndUriToModels()
        {
            var controller = new TaskSubjectController(_loggerMock.Object, _mapper, _facadeMock.Object);

            var result = await controller.Post(new TaskSubjectCreateModel
            {
                Uid    = "1",
                Object = "o1"
            }, new ApiVersion(1, 0)) as CreatedAtActionResult;

            result.Should().NotBeNull();
            // ReSharper disable once PossibleNullReferenceException
            result.StatusCode.Should().Be(StatusCodes.Status201Created);
            result.ActionName.Should().Be("Get");
            result.RouteValues.Count.Should().Be(2);
            result.RouteValues.Should().Contain(routeKey => (routeKey.Value.ToString() == "1") && (routeKey.Key == "id"));
            result.RouteValues.Should().Contain(routeKey => routeKey.Value.ToString() == "1.0" && routeKey.Key == "version");
            (result.Value as TaskSubjectCreateModel).Should().NotBeNull();
            // ReSharper disable once PossibleNullReferenceException
            (result.Value as TaskSubjectCreateModel).Uid.Should().Be("1");
            // ReSharper disable once PossibleNullReferenceException
            (result.Value as TaskSubjectCreateModel).Object.Should().Be("o1");


            _facadeMock.Verify(
                action => action.CreateTaskSubjectAsync(
                    It.Is <TaskSubjectDto>(model => model.Uid == "1" && model.Object == "o1")),
                Times.Once);
        }
コード例 #2
0
        public void Get_NoValueLoadList_ReturnListModels()
        {
            var controller = new TaskSubjectController(_loggerMock.Object, _mapper, _facadeMock.Object);

            _facadeMock.Setup(action => action.GetTaskSubject()).Returns(new List <TaskSubjectDto>
            {
                new TaskSubjectDto
                {
                    Uid    = "1",
                    Object = "o1"
                },
                new TaskSubjectDto
                {
                    Uid    = "2",
                    Object = "o2"
                },
                new TaskSubjectDto
                {
                    Uid    = "3",
                    Object = "o3"
                }
            }).Verifiable();

            var result = controller.Get().ToList();

            result.Should().NotBeNull();
            result.Count().Should().Be(3);
            result.Should().Contain(item => item.Uid == "1" && item.Object == "o1");
            result.Should().Contain(item => item.Uid == "2" && item.Object == "o2");
            result.Should().Contain(item => item.Uid == "3" && item.Object == "o3");

            _facadeMock.Verify();
        }
コード例 #3
0
        public void Get_TaskSubjectIdLoadException_ThrowTheSameException()
        {
            var controller = new TaskSubjectController(_loggerMock.Object, _mapper, _facadeMock.Object);

            _facadeMock.Setup(action => action.GetTaskSubject(It.Is <string>(param => param == "1"))).Throws(new Exception("MyException")).Verifiable();

            Assert.Throws <Exception>(() => controller.Get("1"));
        }
コード例 #4
0
        public void Get_NoValuLoadException_ThrowTheSameException()
        {
            var controller = new TaskSubjectController(_loggerMock.Object, _mapper, _facadeMock.Object);

            _facadeMock.Setup(action => action.GetTaskSubject()).Throws(new Exception("MyException")).Verifiable();

            Assert.Throws <Exception>(() => controller.Get());
        }
コード例 #5
0
        public void Get_NoValuLoadNull_ReturnListModels()
        {
            var controller = new TaskSubjectController(_loggerMock.Object, _mapper, _facadeMock.Object);

            _facadeMock.Setup(action => action.GetTaskSubject()).Returns((List <TaskSubjectDto>)null).Verifiable();

            var result = controller.Get().ToList();

            result.Should().NotBeNull();
            result.Count().Should().Be(0);

            _facadeMock.Verify();
        }
コード例 #6
0
        public void Get_TaskSubjectIdLoadNull_ReturnNotFoundModel()
        {
            var controller = new TaskSubjectController(_loggerMock.Object, _mapper, _facadeMock.Object);

            _facadeMock.Setup(action => action.GetTaskSubject(It.Is <string>(param => param == "1")))
            .Returns((TaskSubjectDto)null).Verifiable();

            var result = controller.Get("1");

            result.Should().NotBeNull();
            (result.Result as NotFoundResult).Should().NotBeNull();

            _facadeMock.Verify();
        }
コード例 #7
0
        public void Post_NewObjectLoadException_ReturnException()
        {
            var controller = new TaskSubjectController(_loggerMock.Object, _mapper, _facadeMock.Object);

            _facadeMock.Setup((action) => action.CreateTaskSubjectAsync(It.IsAny <TaskSubjectDto>())
                              ).Throws(new Exception("MyException"));

            Assert.Throws <Exception>(() =>
            {
                controller.Post(new TaskSubjectCreateModel
                {
                    Uid    = "1",
                    Object = "o1"
                }, new ApiVersion(1, 0)).GetAwaiter().GetResult();
            });
        }
コード例 #8
0
        public void Get_TaskSubjectId_ReturnModel()
        {
            var controller = new TaskSubjectController(_loggerMock.Object, _mapper, _facadeMock.Object);

            _facadeMock.Setup(action => action.GetTaskSubject(It.Is <string>(param => param == "1")))
            .Returns(new TaskSubjectDto
            {
                Uid    = "1",
                Object = "o1"
            }).Verifiable();

            var result = controller.Get("1").Value;

            result.Should().NotBeNull();
            result.Uid.Should().Be("1");
            result.Object.Should().Be("o1");

            _facadeMock.Verify();
        }