public void PostToCreatePresenterIsInvalid()
        {
            var mockNewPresenter = new PresenterCreationDTO(null, 1990, 2020);
            var mockRepo         = new Mock <IDataStore>();
            var sut = new ApiPresentersController(mockRepo.Object);

            sut.ModelState.AddModelError("error", "Oops something went wrong");
            IActionResult result = sut.PostNewPresenter(mockNewPresenter);

            Assert.IsType <BadRequestObjectResult>(result);
        }
Ejemplo n.º 2
0
        public PresentersDto AddNewPresenter(PresenterCreationDTO newPresenter)
        {
            int id = Int32.Parse(Presenters.Max((presenter) => presenter.Id)) + 1;


            PresentersDto presenterToAdd = new PresentersDto(id.ToString(), newPresenter.Name, newPresenter.BirthYear,
                                                             newPresenter.DeathYear);

            Presenters.Add(presenterToAdd);
            return(presenterToAdd);
        }
        public IActionResult PostNewPresenter([FromBody] PresenterCreationDTO newPresenter)
        {
            PresentersDto createdPresenter = myData.AddNewPresenter(newPresenter);

            if (ModelState.IsValid)
            {
                return(CreatedAtAction(nameof(GetPresentersById), new { id = createdPresenter.Id }, createdPresenter));
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
        public void PostToCreatePresenterIsValid()
        {
            var mockNewPresenter     = new PresenterCreationDTO("Happy Davies", 1990, 2020);
            var mockCreatedPresenter = new PresentersDto("3", "Happy Davies", 1990, 2020);
            var mockRepo             = new Mock <IDataStore>();

            mockRepo.Setup((p) => p.AddNewPresenter(mockNewPresenter)).Returns(mockCreatedPresenter);

            var           sut    = new ApiPresentersController(mockRepo.Object);
            IActionResult result = sut.PostNewPresenter(mockNewPresenter);

            Assert.IsType <CreatedAtActionResult>(result);
        }