示例#1
0
        public void ConvertToPageVersionResponse()
        {
            var pageVersion = _fixture.Create <PageVersion>();
            PageVersionResponse versionResponse = _converter.ConvertToPageVersionResponse(pageVersion);

            versionResponse.ShouldHaveSamePropertyValuesAs(pageVersion);
        }
        public async Task Add()
        {
            // given
            int      pageId   = 1;
            string   text     = "text";
            string   author   = "author";
            DateTime dateTime = DateTime.UtcNow;

            var repoPageVersion = new PageVersion()
            {
                PageId   = pageId,
                DateTime = dateTime,
                Author   = author,
                Text     = text
            };

            _pageVersionRepositoryMock
            .AddNewVersionAsync(pageId, text, author, dateTime)
            .Returns(repoPageVersion);

            // when
            PageVersionResponse actualResponse = await _pageVersionsController.Add(pageId, text, author, dateTime);

            // then
            actualResponse.PageId.ShouldBe(pageId);
            actualResponse.Text.ShouldBe(text);
            actualResponse.Author.ShouldBe(author);
            actualResponse.DateTime.ShouldBe(dateTime);

            await _pageVersionRepositoryMock
            .Received(1)
            .AddNewVersionAsync(pageId, text, author, dateTime);
        }
        public async Task GetLatestVersion()
        {
            // given
            PageVersion pageVersion = _fixture.Create <PageVersion>();
            int         pageId      = pageVersion.PageId;

            _pageVersionRepositoryMock
            .GetLatestVersionAsync(pageId)
            .Returns(pageVersion);

            // when
            PageVersionResponse response = await _pageVersionsController.GetLatestVersion(pageId);

            // then
            response.ShouldNotBeNull();
            response.PageId.ShouldBe(pageId);
            response.Text.ShouldBe(pageVersion.Text);

            _pageVersionRepositoryMock
            .Received(1)
            .GetLatestVersionAsync(pageId);

            _objectsConverterMock
            .Received(1)
            .ConvertToPageVersionResponse(pageVersion);
        }
        public async Task GetById()
        {
            // given
            PageVersion pageVersion = _fixture.Create <PageVersion>();
            Guid        versionId   = pageVersion.Id;

            _pageVersionRepositoryMock
            .GetByIdAsync(versionId)
            .Returns(pageVersion);

            // when
            PageVersionResponse actualResponse = await _pageVersionsController.GetById(versionId);

            // then
            actualResponse.ShouldNotBeNull();
            actualResponse.Id.ShouldBe(versionId);

            await _pageVersionRepositoryMock
            .Received(1)
            .GetByIdAsync(versionId);

            _objectsConverterMock
            .Received(1)
            .ConvertToPageVersionResponse(pageVersion);
        }
示例#5
0
        public async Task Add()
        {
            // given
            int      pageId   = 1;
            string   text     = "text";
            string   author   = "author";
            DateTime dateTime = DateTime.UtcNow;

            var repoPageVersion = new PageVersion()
            {
                PageId   = pageId,
                DateTime = dateTime,
                Author   = author,
                Text     = text
            };

            _pageVersionRepositoryMock
            .AddNewVersionAsync(pageId, text, author, dateTime)
            .Returns(repoPageVersion);

            // when
            ActionResult <PageVersionResponse> actionResult = await _pageVersionsController.Add(pageId, text, author, dateTime);

            // then
            actionResult.ShouldBeCreatedAtActionResult();

            PageVersionResponse response = actionResult.CreatedAtActionResultValue();

            response.PageId.ShouldBe(pageId);
            response.Text.ShouldBe(text);
            response.Author.ShouldBe(author);
            response.DateTime.ShouldBe(dateTime);
        }
        public async Task <ActionResult <PageVersionResponse> > Add(int pageId, string text, string author, DateTime?dateTime = null)
        {
            PageVersion pageVersion = await _pageVersionRepository.AddNewVersionAsync(pageId, text, author, dateTime);

            PageVersionResponse response = _objectsConverter.ConvertToPageVersionResponse(pageVersion);

            return(CreatedAtAction(nameof(Add), response));
        }
        public async Task <ActionResult <PageVersionResponse> > Get(Guid id)
        {
            PageVersion pageVersion = await _pageVersionRepository.GetByIdAsync(id);

            PageVersionResponse responses = _objectsConverter.ConvertToPageVersionResponse(pageVersion);

            return(Ok(responses));
        }
        public async Task <ActionResult <PageVersionResponse> > GetLatestVersion(int pageId)
        {
            PageVersion latestPageVersion = await _pageVersionRepository.GetLatestVersionAsync(pageId);

            if (latestPageVersion == null)
            {
                return(null);
            }

            PageVersionResponse response = _objectsConverter.ConvertToPageVersionResponse(latestPageVersion);

            return(Ok(response));
        }
示例#9
0
        public async Task GetById()
        {
            // given
            PageVersion pageVersion = _fixture.Create <PageVersion>();
            Guid        versionId   = pageVersion.Id;

            _pageVersionRepositoryMock
            .GetByIdAsync(versionId)
            .Returns(pageVersion);

            // when
            ActionResult <PageVersionResponse> actionResult = await _pageVersionsController.Get(versionId);

            // then
            actionResult.ShouldBeOkObjectResult();

            PageVersionResponse response = actionResult.GetOkObjectResultValue();

            response.ShouldNotBeNull();
            response.Id.ShouldBe(versionId);
        }
示例#10
0
        public async Task GetLatestVersion()
        {
            // given
            PageVersion pageVersion = _fixture.Create <PageVersion>();
            int         pageId      = pageVersion.PageId;

            _pageVersionRepositoryMock
            .GetLatestVersionAsync(pageId)
            .Returns(pageVersion);

            // when
            ActionResult <PageVersionResponse> actionResult = await _pageVersionsController.GetLatestVersion(pageId);

            // then
            actionResult.ShouldBeOkObjectResult();

            PageVersionResponse response = actionResult.GetOkObjectResultValue();

            response.ShouldNotBeNull();
            response.PageId.ShouldBe(pageId);
            response.Text.ShouldBe(pageVersion.Text);
        }