Example #1
0
        public void DetailsWhenIdNull()
        {
            // ARRANGE
            var dummyProjects = new List <Project>
            {
                new Project
                {
                    ProjectId   = 1,
                    Description = "Dummy Project 1"
                },
                new Project
                {
                    ProjectId   = 2,
                    Description = "Dummy Project 2"
                }
            }.AsQueryable();

            _projectSet = MockingHelper.Create(dummyProjects);

            _db.Setup(c => c.Projects).Returns(_projectSet.Object);

            // arrange nullable int to pass as an argument
            int?nullId = null;

            // ACT
            var result = _controller.Details(nullId) as HttpStatusCodeResult;

            // ASSERT
            Assert.AreEqual((int)HttpStatusCode.BadRequest, result.StatusCode);
        }
Example #2
0
        public void Details_Returns_A_View()
        {
            var projectId = 42;
            var result    = underTest.Details(projectId);

            Assert.IsType <ViewResult>(result);
        }
Example #3
0
        private ProjectViewModel ConvertActionResultToProjectModel(int id)
        {
            var result = ProjectsController.Details(id) as ViewResult;
            var model  = result.Model as ProjectViewModel;

            return(model);
        }
        public async Task Details_should_return_bad_request_for_missing_id()
        {
            var projectServiceMock = new Mock <IProjectManager>();
            var logger             = new Mock <ILogger <ProjectsController> >();
            var controller         = new ProjectsController(logger.Object, projectServiceMock.Object);
            var id = (int?)null;

            var result = await controller.Details(id);

            Assert.IsType <BadRequestResult>(result);
        }
        public async Task Details_should_return_not_found_for_missing_project()
        {
            var projectServiceMock = new Mock <IProjectManager>();
            var logger             = new Mock <ILogger <ProjectsController> >();

            projectServiceMock.Setup(c => c.GetByIdAsync(It.IsAny <int>()))
            .ReturnsAsync(() => null);

            var controller = new ProjectsController(logger.Object, projectServiceMock.Object);

            var id = -1;

            var result = await controller.Details(id);

            Assert.IsType <NotFoundResult>(result);
        }
        public async Task Details_should_return_detailsview_for_existing_project()
        {
            var model = new ProjectDTO();
            var projectServiceMock = new Mock <IProjectManager>();
            var logger             = new Mock <ILogger <ProjectsController> >();

            projectServiceMock.Setup(c => c.GetByIdAsync(It.IsAny <int>()))
            .ReturnsAsync(() => model);

            var controller = new ProjectsController(logger.Object, projectServiceMock.Object);
            var id         = 10;

            var result = await controller.Details(id) as ViewResult;

            var viewName = result.ViewName;

            Assert.True(string.IsNullOrEmpty(viewName) || viewName == "Details");
            Assert.Equal(model, result.Model);
        }
        public void Details()
        {
            //Selecting Project from DB with Id = 1
            var project = db.Projects.Find(1);

            //Creating instance of ProjectController
            var projectController = new ProjectsController();

            //Calling Details() function from ProjectController and casted it to ViewResult
            ViewResult result = projectController.Details(1) as ViewResult;

            //Casting View model to actual object type in order to access its attributes for comparison
            var pr = (Project)result.ViewData.Model;

            //Checking if instance type from View is equal to type Project
            Assert.IsInstanceOfType(result.ViewData.Model, typeof(Project));

            //Checking if project Id we got from our View is equal to our selected Project from DB
            Assert.AreEqual(project.Id, pr.Id);
        }
Example #8
0
        public void WhenTheProjectDoesNotExistTheResultShouldGiveAnError()
        {
            var result = ProjectsController.Details(1) as HttpNotFoundResult;

            result.StatusDescription.Should().Be("Project does not exist");
        }
 public void Details_Should_Return_NotFound()
 {
     Assert.ThrowsAsync <RequestedResourceNotFoundException>(async() => await _controller.Details(21));
 }