Esempio n. 1
0
        public static List<Department> GetAll()
        {
            List<Department> allDepartments = new List<Department> {};
              SqlConnection conn = DB.Connection();
              SqlDataReader rdr = null;
              conn.Open();

              SqlCommand cmd = new SqlCommand("SELECT * FROM departments;", conn);
              rdr = cmd.ExecuteReader();

              while(rdr.Read())
              {
            string courseName = rdr.GetString(0);
            int courseId = rdr.GetInt32(1);
            Department newDepartment = new Department(courseName, courseId);
            allDepartments.Add(newDepartment);
              }

              if (rdr != null)
              {
            rdr.Close();
              }
              if (conn != null)
              {
            conn.Close();
              }

              return allDepartments;
        }
Esempio n. 2
0
        public static Department Find(int id)
        {
            SqlConnection conn = DB.Connection();
              SqlDataReader rdr = null;
              conn.Open();

              SqlCommand cmd = new SqlCommand("SELECT * FROM departments WHERE id = @DepartmentId;", conn);
              SqlParameter courseIdParameter = new SqlParameter();
              courseIdParameter.ParameterName = "@DepartmentId";
              courseIdParameter.Value = id.ToString();
              cmd.Parameters.Add(courseIdParameter);
              rdr = cmd.ExecuteReader();

              int foundDepartmentId = 0;
              string foundDepartmentName = null;

              while(rdr.Read())
              {
            foundDepartmentName = rdr.GetString(0);
            foundDepartmentId = rdr.GetInt32(1);
              }
              Department foundDepartment = new Department(foundDepartmentName, foundDepartmentId);

              if (rdr != null)
              {
            rdr.Close();
              }
              if (conn != null)
              {
            conn.Close();
              }
              return foundDepartment;
        }
Esempio n. 3
0
        public void Test_Equal_ReturnsTrueIfNamesAndEnrollmentDatesAreTheSame()
        {
            //Arrange, Act
              Department firstDepartment = new Department("History");
              Department secondDepartment = new Department("History");

              //Assert
              Assert.Equal(firstDepartment, secondDepartment);
        }
Esempio n. 4
0
        public void Test_Find_FindsDepartmentInDatabase()
        {
            //Arrange
              Department testDepartment = new Department("History");
              testDepartment.Save();

              //Act
              Department foundDepartment = Department.Find(testDepartment.GetId());

              //Assert
              Assert.Equal(testDepartment, foundDepartment);
        }
Esempio n. 5
0
        public void Test_AddMajor_DisplaysAddedMajors()
        {
            Student testStudent = new Student("Bob", enrollmentDate);
              testStudent.Save();
              Department testDepartment = new Department("History");
              testDepartment.Save();

              testStudent.AddMajor(testDepartment.GetId());
              List<Department> resultList = testStudent.GetMajors();
              List<Department> expectedList= new List<Department>{testDepartment};

              Assert.Equal(expectedList, resultList);
        }
Esempio n. 6
0
        public void Test_Save_AssignsIdToObject()
        {
            //Arrange
              Department testDepartment = new Department("History");

              //Act
              testDepartment.Save();
              Department savedDepartment = Department.GetAll()[0];

              int result = savedDepartment.GetId();
              int testId = testDepartment.GetId();

              //Assert
              Assert.Equal(testId, result);
        }
Esempio n. 7
0
        public void Test_DropMajor_DropsSelectedMajor()
        {
            Student testStudent = new Student("Bob", enrollmentDate);
              testStudent.Save();
              Department testDepartment1 = new Department("Chinese");
              testDepartment1.Save();
              testStudent.AddMajor(testDepartment1.GetId());
              Department testDepartment2 = new Department("Spanish");
              testDepartment2.Save();
              testStudent.AddMajor(testDepartment2.GetId());

              testStudent.DropMajor(testDepartment1.GetId());

              List<Department> resultList = testStudent.GetMajors();
              List<Department> expectedList= new List<Department>{testDepartment2};

              Assert.Equal(expectedList, resultList);
        }
Esempio n. 8
0
        public HomeModule()
        {
            Get["/"]=_=>View["index.cshtml"];

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

              Get["/courses/new"]=_=>{
            List<Department> departments = Department.GetAll();
            return View["course_new.cshtml" , departments];
            };

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

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

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

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

              Get["/students/new"]=_=>View["student_new.cshtml"];

              Post["/students/new"]=_=>
              {
            Student newStudent = new Student(Request.Form["student-name"], Request.Form["enrollment-date"]);
            newStudent.Save();
            List<Student> allStudents = Student.GetAll();
            return View["students.cshtml", allStudents];
              };
              Post["/students/{id}/addCourse"] = parameters =>
              {
            Student student = Student.Find(parameters.id);
            student.AddCourse(Request.Form["course"]);
            return View["student.cshtml", student];
              };
              Post["/students/{id}/deleteCourse"] = parameters =>
              {
            Student student = Student.Find(parameters.id);
            student.DropCourse(Request.Form["course"]);
            return View["student.cshtml", student];
              };

              Post["/students/{id}/updatemajors"]=parameters=>
              {
            Student student = Student.Find(parameters.id);
            int majorCount = student.GetMajors().Count;
            if(majorCount == 0 && Request.Form["new-major"] !=0)
            {
              student.AddMajor(Request.Form["new-major"]);
            }
            else if(majorCount == 1)
            {
              if(Request.Form["current-major"]==0)
              {
            student.DropMajor(Request.Form["current-major"]);
              }
              else if(Request.Form["current-major"]!=student.GetMajors()[0].GetId())
              {
            student.DropMajor(student.GetMajors()[0].GetId());
            student.AddMajor(Request.Form["current-major"]);
              }
              if(Request.Form["additional-major"] !=0)
              {
            student.AddMajor(Request.Form["additonal-major"]);
              }
            }
            else
            {
              if(Request.Form["first-major"]==0)
              {
            student.DropMajor(Request.Form["first-major"]);
              }
              else if(Request.Form["first-major"]!=student.GetMajors()[0].GetId())
              {
            student.DropMajor(student.GetMajors()[0].GetId());
            student.AddMajor(Request.Form["first-major"]);
              }
              if(Request.Form["second-major"]==0)
              {
            student.DropMajor(Request.Form["second-major"]);
              }
              else if(Request.Form["second-major"]!=student.GetMajors()[1].GetId())
              {
            student.DropMajor(student.GetMajors()[1].GetId());
            student.AddMajor(Request.Form["second-major"]);
              }
            }
            return View["student.cshtml", student];
              };

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

              Get["/departments/new"]=_=>View["department_new.cshtml"];

              Post["/departments/new"]=_=>
              {
            Department department = new Department(Request.Form["department-name"]);
            department.Save();
            List<Department> departments = Department.GetAll();
            return View["departments.cshtml", departments];
              };

              Get["/departments/{id}"]=parameters=>
              {
            Department department = Department.Find(parameters.id);
            return View["department.cshtml", department];
              };
        }
Esempio n. 9
0
        public void Test_Save_SavesToDatabase()
        {
            //Arrange
              Department testDepartment = new Department("History");

              //Act
              testDepartment.Save();
              List<Department> result = Department.GetAll();
              List<Department> testList = new List<Department>{testDepartment};

              //Assert
              Assert.Equal(testList, result);
        }
Esempio n. 10
0
        public List<Department> GetMajors()
        {
            SqlConnection conn = DB.Connection();
              SqlDataReader rdr;
              conn.Open();

              SqlCommand cmd = new SqlCommand("SELECT departments.* FROM students JOIN majors ON (students.id = majors.student_id)	JOIN departments ON (majors.department_id = departments.id)	WHERE students.id = @StudentId;", conn);

              SqlParameter idParameter = new SqlParameter();
              idParameter.ParameterName = "@StudentId";
              idParameter.Value = _id;

              cmd.Parameters.Add(idParameter);
              rdr = cmd.ExecuteReader();

              List<Department> foundMajors = new List<Department>{};

              string foundMajorName = null;
              int foundDepartmentId = 0;

              while(rdr.Read())
              {
            foundMajorName = rdr.GetString(0);
            foundDepartmentId = rdr.GetInt32(1);
            Department foundMajor = new Department(foundMajorName, foundDepartmentId);
            foundMajors.Add(foundMajor);
              }

              if (rdr != null)
              {
            rdr.Close();
              }
              if (conn != null)
              {
            conn.Close();
              }
              return foundMajors;
        }