Esempio n. 1
0
        public void CreateInvalidHomeworkBadRequestTest()
        {
            var mock = new Mock <IHomeworksLogic>(MockBehavior.Strict);

            mock.Setup(m => m.Create(null)).Throws(new ArgumentException());
            var controller = new HomeworksController(mock.Object);

            var result = controller.Post(null);

            mock.VerifyAll();
            Assert.IsInstanceOfType(result, typeof(BadRequestObjectResult));
        }
Esempio n. 2
0
        public void DeleteHomeworkTest()
        {
            var homeworkGuid = Guid.NewGuid();
            var mock         = new Mock <IHomeworkLogic>(MockBehavior.Strict);

            mock.Setup(m => m.Remove(homeworkGuid));
            var controller = new HomeworksController(mock.Object);

            var result = controller.Delete(homeworkGuid);

            mock.VerifyAll();
            Assert.IsInstanceOfType(result, typeof(NoContentResult));
        }
        public void CreateNullHomeworkTest()
        {
            Homework fakeHomework       = null;
            var      mockHomeworksLogic = new Mock <IHomeworksLogic>();

            mockHomeworksLogic
            .Setup(wl => wl.Add(It.IsAny <Entities.Homework>()))
            .Throws(new ArgumentNullException());
            var controller = new HomeworksController(mockHomeworksLogic.Object);

            IHttpActionResult obtainedResult = controller.Post(fakeHomework);
            var createdResult = obtainedResult as CreatedAtRouteNegotiatedContentResult <Homework>;

            mockHomeworksLogic.VerifyAll();
            Assert.IsInstanceOfType(obtainedResult, typeof(BadRequestErrorMessageResult));
        }
        public void GetHomeworkErrorNotFoundTest()
        {
            Homework expectedHomework   = null;
            var      mockHomeworksLogic = new Mock <IHomeworksLogic>();

            mockHomeworksLogic
            .Setup(wl => wl.GetById(It.IsAny <Guid>()))
            .Returns(Homework.ToEntity(expectedHomework));
            var controller = new HomeworksController(mockHomeworksLogic.Object);

            IHttpActionResult obtainedResult = controller.Get(Guid.NewGuid());
            var contentResult = obtainedResult as OkNegotiatedContentResult <Homework>;

            mockHomeworksLogic.VerifyAll();
            Assert.IsInstanceOfType(obtainedResult, typeof(NotFoundResult));
        }
        public void GetAllRestrictedHomeworksErrorUnauthorizedTest()
        {
            var request = new HttpRequestMessage(HttpMethod.Get, "DefaultUri");

            var expectedHomeworks  = GetFakeHomeworks();
            var mockHomeworksLogic = new Mock <IHomeworksLogic>();
            var controller         = new HomeworksController(mockHomeworksLogic.Object);

            controller.Request = request;

            IHttpActionResult obtainedResult = controller.GetAllRestrictedHomeworks();
            var contentResult = obtainedResult as OkNegotiatedContentResult <IEnumerable <Homework> >;

            mockHomeworksLogic.VerifyAll();
            Assert.IsInstanceOfType(obtainedResult, typeof(UnauthorizedResult));
        }
        public void DeleteHomeworkErrorNotFoundTest()
        {
            Guid fakeGuid           = Guid.NewGuid();
            var  expectedResult     = false;
            var  mockHomeworksLogic = new Mock <IHomeworksLogic>();

            mockHomeworksLogic
            .Setup(wl => wl.DeleteById(It.IsAny <Guid>()))
            .Returns(expectedResult);
            var controller = new HomeworksController(mockHomeworksLogic.Object);

            IHttpActionResult obtainedResult = controller.Delete(fakeGuid);

            mockHomeworksLogic.VerifyAll();
            Assert.IsInstanceOfType(obtainedResult, typeof(NotFoundResult));
        }
        public void UpdateHomeworkErrorUnexistingTest()
        {
            Homework fakeHomework       = GetFakeHomework();
            var      expectedResult     = false;
            var      mockHomeworksLogic = new Mock <IHomeworksLogic>();

            mockHomeworksLogic
            .Setup(wl => wl.Update(It.IsAny <Guid>(), It.IsAny <Entities.Homework>()))
            .Returns(expectedResult);
            var controller = new HomeworksController(mockHomeworksLogic.Object);

            IHttpActionResult obtainedResult = controller.Put(Guid.NewGuid(), fakeHomework);

            mockHomeworksLogic.VerifyAll();
            Assert.IsInstanceOfType(obtainedResult, typeof(NotFoundResult));
        }
        public void GetHomeworkOkTest()
        {
            var expectedHomework   = GetFakeHomework();
            var mockHomeworksLogic = new Mock <IHomeworksLogic>();

            mockHomeworksLogic
            .Setup(wl => wl.GetById(It.IsAny <Guid>()))
            .Returns(Homework.ToEntity(expectedHomework));
            var controller = new HomeworksController(mockHomeworksLogic.Object);

            IHttpActionResult obtainedResult = controller.Get(expectedHomework.Id);
            var contentResult = obtainedResult as OkNegotiatedContentResult <Homework>;

            mockHomeworksLogic.VerifyAll();
            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.AreEqual(expectedHomework, contentResult.Content);
        }
        public void CreateNewHomeworkTest()
        {
            Homework fakeHomework       = GetFakeHomework();
            var      mockHomeworksLogic = new Mock <IHomeworksLogic>();

            mockHomeworksLogic
            .Setup(wl => wl.Add(It.IsAny <Entities.Homework>()))
            .Returns(Homework.ToEntity(fakeHomework));
            var controller = new HomeworksController(mockHomeworksLogic.Object);

            IHttpActionResult obtainedResult = controller.Post(fakeHomework);
            var createdResult = obtainedResult as CreatedAtRouteNegotiatedContentResult <Homework>;

            mockHomeworksLogic.VerifyAll();
            Assert.IsNotNull(createdResult);
            Assert.AreEqual("DefaultApi", createdResult.RouteName);
            Assert.AreEqual(fakeHomework.Id, createdResult.RouteValues["id"]);
            Assert.AreEqual(fakeHomework, createdResult.Content);
        }
        public void GetExerciseOkTest()
        {
            var fakeHomeworkGuid   = Guid.NewGuid();
            var expectedExercise   = GetFakeExercise();
            var mockHomeworksLogic = new Mock <IHomeworksLogic>();

            mockHomeworksLogic
            .Setup(wl => wl.GetExercise(It.IsAny <Guid>(), It.IsAny <Guid>()))
            .Returns(Exercise.ToEntity(expectedExercise));
            var controller = new HomeworksController(mockHomeworksLogic.Object);

            IHttpActionResult obtainedResult = controller.Get(fakeHomeworkGuid, expectedExercise.Id);
            var contentResult = obtainedResult as OkNegotiatedContentResult <Exercise>;

            mockHomeworksLogic.VerifyAll();
            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.AreEqual(expectedExercise, contentResult.Content);
        }
        public void GetAllHomeworksOkTest()
        {
            var expectedHomeworks  = GetFakeHomeworks();
            var mockHomeworksLogic = new Mock <IHomeworksLogic>();

            mockHomeworksLogic
            .Setup(wl => wl.GetAll())
            .Returns(Homework.ToEntity(expectedHomeworks));
            var controller = new HomeworksController(mockHomeworksLogic.Object);

            IHttpActionResult obtainedResult = controller.Get();
            var contentResult = obtainedResult as OkNegotiatedContentResult <IEnumerable <Homework> >;

            mockHomeworksLogic.VerifyAll();
            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.IsTrue(expectedHomeworks.SequenceEqual(contentResult.Content));
            //CollectionAssert.AreEqual(expectedHomeworks.ToList(), contentResult.Content.ToList());
        }
Esempio n. 12
0
        public void GetHomeworkTest()
        {
            var homeworkModel = new HomeworkModel
            {
                Id          = Guid.NewGuid(),
                Description = "A basic homework",
            };
            var mock = new Mock <IHomeworkLogic>(MockBehavior.Strict);

            mock.Setup(m => m.Get(homeworkModel.Id)).Returns(homeworkModel.ToEntity());
            var controller = new HomeworksController(mock.Object);

            var result        = controller.Get(homeworkModel.Id);
            var createdResult = result as OkObjectResult;
            var model         = createdResult.Value as HomeworkModel;

            mock.VerifyAll();
            Assert.AreEqual(homeworkModel.Description, model.Description);
            Assert.AreEqual(homeworkModel.Id, model.Id);
        }
Esempio n. 13
0
        public void CreateValidHomeworkOkTest()
        {
            Homework homework = new Homework();

            homework.DueDate     = DateTime.Now;
            homework.Description = "testing description";

            var mock = new Mock <IHomeworkLogic>(MockBehavior.Strict);

            mock.Setup(m => m.Create(It.IsAny <Homework>())).Returns(homework);
            var controller = new HomeworksController(mock.Object);

            var result        = controller.Post(homework);
            var createdResult = result as CreatedAtRouteResult;
            var model         = createdResult.Value as Homework;

            mock.VerifyAll();
            Assert.AreEqual(homework.Description, model.Description);
            Assert.AreEqual(homework.DueDate, model.DueDate);
        }
        public void CreateExerciseOkTest()
        {
            var fakeHomeworkGuid   = Guid.NewGuid();
            var fakeExercise       = GetFakeExercise();
            var mockHomeworksLogic = new Mock <IHomeworksLogic>();

            mockHomeworksLogic
            .Setup(wl => wl.AddExercise(It.IsAny <Guid>(), It.IsAny <Entities.Exercise>()))
            .Returns(Exercise.ToEntity(fakeExercise));
            var controller = new HomeworksController(mockHomeworksLogic.Object);

            IHttpActionResult obtainedResult = controller.Post(fakeHomeworkGuid, fakeExercise);
            var createdResult = obtainedResult as CreatedAtRouteNegotiatedContentResult <Exercise>;

            mockHomeworksLogic.VerifyAll();
            Assert.IsNotNull(createdResult);
            Assert.AreEqual("GetExerciseById", createdResult.RouteName);
            Assert.AreEqual(fakeHomeworkGuid, createdResult.RouteValues["homeworkId"]);
            Assert.AreEqual(fakeExercise.Id, createdResult.RouteValues["exerciseId"]);
            Assert.AreEqual(fakeExercise, createdResult.Content);
        }
        public void GetAllRestrictedHomeworksOkTest()
        {
            var request = new HttpRequestMessage(HttpMethod.Get, "DefaultUri");

            request.Headers.Add("Authorization", "admin");

            var expectedHomeworks  = GetFakeHomeworks();
            var mockHomeworksLogic = new Mock <IHomeworksLogic>();

            mockHomeworksLogic
            .Setup(wl => wl.GetAll())
            .Returns(Homework.ToEntity(expectedHomeworks));
            var controller = new HomeworksController(mockHomeworksLogic.Object);

            controller.Request = request;

            IHttpActionResult obtainedResult = controller.GetAllRestrictedHomeworks();
            var contentResult = obtainedResult as OkNegotiatedContentResult <IEnumerable <Homework> >;

            mockHomeworksLogic.VerifyAll();
            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.IsTrue(expectedHomeworks.SequenceEqual(contentResult.Content));
        }