Example #1
0
        public void TestCourse_AddCourseToStudent_True()
        {
            //Arrange
            Student testStudent = new Student("John", new DateTime(2017, 06, 13));

            testStudent.Save();

            Course firstCourse  = new Course("Standard Math", "Math101");
            Course secondCourse = new Course("Standard History", "HST101");

            firstCourse.Save();
            secondCourse.Save();
            //Add
            testStudent.AddCourse(firstCourse);
            testStudent.AddCourse(secondCourse);


            List <Course> result   = testStudent.GetCourses();
            List <Course> testList = new List <Course> {
                firstCourse, secondCourse
            };

            //Assert
            Assert.Equal(testList, result);
        }
Example #2
0
        public void Student_GetCompletedCourses()
        {
            Student newStudent = new Student("Johnny English", "2001-09-21", 1);

            newStudent.Save();

            Course newCourse = new Course("English 101", "ENG101", 1);

            newCourse.Save();
            Course secondCourse = new Course("French 101", "FRN101", 1);

            secondCourse.Save();
            Course thirdCourse = new Course("Spanish 101", "SPAN101", 1);

            thirdCourse.Save();
            newStudent.AddCourse(newCourse.GetId());
            newStudent.AddCourse(secondCourse.GetId());
            newStudent.AddCourse(thirdCourse.GetId());

            newStudent.UpdateCourseGrade(newCourse.GetId(), "A");
            newStudent.UpdateCourseGrade(secondCourse.GetId(), "B");

            List <Course> expected = new List <Course> {
                newCourse, secondCourse
            };
            List <Course> actual = newStudent.GetCompletedCourses();

            Assert.Equal(expected, actual);
        }
Example #3
0
        public void Student_FindCourseByStudentId()
        {
            Student newStudent = new Student("Johnny English", "2001-09-21", 1);

            newStudent.Save();

            Course newCourse = new Course("English 101", "ENG101", 1);

            newCourse.Save();
            Course otherCourse = new Course("English 102", "ENG102", 1);

            otherCourse.Save();
            List <Course> expected = new List <Course> {
                newCourse, otherCourse
            };

            newStudent.AddCourse(newCourse.GetId());
            newStudent.AddCourse(otherCourse.GetId());


            List <Course> actual = newStudent.GetCourses();


            Assert.Equal(expected, actual);
        }
        public void GetCourses_ReturnsAllStudentCourses_categoryList()
        {
            //Arrange
            Student testStudent = new Student("Annie", "3/2/2014");

            testStudent.Save();

            Course testCourse1 = new Course("History", "HIST100");

            testCourse1.Save();

            Course testCourse2 = new Course("Japanese", "JAPN100");

            testCourse2.Save();

            //Act
            testStudent.AddCourse(testCourse1);
            List <Course> result   = testStudent.GetCourses();
            List <Course> testList = new List <Course> {
                testCourse1
            };

            //Assert
            Assert.Equal(testList, result);
        }
Example #5
0
        public void Department_CheckStudentsNotCompleted()
        {
            Department newDepartment = new Department("English");

            newDepartment.Save();
            Department otherDepartment = new Department("Spanish");

            otherDepartment.Save();

            Course newCourse = new Course("English 101", "ENG101", newDepartment.GetId());

            newCourse.Save();
            Course otherCourse = new Course("English 102", "Eng102", otherDepartment.GetId());

            otherCourse.Save();


            Student newStudent = new Student("Johnny English", "2001-09-21", newDepartment.GetId());

            newStudent.Save();
            newStudent.AddCourse(newCourse.GetId());
            newStudent.AddCourse(otherCourse.GetId());


            Student otherStudent = new Student("Smitty Sociology", "2001-09-21", otherDepartment.GetId());

            otherStudent.Save();
            otherStudent.AddCourse(otherCourse.GetId());

            List <Student> expected = new List <Student> {
                otherStudent
            };
            List <Student> actual = newDepartment.CheckMissingRequirements();

            Assert.Equal(expected, actual);
        }
Example #6
0
        public void Add_AddsCourseToStudent()
        {
            Course newCourse = new Course("Anatomy and Physiology 201", "A&P Course designed to prepare students for a nursing program.");

            newCourse.Save();
            Student newStudent = new Student("Jo Bob", testDate);

            newStudent.Save();

            newStudent.AddCourse(newCourse);

            List <Course> foundCourseList = newStudent.GetCourses();
            Course        foundCourse     = foundCourseList[0];

            Assert.Equal(newCourse, foundCourse);
        }
        public void Test_AddCourse_AddsCourseToStudent()
        {
            //Arrange
              Student testStudent = new Student("Mow the lawn", new DateTime(2015, 1, 18));
              testStudent.Save();

              Course testCourse = new Course("History" , "HIST101");
              testCourse.Save();

              //Act
              testStudent.AddCourse(testCourse);

              List<Course> result = testStudent.GetCourses();
              List<Course> testList = new List<Course>{testCourse};

              //Assert
              Assert.Equal(testList, result);
        }
Example #8
0
        public void Student_AddGradeToCourse()
        {
            Student newStudent = new Student("Johnny English", "2001-09-21", 1);

            newStudent.Save();

            Course newCourse = new Course("English 101", "ENG101", 1);

            newCourse.Save();
            string expected = "A";

            newStudent.AddCourse(newCourse.GetId());

            newStudent.UpdateCourseGrade(newCourse.GetId(), expected);
            string actual = newStudent.GetCourseGrade(newCourse.GetId());

            Assert.Equal(expected, actual);
        }
Example #9
0
        public void TestCourse_AddsCourseToStudent_CourseList()
        {
            Student testStudent = new Student("Jim", new DateTime(2011, 12, 20));

            testStudent.Save();

            Course testCourse = new Course("Bio 111", "8am", 4);

            testCourse.Save();

            testStudent.AddCourse(testCourse);

            List <Course> result   = testStudent.GetCourses();
            List <Course> testList = new List <Course> {
                testCourse
            };

            Assert.Equal(testList, result);
        }
Example #10
0
        public void Delete_DeletesStudentAssociationsFromDataBase_StudentList()
        {
            Course testCourse = new Course("Bio 111", "8am", 4);

            testCourse.Save();

            Student testStudent = new Student("Jim", new DateTime(2011, 12, 20));

            testStudent.Save();

            testStudent.AddCourse(testCourse);
            testStudent.Delete();

            List <Student> result = testCourse.GetStudents();
            List <Student> test   = new List <Student> {
            };

            Assert.Equal(test, result);
        }
Example #11
0
        public void Test_GetCourses_ReturnsAllCoursesForAStudent()
        {
            //Arrange
            Student testStudent = new Student("Nicole");

            testStudent.Save();

            Course testCourse = new Course("Math");

            testCourse.Save();

            testStudent.AddCourse(testCourse);
            List <Course> savedCourses = testStudent.GetCourses();
            List <Course> testList     = new List <Course> {
                testCourse
            };

            //Assert
            Assert.Equal(testList, savedCourses);
        }
Example #12
0
        public void TestCourse_ReturnsAllStudentCourses_CourseList()
        {
            Student testStudent = new Student("Jim", new DateTime(2011, 12, 20));

            testStudent.Save();

            Course testCourse1 = new Course("Bio 111", "8am", 4);

            testCourse1.Save();

            Course testCourse2 = new Course("Paper 122", "6am", 1);

            testCourse2.Save();

            testStudent.AddCourse(testCourse1);
            List <Course> result   = testStudent.GetCourses();
            List <Course> testList = new List <Course> {
                testCourse1
            };

            Assert.Equal(testList, result);
        }
Example #13
0
        public void GetCourses_ReturnAllStudentsCourses_True()
        {
            //Arrange
            Student testStudent = new Student("John", new DateTime(2017, 06, 13));

            testStudent.Save();

            Course firstCourse  = new Course("Standard Math", "Math101");
            Course secondCourse = new Course("Standard History", "HST101");

            firstCourse.Save();
            secondCourse.Save();
            //Act
            testStudent.AddCourse(firstCourse);
            List <Course> savedCourses = testStudent.GetCourses();
            List <Course> testList     = new List <Course> {
                firstCourse
            };

            //Assert
            Assert.Equal(testList, savedCourses);
        }
Example #14
0
        public void Student_AddCourseToStudent()
        {
            Student newStudent = new Student("Johnny English", "2001-09-21", 1);

            newStudent.Save();
            Student otherStudent = new Student("Smitty Sociology", "2001-09-21", 1);

            otherStudent.Save();
            List <Student> expected = new List <Student> {
                newStudent
            };

            Course newCourse = new Course("English 101", "ENG101", 1);

            newCourse.Save();

            newStudent.AddCourse(newCourse.GetId());

            List <Student> actual = Course.GetByCourse(newCourse.GetId());

            Assert.Equal(expected[0].GetName(), actual[0].GetName());
        }
        public void Test_Delete_DeletesStudentAssociationsFromDatabase()
        {
            //Arrange
            Course testCourse = new Course("History", "HIST100");

            testCourse.Save();

            string  testName    = "Bryant";
            string  testDate    = "4/9/2014";
            Student testStudent = new Student(testName, testDate);

            testStudent.Save();

            //Act
            testStudent.AddCourse(testCourse);
            testStudent.Delete();

            List <Student> resultCourseStudents = testCourse.GetStudents();
            List <Student> testCourseStudents   = new List <Student> {
            };

            //Assert
            Assert.Equal(testCourseStudents, resultCourseStudents);
        }
Example #16
0
        public HomeModule()
        {
            Get["/"] = _ => {
                return(View["index.cshtml"]);
            };

            Get["/students"] = _ => {
                List <Student> allStudents = Student.GetAll();
                return(View["students.cshtml", allStudents]);
            };

            Post["/students"] = _ => {
                var newStudent = new Student(Request.Form["student"]);
                newStudent.Save();
                var allStudents = Student.GetAll();
                return(View ["students.cshtml", allStudents]);
            };

            Get["/student/{studentId}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Student       newStudent          = Student.Find(parameters.studentId);
                List <Course> studentCourses      = newStudent.GetCourses();
                model.Add("student", newStudent);
                model.Add("all_courses", Course.GetAll());
                model.Add("courses", studentCourses);
                return(View["student.cshtml", model]);
            };

            Get["/courses"] = _ => {
                List <Course> allCourses = Course.GetAll();
                return(View["courses.cshtml", allCourses]);
            };

            Post["/courses"] = _ => {
                var newCourse = new Course(Request.Form["course"]);
                newCourse.Save();
                var allCourses = Course.GetAll();
                return(View ["courses.cshtml", allCourses]);
            };

            Get["/course/{courseId}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Course         newCourse          = Course.Find(parameters.courseId);
                List <Student> courseStudents     = newCourse.GetStudents();
                model.Add("course", newCourse);
                model.Add("all_students", Student.GetAll());
                model.Add("students", courseStudents);
                return(View["course.cshtml", model]);
            };

            Get["/student/course_added"] = _ => {
                return(View["course_added.cshtml"]);
            };

            Post["/student/course_added"] = _ => {
                Course  course  = Course.Find(Request.Form["course-list"]);
                Student student = Student.Find(Request.Form["student"]);
                student.AddCourse(course);
                return(View["course_added.cshtml"]);
            };

            Post["/course/student_added"] = _ => {
                Course  course  = Course.Find(Request.Form["course-list"]);
                Student student = Student.Find(Request.Form["student"]);
                student.AddCourse(course);
                return(View["student_added.cshtml"]);
            };
        }
Example #17
0
        public HomeModule()
        {
            Get["/"] = _ => {
                return(View["index.cshtml"]);
            };
            Get["/course/new"] = _ => {
                return(View["new-course-form.cshtml"]);
            };
            Post["/course/new"] = _ => {
                Course newCourse = new Course(Request.Form["courseName"], Request.Form["courseNumber"]);
                newCourse.Save();
                List <Course> allCourses = Course.GetAll();
                return(View["courses.cshtml", allCourses]);
            };
            Get["/courses"] = _ => {
                List <Course> allCourses = Course.GetAll();
                return(View["courses.cshtml", allCourses]);
            };
            Get["/student/new"] = _ => {
                return(View["new-student-form.cshtml"]);
            };
            Post["/student/new"] = _ => {
                Student newStudent = new Student(Request.Form["studentName"], Request.Form["enrollmentDate"]);
                newStudent.Save();
                List <Student> allStudents = Student.GetAll();
                return(View["students.cshtml", allStudents]);
            };
            Get["/course/{id}"] = parameters => {
                Course currentCourse = Course.Find(parameters.id);
                Dictionary <string, object> model = new Dictionary <string, object>();
                List <Student> allStudents        = Student.GetAll();
                List <Student> courseStudents     = currentCourse.GetAllStudents();
                model.Add("course", currentCourse);
                model.Add("allStudents", allStudents);
                model.Add("courseStudents", courseStudents);
                return(View["course.cshtml", model]);
            };
            Patch["/course/update/{id}"] = parameters => {
                Course currentCourse = Course.Find(parameters.id);
                currentCourse.UpdateName(Request.Form["newName"]);
                Dictionary <string, object> model = new Dictionary <string, object>();
                List <Student> allStudents        = Student.GetAll();
                List <Student> courseStudents     = currentCourse.GetAllStudents();
                model.Add("course", currentCourse);
                model.Add("allStudents", allStudents);
                model.Add("courseStudents", courseStudents);
                return(View["course.cshtml", model]);
            };
            Delete["/course/delete/{id}"] = parameters => {
                Course currentCourse = Course.Find(parameters.id);
                currentCourse.Delete();
                List <Course> allCourses = Course.GetAll();
                return(View["courses.cshtml", allCourses]);
            };
            Post["/course/add_student"] = _ => {
                Course currentCourse = Course.Find(Request.Form["courseId"]);
                currentCourse.AddStudent(Request.Form["studentId"]);

                Dictionary <string, object> model = new Dictionary <string, object>();
                List <Student> allStudents        = Student.GetAll();
                List <Student> courseStudents     = currentCourse.GetAllStudents();
                model.Add("course", currentCourse);
                model.Add("allStudents", allStudents);
                model.Add("courseStudents", courseStudents);
                return(View["course.cshtml", model]);
            };
            Get["/student/{id}"] = parameters => {
                Student currentStudent            = Student.Find(parameters.id);
                Dictionary <string, object> model = new Dictionary <string, object>();
                List <Course> allCourses          = Course.GetAll();
                List <Course> studentCourses      = currentStudent.GetAllCourses();
                model.Add("student", currentStudent);
                model.Add("allCourses", allCourses);
                model.Add("studentCourses", studentCourses);
                return(View["student.cshtml", model]);
            };
            Post["/student/add_course"] = _ => {
                Student currentStudent = Student.Find(Request.Form["studentId"]);
                currentStudent.AddCourse(Request.Form["courseId"]);
                Dictionary <string, object> model = new Dictionary <string, object>();
                List <Course> allCourses          = Course.GetAll();
                List <Course> studentCourses      = currentStudent.GetAllCourses();
                model.Add("student", currentStudent);
                model.Add("allCourses", allCourses);
                model.Add("studentCourses", studentCourses);
                return(View["student.cshtml", model]);
            };
            Delete["/student/delete/{id}"] = parameters => {
                Student currentStudent = Student.Find(parameters.id);
                currentStudent.Delete();
                List <Student> allStudents = Student.GetAll();
                return(View["students.cshtml", allStudents]);
            };
            Get["/students"] = _ => {
                List <Student> allStudents = Student.GetAll();
                return(View["students.cshtml", allStudents]);
            };
            Patch["/student/update/{id}"] = parameters => {
                Student currentStudent = Student.Find(parameters.id);
                currentStudent.UpdateName(Request.Form["newName"]);
                Dictionary <string, object> model = new Dictionary <string, object>();
                List <Course> allCourses          = Course.GetAll();
                List <Course> studentCourses      = currentStudent.GetAllCourses();
                model.Add("student", currentStudent);
                model.Add("allCourses", allCourses);
                model.Add("studentCourses", studentCourses);
                return(View["student.cshtml", model]);
            };
        }
        public void Test_GetCourses_ReturnsAllStudentCourses()
        {
            //Arrange
              Student testStudent = new Student("Mow the lawn", new DateTime(2015, 1, 18));
              testStudent.Save();

              Course testCourse1 = new Course("History" , "HIST101");
              testCourse1.Save();

              Course testCourse2 = new Course("Work stuff", "Career101");
              testCourse2.Save();

              //Act
              testStudent.AddCourse(testCourse1);
              List<Course> result = testStudent.GetCourses();
              List<Course> testList = new List<Course> {testCourse1};

              //Assert
              Assert.Equal(testList, result);
        }
Example #19
0
        public HomeModule()
        {
            Get["/"] = _ => {
                return(View["index.cshtml"]);
            };

            Get["/courses"] = _ => {
                List <Course> allCourses = Course.GetAll();
                return(View["courses.cshtml", allCourses]);
            };

            Get["/students"] = _ => {
                List <Student> allStudents = Student.GetAll();
                return(View["students.cshtml", allStudents]);
            };

            Get["/students/new"] = _ => {
                return(View["student_form.cshtml"]);
            };

            Post["/students/new"] = _ => {
                string  studentName = Request.Form["student-name"];
                string  studentDate = Request.Form["student-date"];
                Student newStudent  = new Student(studentName, studentDate);
                newStudent.Save();
                return(View["student.cshtml", newStudent]);
            };

            Get["/courses/new"] = _ => {
                return(View["course_form.cshtml"]);
            };

            Post["/courses/new"] = _ => {
                string courseName   = Request.Form["course-name"];
                string courseNumber = Request.Form["course-number"];
                Course newCourse    = new Course(courseName, courseNumber);
                newCourse.Save();
                return(View["course.cshtml", newCourse]);
            };

            Get["/student/{student_id}"] = parameters => {
                Student selectedStudent = Student.Find(parameters.student_id);
                return(View["student.cshtml", selectedStudent]);
            };

            Get["/course/{course_id}"] = parameters => {
                Course selectedCourse = Course.Find(parameters.course_id);
                return(View["course.cshtml", selectedCourse]);
            };

            Get["/course/{id}/students/add"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object> ();
                Course         selectedCourse     = Course.Find(parameters.id);
                List <Student> currentStudents    = selectedCourse.GetStudents();
                List <Student> allStudents        = Student.GetAll();

                List <Student> availableStudents = new List <Student> {
                };
                foreach (Student student in allStudents)
                {
                    // If a student is already in the course it will return an index of 0 or above.
                    if (currentStudents.IndexOf(student) < 0)
                    {
                        availableStudents.Add(student);
                    }
                }
                model.Add("course", selectedCourse);
                model.Add("available-students", availableStudents);
                return(View["AddStudentToCourse.cshtml", model]);
            };

            Post["/course/{id}/students/added"] = parameters => {
                int     studentId       = Request.Form["student-id"];
                Student selectedStudent = Student.Find(studentId);

                Course selectedCourse = Course.Find(parameters.id);
                selectedCourse.AddStudent(selectedStudent);

                return(View["student_added.cshtml", selectedCourse]);
            };

            Get["/student/{id}/courses/add"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object> ();
                Student       selectedStudent     = Student.Find(parameters.id);
                List <Course> currentCourses      = selectedStudent.GetCourses();
                List <Course> allCourses          = Course.GetAll();

                List <Course> availableCourses = new List <Course> {
                };
                foreach (Course course in allCourses)
                {
                    // If the student is already enrolled in a course it will return an index of 0 or above.
                    if (currentCourses.IndexOf(course) < 0)
                    {
                        availableCourses.Add(course);
                    }
                }
                model.Add("student", selectedStudent);
                model.Add("available-courses", availableCourses);
                return(View["AddCourseToStudent.cshtml", model]);
            };

            Post["/student/{id}/courses/added"] = parameters => {
                int    courseId       = Request.Form["course-id"];
                Course selectedCourse = Course.Find(courseId);

                Student selectedStudent = Student.Find(parameters.id);
                selectedStudent.AddCourse(selectedCourse);

                return(View["course_added.cshtml", selectedStudent]);
            };
        }
Example #20
0
        public HomeModule()
        {
            Get["/"] = _ => {
                return(View["index.cshtml"]);
            };

            Get["/student/add"] = _ => {
                return(View["student_form.cshtml"]);
            };

            Get["/course/add"] = _ => {
                return(View["course_form.cshtml"]);
            };

            Post["/student/add"] = _ => {
                Student newStudent = new Student(Request.Form["name"], Request.Form["doe"]);
                newStudent.Save();
                return(View["success.cshtml"]);
            };

            Post["/course/add"] = _ => {
                Course newCourse = new Course(Request.Form["name"], Request.Form["time"], Request.Form["credits"]);
                newCourse.Save();
                return(View["success.cshtml"]);
            };
            Get["/student/all"] = _ => {
                List <Student> AllStudents = Student.GetAll();
                return(View["student_all.cshtml", AllStudents]);
            };
            Get["/course/all"] = _ => {
                List <Course> AllCourses = Course.GetAll();
                return(View["course_all.cshtml", AllCourses]);
            };
            Get["student/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Student       SelectedStudent     = Student.Find(parameters.id);
                List <Course> StudentCourse       = SelectedStudent.GetCourses();
                List <Course> AllCourses          = Course.GetAll();
                model.Add("student", SelectedStudent);
                model.Add("studentCourse", StudentCourse);
                model.Add("allCourses", AllCourses);
                return(View["student.cshtml", model]);
            };
            Get["course/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Course         SelectedCourse     = Course.Find(parameters.id);
                List <Student> CourseStudent      = SelectedCourse.GetStudents();
                List <Student> AllStudents        = Student.GetAll();
                model.Add("course", SelectedCourse);
                model.Add("courseStudent", CourseStudent);
                model.Add("allStudents", AllStudents);
                return(View["course.cshtml", model]);
            };
            Post["students/add_course"] = _ => {
                Course  course  = Course.Find(Request.Form["course-id"]);
                Student student = Student.Find(Request.Form["student-id"]);
                student.AddCourse(course);
                return(View["success.cshtml"]);
            };
            Post["courses/add_student"] = _ => {
                Course  course  = Course.Find(Request.Form["course-id"]);
                Student student = Student.Find(Request.Form["student-id"]);
                course.AddStudent(student);
                return(View["success.cshtml"]);
            };

            Get["/student/delete/{id}"] = parameters => {
                Student chosenStudent = Student.Find(parameters.id);
                return(View["student_delete.cshtml", chosenStudent]);
            };

            Delete["/student/delete/{id}"] = parameters => {
                Student chosenStudent = Student.Find(parameters.id);
                chosenStudent.Delete();
                return(View["success.cshtml"]);
            };
        }