예제 #1
0
        public void DeleteContactThatDoesntExistReturnsNotFound()
        {
            var guid       = new Guid("b224a9a9-f02f-4403-ba6c-fb05951ede65");
            var controller = new ContactNumbersController(MockContactNumberService.Object);

            IHttpActionResult response = controller.Delete(guid);

            Assert.IsInstanceOfType(response, typeof(NotFoundResult));
        }
예제 #2
0
        public void GetContactNumberThatDoesntExistReturnsNull()
        {
            var guid = new Guid("b224a9a9-f02f-4403-ba6c-fb05951ede65");
            ContactNumbersController controller = new ContactNumbersController(MockContactNumberService.Object);

            SingleResult <ContactNumber> response = controller.Get(guid);
            var contactNumber = (response.Queryable).FirstOrDefault();

            Assert.IsNull(contactNumber);
        }
예제 #3
0
        public void GetExistingContactNumberReturnsContactNumber()
        {
            var guidOfExisting = new Guid("9a005b3e-d9ec-4e08-aefa-589ab5e00bfa");
            ContactNumbersController controller = new ContactNumbersController(MockContactNumberService.Object);

            SingleResult <ContactNumber> response = controller.Get(guidOfExisting);
            var contactNumber = (response.Queryable).FirstOrDefault();

            Assert.AreEqual(guidOfExisting, contactNumber.Id);
        }
예제 #4
0
        public void GetReturnsContactNumbers()
        {
            ContactNumbersController controller = new ContactNumbersController(MockContactNumberService.Object);

            var response = controller.Get();
            var results  = response.ToList();

            Assert.IsNotNull(results);
            Assert.AreEqual(16, results.Count);
        }
예제 #5
0
        public void DeleteReturnsOk()
        {
            var guidOfExistingContactNumber = new Guid("9a005b3e-d9ec-4e08-aefa-589ab5e00bfa");
            var controller = new ContactNumbersController(MockContactNumberService.Object);

            IHttpActionResult response = controller.Delete(guidOfExistingContactNumber);
            var statusCodeResult       = response as StatusCodeResult;

            Assert.IsNotNull(statusCodeResult);
            Assert.AreEqual(statusCodeResult.StatusCode, System.Net.HttpStatusCode.NoContent);
        }
예제 #6
0
        public void PutReturnsBadRequestResultWhenGuidDontMatch()
        {
            // Arrange
            var guidOfExistingContactNumber = new Guid("9a005b3e-d9ec-4e08-aefa-589ab5e00bfa");
            var newDesc    = "Description";
            var controller = new ContactNumbersController(MockContactNumberService.Object);

            // Act
            IHttpActionResult actionResult = controller.Put(guidOfExistingContactNumber, new ContactNumber {
                Id = Guid.Empty, Description = newDesc
            });
            var contentResult = actionResult as BadRequestResult;

            // Assert
            Assert.IsNotNull(contentResult);
        }
예제 #7
0
        public void PutThrowsException()
        {
            // Arrange
            var guidOfExistingContactNumber = new Guid("9a005b3e-d9ec-4e08-aefa-589ab5e00bfa");
            var newDesc = "Description";

            MockContactNumberService.Setup(item => item.Update(It.IsAny <ContactNumber>())).Throws(new Exception());
            var controller = new ContactNumbersController(MockContactNumberService.Object);

            // Act
            IHttpActionResult actionResult = controller.Put(guidOfExistingContactNumber, new ContactNumber {
                Id = guidOfExistingContactNumber, Description = newDesc
            });

            // Assert
        }
예제 #8
0
        public void PostMethodSetsLocationHeader()
        {
            // Arrange
            var newDesc    = "Description";
            var controller = new ContactNumbersController(MockContactNumberService.Object);

            // Act
            IHttpActionResult actionResult = controller.Post(new ContactNumber {
                Description = newDesc
            });
            var createdResult = actionResult as CreatedODataResult <ContactNumber>;

            // Assert
            Assert.IsNotNull(createdResult);
            Assert.IsNotNull(createdResult.Entity.Id);
            Assert.AreEqual(createdResult.Entity.Description, newDesc);
        }
예제 #9
0
        public void PostMethodReturnsBadRequestWhenModelIsInvalid()
        {
            // Arrange
            var newGuid    = new Guid("0998d643-4c5e-4b1f-9778-e0f6974eaf1d");
            var newDesc    = "Description";
            var controller = new ContactNumbersController(MockContactNumberService.Object);

            controller.ModelState.AddModelError("test", "test");

            // Act
            IHttpActionResult actionResult = controller.Post(new ContactNumber {
                Id = newGuid, Description = newDesc
            });
            var createdResult = actionResult as InvalidModelStateResult;

            // Assert
            Assert.IsNotNull(createdResult);
        }
예제 #10
0
        public void PutReturnsBadRequestWhenModelIsInvalidResult()
        {
            // Arrange
            var guidOfExistingContactNumber = new Guid("9a005b3e-d9ec-4e08-aefa-589ab5e00bfa");
            var newDesc    = "Description";
            var controller = new ContactNumbersController(MockContactNumberService.Object);

            controller.ModelState.AddModelError("test", "test");

            // Act
            IHttpActionResult actionResult = controller.Put(guidOfExistingContactNumber, new ContactNumber {
                Id = guidOfExistingContactNumber, Description = newDesc
            });
            var createdResult = actionResult as InvalidModelStateResult;

            // Assert
            Assert.IsNotNull(createdResult);
        }
예제 #11
0
        public void PutReturnsContentResult()
        {
            // Arrange
            var guidOfExistingContactNumber = new Guid("9a005b3e-d9ec-4e08-aefa-589ab5e00bfa");
            var newDesc    = "Description";
            var controller = new ContactNumbersController(MockContactNumberService.Object);

            // Act
            IHttpActionResult actionResult = controller.Put(guidOfExistingContactNumber, new ContactNumber {
                Id = guidOfExistingContactNumber, Description = newDesc
            });
            var contentResult = actionResult as OkNegotiatedContentResult <ContactNumber>;

            // Assert
            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.AreEqual(guidOfExistingContactNumber, contentResult.Content.Id);
            Assert.AreEqual(newDesc, contentResult.Content.Description);
        }