public Mark() { this.id = 0; this.value = 0; this.subject = null; this.student = null; }
public void GetAllStudents_WhenASingleStudentInRepository_ShouldReturnSingleStudent() { var repository = new FakeRepository<Student>(); var studentToAdd = new Student() { FirstName = "TestName" }; repository.entities.Add(studentToAdd); var controller = new StudentController(repository); var studentModels = controller.GetAll(); int counter = 0; foreach (var a in studentModels) { counter++; } Assert.IsTrue(counter == 1); foreach (var a in studentModels) { Assert.AreEqual(studentToAdd.FirstName, a.FirstName); } }
public Student RegisterStudent(string name) { var uniqueNumber = this.GetNextUniqueNumber(); var student = new Student(name, uniqueNumber); this.students.Add(student); return student; }
public void AddStudentToCourse(Student student, Course course) { if (student == null) { throw new ArgumentNullException("Student cannot be null."); } if (!this.courses.Contains(course)) { throw new ArgumentException("Course does not exists in this school."); } if (!this.students.Contains(student)) { throw new ArgumentException("Student does not exists in this school."); } if (course.Students.Count >= course.StudentsCapacity) { throw new ArgumentException("Course capacity is filled."); } if (course.Students.Contains(student)) { throw new ArgumentException( string.Format("Student with number {0} already added in this course.", student.UniqueNumber)); } course.Students.Add(student); }
public void RemoveStudentFromCourse(Student student, Course course) { if (student == null) { throw new ArgumentNullException("Student cannot be null."); } course.Students.Remove(student); }
public static StudentModel SerilizeStudentModel(Student student) { StudentModel studentModel = new StudentModel(); studentModel.FirstName = student.FirstName; studentModel.LastName = student.LastName; studentModel.Age = student.Age; studentModel.Grade = student.Grade; return studentModel; }
public static Student SerilizeStudent(StudentModel model) { Student student = new Student(); student.FirstName = model.FirstName; student.LastName = model.LastName; student.Age = model.Age; student.Grade = model.Grade; return student; }
public void GetAllStudentsTest() { var repository = new FakeStudentRepository(); var school = new TownSchool { Name = "School", Location = "Town" }; var student = new Student { FirstName = "Ivan", LastName = "Ivanov", Age = 9, Grade = 4, TownSchool = school }; repository.entities.Add(student); var server = new InMemoryHttpServer("http://localhost/"); var response = server.CreateGetRequest("api/students"); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode); Assert.IsNotNull(response.Content); }
public void GetStudentInvalidTest() { var repository = new FakeStudentRepository(); var school = new TownSchool { Name = "School", Location = "Town" }; var firstStudent = new Student { FirstName = "Ivan", LastName = "Ivanov", Age = 9, Grade = 4, TownSchool = school }; var secondStudent = new Student { FirstName = "Peter", LastName = "Petrov", Age = 15, Grade = 9, TownSchool = school }; repository.entities.Add(firstStudent); repository.entities.Add(secondStudent); var server = new InMemoryHttpServer("http://localhost/"); var response = server.CreateGetRequest("api/students/3"); Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode); }
public static StudentModel Convert(Student student) { StudentModel model = new StudentModel { StudentId = student.StudentId, FirstName = student.FirstName, LastName = student.LastName, Age = student.Age, Grade = student.Grade, MarksCount = student.Marks.Count, TownSchoolId = student.TownSchoolId }; return model; }
public void GetAllStudentsControllerTest() { var repository = new FakeStudentRepository(); var school = new TownSchool { Name = "School", Location = "Town" }; var student = new Student { FirstName = "Ivan", LastName = "Ivanov", Age = 9, Grade = 4, TownSchool = school }; repository.entities.Add(student); var controller = new StudentsController(repository); var studentsModels = controller.GetAll(); Assert.IsTrue(studentsModels.Count() == 1); Assert.AreEqual(student.FirstName, studentsModels.First().FirstName); Assert.AreEqual(student.LastName, studentsModels.First().LastName); Assert.AreEqual(student.Age, studentsModels.First().Age); Assert.AreEqual(student.Grade, studentsModels.First().Grade); }
public void GetAllSeveralStudentsControllerTest() { var repository = new FakeStudentRepository(); var school = new TownSchool { Name = "School", Location = "Town" }; var firstStudent = new Student { FirstName = "Ivan", LastName = "Ivanov", Age = 9, Grade = 4, TownSchool = school }; var secondStudent = new Student { FirstName = "Peter", LastName = "Petrov", Age = 15, Grade = 9, TownSchool = school }; var thirdStudent = new Student { FirstName = "Todor", LastName = "Todorov", Age = 7, Grade = 1, TownSchool = school }; repository.entities.Add(firstStudent); repository.entities.Add(secondStudent); repository.entities.Add(thirdStudent); var controller = new StudentsController(repository); var studentsModels = controller.GetAll(); Assert.IsTrue(studentsModels.Count() == 3); }
public void DeleteStudentsControllerTest() { var repository = new FakeStudentRepository(); var school = new TownSchool { Name = "School", Location = "Town" }; var firstStudent = new Student { FirstName = "Ivan", LastName = "Ivanov", Age = 9, Grade = 4, TownSchool = school }; var secondStudent = new Student { FirstName = "Peter", LastName = "Petrov", Age = 15, Grade = 9, TownSchool = school }; var thirdStudent = new Student { FirstName = "Todor", LastName = "Todorov", Age = 7, Grade = 1, TownSchool = school }; var controller = new StudentsController(repository); var firstStudentModel = controller.Post(firstStudent); var secondStudentModel = controller.Post(secondStudent); var thirdStudentModel = controller.Post(thirdStudent); controller.Delete(3); Assert.IsTrue(controller.GetAll().Count() == 2); Assert.IsTrue(controller.GetAll().Count(x => x.FirstName == thirdStudent.FirstName) == 0); }
public void GetStudentBySubjectMarkTest() { var repository = new FakeStudentRepository(); var school = new TownSchool { Name = "School", Location = "Town" }; var firstStudent = new Student { FirstName = "Ivan", LastName = "Ivanov", Age = 9, Grade = 4, TownSchool = school }; var secondStudent = new Student { FirstName = "Peter", LastName = "Petrov", Age = 15, Grade = 9, TownSchool = school }; firstStudent.Marks.Add(new Mark { Subject = "Math", Value = 5, Student = firstStudent }); secondStudent.Marks.Add(new Mark { Subject = "History", Value = 4, Student = secondStudent }); secondStudent.Marks.Add(new Mark { Subject = "IT", Value = 6, Student = secondStudent }); repository.entities.Add(firstStudent); repository.entities.Add(secondStudent); var server = new InMemoryHttpServer("http://localhost/"); var response = server.CreateGetRequest("api/students?subject=Math&value=5"); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode); Assert.IsNotNull(response.Content); }
public void GetByIdStudentsControllerTest() { var repository = new FakeStudentRepository(); var school = new TownSchool { Name = "School", Location = "Town" }; var firstStudent = new Student { FirstName = "Ivan", LastName = "Ivanov", Age = 9, Grade = 4, TownSchool = school }; var secondStudent = new Student { FirstName = "Peter", LastName = "Petrov", Age = 15, Grade = 9, TownSchool = school }; var thirdStudent = new Student { FirstName = "Todor", LastName = "Todorov", Age = 7, Grade = 1, TownSchool = school }; repository.entities.Add(firstStudent); repository.entities.Add(secondStudent); repository.entities.Add(thirdStudent); var controller = new StudentsController(repository); var studentModel = controller.Get(1); Assert.AreEqual(secondStudent.FirstName, studentModel.FirstName); Assert.AreEqual(secondStudent.LastName, studentModel.LastName); Assert.AreEqual(secondStudent.Age, studentModel.Age); Assert.AreEqual(secondStudent.Grade, studentModel.Grade); }
private static void TestSchool() { var math = new School.Discipline("Math"); Console.WriteLine("math.ToString(): " + math); var petrov = new School.Teacher("Petrov"); Console.WriteLine("Petrov.ToString(): " + petrov); petrov.AddDiscipline(math); // petrov.AddDiscipline(math); <-exeption petrov.RemoveDiscipline(math); petrov.AddDiscipline(math); var pesho = new School.Student("Pesho"); Console.WriteLine("Pesho.ToString(): " + pesho); var gosho = new School.Student("Gosho"); pesho.Comment = "Pesho hates math for no reason!"; Console.WriteLine("Pesho.Comment: " + pesho.Comment); var fiveB = new School.ClassOfStudents("FiveB"); Console.WriteLine("FiveB.ToString(): " + fiveB.ToString()); fiveB.AddStudent(pesho); fiveB.RemoveStudent(pesho); fiveB.AddStudent(pesho); fiveB.AddStudent(gosho); fiveB.AddTeacher(petrov); var sch = new School.School("2865th"); Console.WriteLine("Sch.ToString(): " + sch); sch.AddClass(fiveB); sch.Comment = "The school"; Console.WriteLine("Sch.Comment: " + sch.Comment); }
public static StudentFullModel Convert(Student student) { StudentFullModel model = new StudentFullModel { StudentId = student.StudentId, FirstName = student.FirstName, LastName = student.LastName, Age = student.Age, Grade = student.Grade, MarksCount = student.Marks.Count, Marks = ( from mark in student.Marks select MarkModel.Convert(mark)).ToList(), TownSchool = new TownSchoolModel { TownSchoolId = student.TownSchool.TownSchoolId, Name = student.TownSchool.Name, Location = student.TownSchool.Location, StudentsCount = student.TownSchool.Students.Count } }; return model; }
public void PostStudentsControllerTest() { var repository = new FakeStudentRepository(); var school = new TownSchool { Name = "School", Location = "Town" }; var student = new Student { FirstName = "Ivan", LastName = "Ivanov", Age = 9, Grade = 4, TownSchool = school }; var controller = new StudentsController(repository); var studentModel = controller.Post(student).Content.ReadAsStringAsync().Result; Student studentDeserialized = JsonConvert.DeserializeObject<Student>(studentModel); Assert.IsTrue(controller.GetAll().Count() == 1); Assert.IsNotNull(studentDeserialized); Assert.AreEqual(student.FirstName, studentDeserialized.FirstName); Assert.AreEqual(student.LastName, studentDeserialized.LastName); Assert.AreEqual(student.Age, studentDeserialized.Age); Assert.AreEqual(student.Grade, studentDeserialized.Grade); }
public void PostStudentInvalidNameTest() { var repository = new FakeStudentRepository(); var school = new TownSchool { Name = "School", Location = "Town" }; var student = new Student { FirstName = null, LastName = "Ivanov", Age = 9, Grade = 4, TownSchool = school }; var server = new InMemoryHttpServer("http://localhost/"); var response = server.CreatePostRequest("api/students", student); Assert.AreEqual(HttpStatusCode.InternalServerError, response.StatusCode); }