public void TestRetrieveTaskByProjectId_NegativeTaskId()
        {
            var context = new Test_Project_ManagerContext();

            var controller = new TaskController(new BC.TaskBC(context));
            var result     = controller.RetrieveTaskByProjectId(-12345) as JSendResponse;
        }
        public void TestGetProjects_Success()
        {
            var context = new Test_Project_ManagerContext();

            context.Projects.Add(new DAC.Project()
            {
                Project_ID   = 1234,
                Project_Name = "MyProject",
                Start_Date   = DateTime.Now,
                End_Date     = DateTime.Now.AddDays(5),
                Priority     = 3
            });
            context.Projects.Add(new DAC.Project()
            {
                Project_ID   = 12345,
                Project_Name = "MyProject",
                Start_Date   = DateTime.Now,
                End_Date     = DateTime.Now.AddDays(5),
                Priority     = 3
            });


            var controller = new ProjectController(new BC.ProjectBC(context));
            var result     = controller.RetrieveProjects() as JSendResponse;

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.Data, typeof(List <Project>));
            Assert.AreEqual((result.Data as List <Project>).Count, 2);
        }
        public void TestDeleteProject_CompletedTasksGreater()
        {
            var context = new Test_Project_ManagerContext();
            var users   = new TestDbSet <DAC.User>();

            users.Add(new DAC.User()
            {
                Employee_ID = "375543",
                First_Name  = "Robert",
                Last_Name   = "Morin",
                User_ID     = 123,
                Task_ID     = 123
            });
            context.Users = users;
            Models.Project testProject = new Models.Project()
            {
                ProjectId          = 234,
                NoOfCompletedTasks = 10,
                NoOfTasks          = 5,
                Priority           = 1,
                ProjectEndDate     = DateTime.Now.AddDays(10),
                ProjectStartDate   = DateTime.Now,
                ProjectName        = "TEST",
                User = new User()
                {
                    EmployeeId = 123.ToString(),
                    FirstName  = "Riddhi",
                    LastName   = "Roy Choudhury",
                    ProjectId  = 234,
                    UserId     = 123
                }
            };
            var controller = new ProjectController(new BC.ProjectBC(context));
            var result     = controller.DeleteProjectDetails(testProject) as JSendResponse;
        }
        public void TestGetUser_Success()
        {
            var context = new Test_Project_ManagerContext();
            var users   = new TestDbSet <DAC.User>();

            users.Add(new DAC.User()
            {
                Employee_ID = "418220",
                First_Name  = "Prateek",
                Last_Name   = "Gangopadhyay",
                Project_ID  = 123,
                Task_ID     = 123,
                User_ID     = 418220
            });
            users.Add(new DAC.User()
            {
                Employee_ID = "503322",
                First_Name  = "Khushboo",
                Last_Name   = "Jain",
                Project_ID  = 1234,
                Task_ID     = 1234,
                User_ID     = 503322
            });
            context.Users = users;

            var controller = new UserController(new BC.UserBC(context));
            var result     = controller.GetUser() as JSendResponse;

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.Data, typeof(List <User>));
            Assert.AreEqual((result.Data as List <User>).Count, 2);
        }
        public void TestUpdateUser_Success()
        {
            var context = new Test_Project_ManagerContext();
            var users   = new TestDbSet <DAC.User>();

            users.Add(new DAC.User()
            {
                Employee_ID = "503322",
                First_Name  = "Khushboo",
                Last_Name   = "Jain",
                Project_ID  = 1234,
                Task_ID     = 1234,
                User_ID     = 503322
            });
            context.Users = users;

            var user = new Models.User();

            user.FirstName  = "Khush";
            user.LastName   = "jain";
            user.EmployeeId = "123";
            user.UserId     = 503322;

            var controller = new UserController(new BC.UserBC(context));
            var result     = controller.UpdateUserDetails(user) as JSendResponse;

            Assert.IsNotNull(result);
            Assert.AreEqual((context.Users.Local[0]).First_Name.ToUpper(), "KHUSH");
        }
        public void TestDeleteTask_NullTaskObject()
        {
            var context = new Test_Project_ManagerContext();

            var controller = new TaskController(new BC.TaskBC(context));
            var result     = controller.DeleteTaskDetails(null) as JSendResponse;
        }
        public void TestUpdateProject_UserNullInProject()
        {
            var context = new Test_Project_ManagerContext();
            var users   = new TestDbSet <DAC.User>();

            users.Add(new DAC.User()
            {
                Employee_ID = "375543",
                First_Name  = "Robert",
                Last_Name   = "Morin",
                User_ID     = 123,
                Task_ID     = 123
            });
            context.Users = users;
            Models.Project testProject = new Models.Project()
            {
                ProjectId          = 222,
                NoOfCompletedTasks = 4,
                NoOfTasks          = 5,
                Priority           = 1,
                ProjectEndDate     = DateTime.Now.AddDays(10),
                ProjectStartDate   = DateTime.Now,
                ProjectName        = "TEST",
                User = null
            };
            var controller = new ProjectController(new BC.ProjectBC(context));
            var result     = controller.UpdateProjectDetails(testProject) as JSendResponse;
        }
        public void TestDeleteProjects_Success()
        {
            var context = new Test_Project_ManagerContext();
            var tasks   = new TestDbSet <DAC.Task>();

            tasks.Add(new DAC.Task()
            {
                Task_ID        = 1,
                Task_Name      = "task1",
                Parent_Task_ID = 123674,
                Project_ID     = 34856,
                Start_Date     = DateTime.Now,
                End_Date       = DateTime.Now.AddDays(2),
                Priority       = 10,
                Status         = 0
            });
            context.Tasks = tasks;
            var testTask = new Models.Task()
            {
                TaskId     = 1,
                Task_Name  = "task1",
                Parent_ID  = 123674,
                Project_ID = 34856,
                Start_Date = DateTime.Now,
                End_Date   = DateTime.Now.AddDays(2),
                Priority   = 10,
                Status     = 0
            };

            var controller = new TaskController(new BC.TaskBC(context));
            var result     = controller.DeleteTaskDetails(testTask) as JSendResponse;

            Assert.IsNotNull(result);
            Assert.AreEqual((context.Tasks.Local[0]).Status, 1);
        }
        public void TestInsertUser_InvalidProjectIdFormat()
        {
            var context = new Test_Project_ManagerContext();
            var users   = new TestDbSet <DAC.User>();

            users.Add(new DAC.User()
            {
                Employee_ID = "418220",
                First_Name  = "Prateek",
                Last_Name   = "Gangopadhyay",
                Project_ID  = 123,
                Task_ID     = 123,
                User_ID     = 418220
            });
            users.Add(new DAC.User()
            {
                Employee_ID = "503322",
                First_Name  = "Khushboo",
                Last_Name   = "Jain",
                Project_ID  = 1234,
                Task_ID     = 1234,
                User_ID     = 503322
            });
            context.Users = users;

            var user = new Models.User();

            user.ProjectId = -1;

            var controller = new UserController(new BC.UserBC(context));
            var result     = controller.AddUserDetails(user) as JSendResponse;
        }
        public void TestDeleteTask_NegativeTaskId()
        {
            var context = new Test_Project_ManagerContext();

            ProjectManager.Models.Task task = new Models.Task();
            task.TaskId = -234;
            var controller = new TaskController(new BC.TaskBC(context));
            var result     = controller.DeleteTaskDetails(task) as JSendResponse;
        }
        public void TestInsertTask_NegativeTaskParentId()
        {
            var context = new Test_Project_ManagerContext();

            ProjectManager.Models.Task task = new Models.Task();
            task.Parent_ID = -234;
            var controller = new TaskController(new BC.TaskBC(context));
            var result     = controller.AddTaskDetails(task) as JSendResponse;
        }
        public void TestRetrieveTaskByProjectId_Success()
        {
            var context     = new Test_Project_ManagerContext();
            var tasks       = new TestDbSet <DAC.Task>();
            var users       = new TestDbSet <DAC.User>();
            var parentTasks = new TestDbSet <DAC.ParentTask>();

            parentTasks.Add(new DAC.ParentTask()
            {
                Parent_Task_ID   = 12345,
                Parent_Task_Name = "ANB"
            });
            context.ParentTasks = parentTasks;
            users.Add(new DAC.User()
            {
                Employee_ID = "375543",
                First_Name  = "Riddhi",
                Last_Name   = "Roy Choudhury",
                User_ID     = 123,
                Task_ID     = 12345,
                Project_ID  = 1234
            });
            context.Users = users;
            tasks.Add(new DAC.Task()
            {
                Project_ID     = 12345,
                Parent_Task_ID = 12345,
                Task_ID        = 12345,
                Task_Name      = "TEST",
                Priority       = 1,
                Status         = 1,
                Start_Date     = DateTime.Now,
                End_Date       = DateTime.Now.AddDays(5)
            });
            tasks.Add(new DAC.Task()
            {
                Project_ID     = 123,
                Parent_Task_ID = 123,
                Task_ID        = 123,
                Task_Name      = "TEST",
                Priority       = 1,
                Status         = 1,
                Start_Date     = DateTime.Now,
                End_Date       = DateTime.Now.AddDays(5)
            });
            context.Tasks = tasks;

            var controller = new TaskController(new BC.TaskBC(context));
            var result     = controller.RetrieveTaskByProjectId(12345) as JSendResponse;

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.Data, typeof(List <ProjectManager.Models.Task>));
            Assert.AreEqual((result.Data as List <ProjectManager.Models.Task>).Count, 1);
            Assert.AreEqual((result.Data as List <ProjectManager.Models.Task>)[0].Task_Name, "TEST");
        }
        public void TestUpdateProjects_Success()
        {
            var context = new Test_Project_ManagerContext();
            var tasks   = new TestDbSet <DAC.Task>();
            var users   = new TestDbSet <DAC.User>();

            users.Add(new DAC.User()
            {
                Employee_ID = 418220.ToString(),
                First_Name  = "TEST",
                Last_Name   = "TEST2",
                Project_ID  = 123,
                Task_ID     = 123,
                User_ID     = 123
            });
            tasks.Add(new DAC.Task()
            {
                Task_ID        = 1,
                Task_Name      = "ASDQW",
                Parent_Task_ID = 123674,
                Project_ID     = 34856,
                Start_Date     = DateTime.Now,
                End_Date       = DateTime.Now.AddDays(2),
                Priority       = 10,
                Status         = 0
            });
            context.Tasks = tasks;
            context.Users = users;
            var testTask = new Models.Task()
            {
                TaskId     = 1,
                Task_Name  = "task1",
                Parent_ID  = 123674,
                Project_ID = 34856,
                Start_Date = DateTime.Now,
                End_Date   = DateTime.Now.AddDays(2),
                Priority   = 30,
                Status     = 0,
                User       = new User()
                {
                    FirstName  = "Riddhi",
                    LastName   = "Roy Choudhury",
                    EmployeeId = "123456",
                    UserId     = 123
                }
            };

            var controller = new TaskController(new BC.TaskBC(context));
            var result     = controller.UpdateTaskDetails(testTask) as JSendResponse;

            Assert.IsNotNull(result);
            Assert.AreEqual((context.Tasks.Local[0]).Priority, 30);
        }
        public void TestUpdateProjects_Success()
        {
            var context  = new Test_Project_ManagerContext();
            var projects = new TestDbSet <DAC.Project>();
            var users    = new TestDbSet <DAC.User>();

            users.Add(new DAC.User()
            {
                Employee_ID = 418220.ToString(),
                First_Name  = "TEST",
                Last_Name   = "TEST2",
                Project_ID  = 123,
                Task_ID     = 123,
                User_ID     = 123
            });
            projects.Add(new DAC.Project()
            {
                Project_Name = "MyTestProject",
                Start_Date   = DateTime.Now,
                End_Date     = DateTime.Now.AddDays(5),
                Priority     = 2,
                Project_ID   = 123
            });
            context.Projects = projects;
            context.Users    = users;
            var testProject = new Models.Project()
            {
                ProjectId          = 123,
                Priority           = 3,
                NoOfCompletedTasks = 2,
                NoOfTasks          = 5,
                ProjectName        = "ProjectTest",
                ProjectStartDate   = DateTime.Now,
                ProjectEndDate     = DateTime.Now.AddDays(10),
                User = new User()
                {
                    EmployeeId = 418220.ToString(),
                    FirstName  = "Riddhi",
                    LastName   = "Roy Choudhury",
                    ProjectId  = 123,
                    UserId     = 123
                }
            };

            var controller = new ProjectController(new BC.ProjectBC(context));
            var result     = controller.UpdateProjectDetails(testProject) as JSendResponse;

            Assert.IsNotNull(result);
            Assert.AreEqual((context.Projects.Local[0]).Project_Name.ToUpper(), "PROJECTTEST");
        }
        public void TestInsertUser_Success()
        {
            var context = new Test_Project_ManagerContext();
            var user    = new Models.User();

            user.FirstName  = "ankita";
            user.LastName   = "ghosh";
            user.EmployeeId = "123456";
            user.UserId     = 123;
            var controller = new UserController(new BC.UserBC(context));
            var result     = controller.AddUserDetails(user) as JSendResponse;

            Assert.IsNotNull(result);
            Assert.AreEqual(result.Data, 0);
        }
        public void TestDeleteProject_NoProjectAsParameter()
        {
            var context = new Test_Project_ManagerContext();
            var users   = new TestDbSet <DAC.User>();

            users.Add(new DAC.User()
            {
                Employee_ID = "375543",
                First_Name  = "Robert",
                Last_Name   = "Morin",
                User_ID     = 123,
                Task_ID     = 123
            });
            context.Users = users;
            Models.Project testProject = null;
            var            controller  = new ProjectController(new BC.ProjectBC(context));
            var            result      = controller.DeleteProjectDetails(testProject) as JSendResponse;
        }
        public void TestRetrieveTasks_Success()
        {
            var context     = new Test_Project_ManagerContext();
            var tasks       = new TestDbSet <DAC.Task>();
            var users       = new TestDbSet <DAC.User>();
            var parentTasks = new TestDbSet <DAC.ParentTask>();

            parentTasks.Add(new DAC.ParentTask()
            {
                Parent_Task_ID   = 123456,
                Parent_Task_Name = "PNB"
            });
            context.ParentTasks = parentTasks;
            users.Add(new DAC.User()
            {
                Employee_ID = "375543",
                First_Name  = "Riddhi",
                Last_Name   = "Roy Choudhury",
                User_ID     = 123,
                Task_ID     = 1
            });
            context.Users = users;
            int projectid = 1234;

            tasks.Add(new DAC.Task()
            {
                Task_ID        = 1,
                Task_Name      = "ASDQW",
                Parent_Task_ID = 123456,
                Project_ID     = 1234,
                Start_Date     = DateTime.Now,
                End_Date       = DateTime.Now.AddDays(2),
                Priority       = 10,
                Status         = 0
            });
            context.Tasks = tasks;
            var controller = new TaskController(new BC.TaskBC(context));
            var result     = controller.RetrieveTaskByProjectId(projectid) as JSendResponse;

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.Data, typeof(List <ProjectManager.Models.Task>));
        }
        public void TestInsertTasks_Success()
        {
            var context = new Test_Project_ManagerContext();
            var users   = new TestDbSet <DAC.User>();

            users.Add(new DAC.User()
            {
                Employee_ID = "654219",
                First_Name  = "Rajesh",
                Last_Name   = "Ray",
                User_ID     = 123,
                Task_ID     = 123
            });
            context.Users = users;
            var task = new ProjectManager.Models.Task()
            {
                Task_Name  = "ASDQW",
                Parent_ID  = 123674,
                Project_ID = 34856,
                Start_Date = DateTime.Now,
                End_Date   = DateTime.Now.AddDays(2),
                Priority   = 10,
                Status     = 0,
                User       = new User()
                {
                    FirstName  = "Rajesh",
                    LastName   = "Ray",
                    EmployeeId = "654219",
                    UserId     = 1000
                }
            };

            var controller = new TaskController(new BC.TaskBC(context));
            var result     = controller.AddTaskDetails(task) as JSendResponse;


            Assert.IsNotNull(result);

            Assert.IsNotNull((context.Users.Local[0]).Task_ID);
        }
        public void TestDeleteUser_Success()
        {
            var context = new Test_Project_ManagerContext();
            var users   = new TestDbSet <DAC.User>();

            users.Add(new DAC.User()
            {
                Employee_ID = "418220",
                First_Name  = "Prateek",
                Last_Name   = "Gangopadhyay",
                Project_ID  = 123,
                Task_ID     = 123,
                User_ID     = 418220
            });
            users.Add(new DAC.User()
            {
                Employee_ID = "503322",
                First_Name  = "Khushboo",
                Last_Name   = "Jain",
                Project_ID  = 1234,
                Task_ID     = 1234,
                User_ID     = 503322
            });
            context.Users = users;

            var user = new Models.User();

            user.FirstName  = "Khushboo";
            user.LastName   = "Jain";
            user.EmployeeId = "503322";
            user.UserId     = 503322;

            var controller = new UserController(new BC.UserBC(context));
            var result     = controller.DeleteUserDetails(user) as JSendResponse;

            Assert.IsNotNull(result);
            Assert.AreEqual(context.Users.Local.Count, 1);
        }
        public void TestInsertProjects_Success()
        {
            var context = new Test_Project_ManagerContext();
            var users   = new TestDbSet <DAC.User>();

            users.Add(new DAC.User()
            {
                Employee_ID = "375543",
                First_Name  = "Robert",
                Last_Name   = "Morin",
                User_ID     = 123,
                Task_ID     = 123
            });
            context.Users = users;
            var testProject = new Models.Project()
            {
                ProjectId          = 12345,
                ProjectName        = "MyProject",
                ProjectStartDate   = DateTime.Now,
                ProjectEndDate     = DateTime.Now.AddDays(5),
                Priority           = 3,
                NoOfCompletedTasks = 3,
                NoOfTasks          = 5,
                User = new User()
                {
                    FirstName  = "Riddhi",
                    LastName   = "Roy",
                    EmployeeId = "353587",
                    UserId     = 001
                }
            };
            var controller = new ProjectController(new BC.ProjectBC(context));
            var result     = controller.AddProjectDetails(testProject) as JSendResponse;

            Assert.IsNotNull(result);
            Assert.IsNotNull((context.Users.Local[0]).Project_ID);
        }
        public void TestRetrieveParentTasks_Success()
        {
            var context     = new Test_Project_ManagerContext();
            var parentTasks = new TestDbSet <DAC.ParentTask>();

            parentTasks.Add(new DAC.ParentTask()
            {
                Parent_Task_ID   = 12345,
                Parent_Task_Name = "ANB"
            });
            parentTasks.Add(new DAC.ParentTask()
            {
                Parent_Task_ID   = 123456,
                Parent_Task_Name = "PNB"
            });
            context.ParentTasks = parentTasks;

            var controller = new TaskController(new BC.TaskBC(context));
            var result     = controller.RetrieveParentTasks() as JSendResponse;

            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.Data, typeof(List <ProjectManager.Models.ParentTask>));
            Assert.AreEqual((result.Data as List <ParentTask>).Count, 2);
        }