Beispiel #1
0
        public void GetStudents()
        {
            //var school = new School().AddSchoolToDatabase(
            var  mockRepository = Mock.Create <DbStudentRepository>();
            bool added          = false;

            var student = new Student()
                          .AddFirstName("ivan")
                          .AddLastName("petkov")
                          .AddAge(8)
                          .AddGrade(2)
                          .AddSchoolId(1);

            //IQueryable

            Mock.Arrange(() => mockRepository.All())
            .DoInstead(() => added = true)
            .Returns((new Student[] { student, student }).AsQueryable());

            var server = new InMemoryHttpServer <Student>("http://localhost/", mockRepository);

            var responce = server.CreateGetRequest("api/students");

            Assert.AreEqual(responce.StatusCode, HttpStatusCode.OK);
            Assert.IsTrue(added);
        }
Beispiel #2
0
        public void PostEmptyStudent()
        {
            //var school = new School().AddSchoolToDatabase(
            var mockRepository = Mock.Create <DbStudentRepository>();

            var student = new Student();

            Mock.Arrange(() => mockRepository.Add(Arg.IsAny <Student>()))
            .Throws(new DbEntityValidationException());

            var server = new InMemoryHttpServer <Student>("http://localhost/", mockRepository);

            var responce = server.CreatePostRequest("api/students", JsonConvert.SerializeObject(student));

            Assert.AreEqual((int)responce.StatusCode, 500);
        }
Beispiel #3
0
        public void PostStudentWithoutSchool()
        {
            //var school = new School().AddSchoolToDatabase(
            var mockRepository = Mock.Create <DbStudentRepository>();

            var student = new Student()
                          .AddFirstName("ivan")
                          .AddLastName("petkov")
                          .AddAge(8)
                          .AddGrade(2);

            Mock.Arrange(() => mockRepository.Add(Arg.IsAny <Student>()))
            .Throws(new DbEntityValidationException());

            var server = new InMemoryHttpServer <Student>("http://localhost/", mockRepository);

            var responce = server.CreatePostRequest("api/students", JsonConvert.SerializeObject(student));

            Assert.AreEqual(responce.StatusCode, HttpStatusCode.InternalServerError);
        }
Beispiel #4
0
        public void PostStudent()
        {
            //var school = new School().AddSchoolToDatabase(
            var  mockRepository = Mock.Create <DbStudentRepository>();
            bool added          = false;

            var student = new Student()
                          .AddFirstName("ivan")
                          .AddLastName("petkov")
                          .AddAge(8)
                          .AddGrade(2)
                          .AddSchoolId(1);

            Mock.Arrange(() => mockRepository.Add(Arg.IsAny <Student>()))
            .DoInstead(() => added = true)
            .Returns(student);

            var server = new InMemoryHttpServer <Student>("http://localhost/", mockRepository);

            var responce = server.CreatePostRequest("api/students", JsonConvert.SerializeObject(student));

            Assert.AreEqual(responce.StatusCode, HttpStatusCode.Created);
            Assert.IsTrue(added);
        }