Ejemplo n.º 1
0
        public void Get_ThrowsExceptionForUnknownHobbit()
        {
            Hobbit testHobbit = null;
            Mock <IDataManager <Hobbit> > mockDataManager = new Mock <IDataManager <Hobbit> >();

            mockDataManager.Setup(dm => dm.TryGet(ID, out testHobbit)).Returns(false);

            HobbitController controller = new HobbitController(mockDataManager.Object);

            Assert.Throws <HttpResponseException>(() => controller.Get(ID));
        }
Ejemplo n.º 2
0
        public void Delete_ThrowsExceptionIfHobbitDoesNotExist()
        {
            Hobbit testHobbit = HobbitHelper.CreateHobbit(FIRST_HOBBIT_NAME);

            Mock <IDataManager <Hobbit> > mockDataManager = new Mock <IDataManager <Hobbit> >(MockBehavior.Loose);

            mockDataManager.Setup(dm => dm.TryGet(ID, out testHobbit)).Returns(false);

            HobbitController controller = new HobbitController(mockDataManager.Object);

            Assert.Throws <HttpResponseException>(() => controller.Delete(ID));
        }
Ejemplo n.º 3
0
        public void Get_ReturnsHobbitsFromDataManager(IEnumerable <Hobbit> hobbitsArray)
        {
            Mock <IDataManager <Hobbit> > mockDataManager = new Mock <IDataManager <Hobbit> >();

            mockDataManager.Setup(dm => dm.GetAll()).Returns(hobbitsArray);

            HobbitController controller = new HobbitController(mockDataManager.Object);

            IEnumerable <Hobbit> hobbits = controller.Get();

            Assert.True(hobbitsArray.Equals(hobbits));
        }
Ejemplo n.º 4
0
        public void Get_ReturnsSpecifiedHobbitFromDataManager()
        {
            Hobbit testHobbit = HobbitHelper.CreateHobbit(FIRST_HOBBIT_NAME, id: ID);
            Mock <IDataManager <Hobbit> > mockDataManager = new Mock <IDataManager <Hobbit> >();

            mockDataManager.Setup(dm => dm.TryGet(ID, out testHobbit)).Returns(true);

            HobbitController controller = new HobbitController(mockDataManager.Object);

            Hobbit hobbit = controller.Get(ID);

            Assert.Same(testHobbit, hobbit);
        }
Ejemplo n.º 5
0
        public void Put_ThrowsExceptionIfHobbitDoesNotMatchFoundHobbit()
        {
            long   testId     = default(long);
            Hobbit testHobbit = HobbitHelper.CreateHobbit(FIRST_HOBBIT_NAME);

            Mock <IDataManager <Hobbit> > mockDataManager = new Mock <IDataManager <Hobbit> >(MockBehavior.Loose);

            mockDataManager.Setup(dm => dm.TryGet(testHobbit, out testId)).Returns(true);

            HobbitController controller = new HobbitController(mockDataManager.Object);

            Assert.Throws <HttpResponseException>(() => controller.Put(ID, testHobbit));
        }
Ejemplo n.º 6
0
        public void Post_ThrowsExceptionIfHobbitAlreadyExists()
        {
            long   testId;
            Hobbit testHobbit = HobbitHelper.CreateHobbit(FIRST_HOBBIT_NAME);

            Mock <IDataManager <Hobbit> > mockDataManager = new Mock <IDataManager <Hobbit> >(MockBehavior.Loose);

            mockDataManager.Setup(dm => dm.TryGet(testHobbit, out testId)).Returns(true);
            mockDataManager.Setup(dm => dm.Insert(testHobbit)).Returns(testHobbit);

            HobbitController controller = new HobbitController(mockDataManager.Object);

            Assert.Throws <HttpResponseException>(() => controller.Post(testHobbit));
        }
Ejemplo n.º 7
0
        public void Put_ThrowsExceptionIfDataManagerReturnsNull()
        {
            long   testId     = ID;
            Hobbit testHobbit = HobbitHelper.CreateHobbit(FIRST_HOBBIT_NAME);
            Hobbit nullHobbit = null;

            Mock <IDataManager <Hobbit> > mockDataManager = new Mock <IDataManager <Hobbit> >(MockBehavior.Loose);

            mockDataManager.Setup(dm => dm.TryGet(testHobbit, out testId)).Returns(true);
            mockDataManager.Setup(dm => dm.Update(testHobbit, testId)).Returns(nullHobbit);

            HobbitController controller = new HobbitController(mockDataManager.Object);

            Assert.Throws <HttpResponseException>(() => controller.Put(ID, testHobbit));
        }
Ejemplo n.º 8
0
        public void Post_PassesHobbitToDataManager()
        {
            long   testId;
            Hobbit testHobbit = HobbitHelper.CreateHobbit(FIRST_HOBBIT_NAME);

            Mock <IDataManager <Hobbit> > mockDataManager = new Mock <IDataManager <Hobbit> >(MockBehavior.Loose);

            mockDataManager.Setup(dm => dm.TryGet(testHobbit, out testId)).Returns(false);
            mockDataManager.Setup(dm => dm.Insert(testHobbit)).Returns(testHobbit);

            HobbitController controller = new HobbitController(mockDataManager.Object);

            Hobbit hobbit = controller.Post(testHobbit);

            mockDataManager.Verify(dm => dm.Insert(testHobbit));
        }
Ejemplo n.º 9
0
        public void Delete_DeletesSpecifiedHobbit()
        {
            long   testId     = ID;
            Hobbit testHobbit = HobbitHelper.CreateHobbit(FIRST_HOBBIT_NAME);

            Mock <IDataManager <Hobbit> > mockDataManager = new Mock <IDataManager <Hobbit> >(MockBehavior.Loose);

            mockDataManager.Setup(dm => dm.TryGet(testId, out testHobbit)).Returns(true);
            mockDataManager.Setup(dm => dm.Delete(testId)).Returns(true);

            HobbitController controller = new HobbitController(mockDataManager.Object);

            controller.Delete(ID);

            mockDataManager.Verify(dm => dm.Delete(testId), Times.Once());
        }
Ejemplo n.º 10
0
        public void Put_UpdatesExistingHobbit()
        {
            long   testId           = ID;
            Hobbit firstTestHobbit  = HobbitHelper.CreateHobbit(FIRST_HOBBIT_NAME);
            Hobbit secondTestHobbit = HobbitHelper.CreateHobbit(SECOND_HOBBIT_NAME);

            Mock <IDataManager <Hobbit> > mockDataManager = new Mock <IDataManager <Hobbit> >(MockBehavior.Loose);

            mockDataManager.Setup(dm => dm.TryGet(firstTestHobbit, out testId)).Returns(true);
            mockDataManager.Setup(dm => dm.Update(firstTestHobbit, ID)).Returns(secondTestHobbit);

            HobbitController controller = new HobbitController(mockDataManager.Object);

            Hobbit updatedHobbit = controller.Put(ID, firstTestHobbit);

            Assert.Equal(secondTestHobbit, updatedHobbit);
        }