public void GetUserProjectsTest()
    {
        // Arrange
        var controller = new UserProjectController();

        controller.Request       = new HttpRequestMessage();
        controller.Configuration = new HttpConfiguration();

        foreach (var testUserId in GetTestUserIds())
        {
            //Arrange specific user
            var identity = new GenericIdentity(testUserId, "");
            identity.AddClaim(new Claim(ClaimTypes.NameIdentifier, testUserId.ToString()));
            identity.AddClaim(new Claim(ClaimTypes.Name, testUserId.ToString()));
            var principal = new GenericPrincipal(identity, roles: new string[] { });
            var user      = new ClaimsPrincipal(principal);
            controller.User = user;
            // Act
            var response = controller.GetProjects();

            // Assert
            List <ProjectDto> projects;
            Assert.IsTrue(response.TryGetContentValue <List <ProjectDto> >(out projects));
            //Assert.AreEqual(5, projects.Count); // Check projects count
            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "GetUserProjects : id is {0} and count is {1}", testUserId, projects.Count);
            System.Diagnostics.Debug.WriteLine("GetUserProjects : for id {0} ProjectCount = {1}", testUserId, projects.Count);
        }
    }
Example #2
0
        public async Task AddUserProjectShouldAddUserProject()
        {
            var userProject = new UserProject();

            _projectBLMock.Setup(x => x.AddUserProjectAsync(It.IsAny <UserProject>())).Returns(Task.FromResult <UserProject>(userProject));
            var userProjectController = new UserProjectController(_projectBLMock.Object);
            var result = await userProjectController.AddUserProjectAsync(new UserProject());

            Assert.IsAssignableFrom <CreatedAtActionResult>(result);
            _projectBLMock.Verify(x => x.AddUserProjectAsync((It.IsAny <UserProject>())));
        }
Example #3
0
        public async Task GetUserProjectByID_ShouldReturnNotFound_WhenUserProjectIsNull()
        {
            int         id          = -2;
            UserProject userProject = null;

            _projectBLMock.Setup(i => i.GetUserProjectByIDAsync(id)).ReturnsAsync(userProject);
            UserProjectController userProjectController = new UserProjectController(_projectBLMock.Object);
            var result = await userProjectController.GetUserProjectByIDAsync(id);

            Assert.IsType <NotFoundResult>(result);
        }
Example #4
0
        public async Task UpdateUserProjectAsync_ShouldReturnStatusCode500_WhenUserProjectIsInvalid()
        {
            int         id          = -2;
            UserProject userProject = null;

            _projectBLMock.Setup(i => i.UpdateUserProjectAsync(userProject)).Throws(new Exception());
            UserProjectController userProjectController = new UserProjectController(_projectBLMock.Object);
            var result = await userProjectController.UpdateUserProjectAsync(id, userProject);

            Assert.IsType <StatusCodeResult>(result);
            Assert.Equal(500, ((StatusCodeResult)result).StatusCode);
        }
Example #5
0
        public async Task UpdateUserProjectShouldUpdateUserProject()
        {
            var userProject = new UserProject {
                Id = 1
            };

            _projectBLMock.Setup(x => x.UpdateUserProjectAsync(It.IsAny <UserProject>())).Returns(Task.FromResult(userProject));
            var userProjectController = new UserProjectController(_projectBLMock.Object);
            var result = await userProjectController.UpdateUserProjectAsync(userProject.Id, userProject);

            Assert.IsAssignableFrom <NoContentResult>(result);
            _projectBLMock.Verify(x => x.UpdateUserProjectAsync(userProject));
        }
Example #6
0
        public async Task GetUserProjectByIdShouldGetUserProject()
        {
            var userProjectId = 1;
            var userProject   = new UserProject {
                Id = userProjectId
            };

            _projectBLMock.Setup(x => x.GetUserProjectByIDAsync(It.IsAny <int>())).Returns(Task.FromResult(userProject));
            var userProjectController = new UserProjectController(_projectBLMock.Object);
            var result = await userProjectController.GetUserProjectByIDAsync(userProjectId);

            Assert.Equal(userProjectId, ((UserProject)((OkObjectResult)result).Value).Id);
            _projectBLMock.Verify(x => x.GetUserProjectByIDAsync(userProjectId));
        }
Example #7
0
        public async Task GetUserProjectsAsyncShouldReturnUserProjects()
        {
            //arrange
            UserProject userProject = new UserProject();

            _projectBLMock.Setup(i => i.GetUserProjectsAsync());
            UserProjectController userProjectController = new UserProjectController(_projectBLMock.Object);

            //act
            var result = await userProjectController.GetUserProjectsAsync();

            //assert
            Assert.IsType <OkObjectResult>(result);
        }
Example #8
0
        public async Task AddUserProjectAsync_ShouldReturnStatusCode400_WhenUserProjectIsInvalid()
        {
            //arrange
            var         projectBLMock = new Mock <IProjectBL>();
            UserProject userProject   = null;

            projectBLMock.Setup(i => i.AddUserProjectAsync(userProject)).Throws(new Exception());
            UserProjectController userProjectController = new UserProjectController(projectBLMock.Object);

            //act
            var result = await userProjectController.AddUserProjectAsync(userProject);

            //assert
            Assert.IsType <StatusCodeResult>(result);
            Assert.Equal(400, ((StatusCodeResult)result).StatusCode);
        }
    public void GetUserProjectsTest()
    {
        // Arrange
        var userProviderMock = new Mock <IUserProvider>();

        userProviderMock.Setup(userProvider => userProvider.GetUserId())
        .Returns("4e934c03-b02f-47bf-8bdf-e1c98a737cc6");
        var controller = new UserProjectController(userProviderMock.Object);

        controller.Request       = new HttpRequestMessage();
        controller.Configuration = new HttpConfiguration();
        foreach (var testUserId in GetTestUserIds())
        {
            // Act
            var response = controller.GetProjects();
            // Assert
            List <ProjectDto> projects;
            Assert.IsTrue(response.TryGetContentValue <List <ProjectDto> >(out projects));
            //Assert.AreEqual(5, projects.Count); // Check projects count
            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "GetUserProjects : id is {0} and count is {1}", testUserId, projects.Count);
            System.Diagnostics.Debug.WriteLine("GetUserProjects : for id {0} ProjectCount = {1}", testUserId, projects.Count);
        }
    }