public void Verify_Deactivate_Should_SetTheActivePropertyToFalseOnTheEntity()
 {
     // Arrange
     Mock<IDbSet<VolumeWriter>> mockSetVolumeWriters;
     var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
     var repository = new VolumeWritersRepository(mockContext.Object);
     var volumeWriters = repository.Get(1);
     // Act
     repository.Deactivate(volumeWriters);
     // Assert
     Assert.Equal(false, volumeWriters.Active);
 }
        public void Verify_Get_ByKey_Should_ReturnTheCorrectVolumeWriter()
        {
            // Arrange
            Mock <IDbSet <VolumeWriter> > mockSetVolumeWriters;
            var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
            var repository  = new VolumeWritersRepository(mockContext.Object);
            // Act
            var volumeWriters = repository.Get("KING-STEPHEN");

            // Assert
            Assert.Equal("/TEST/KING-STEPHEN", volumeWriters.ApiDetailUrl);
        }
 public void Verify_Add_Should_AddTheEntityToTheContext()
 {
     // Arrange
     Mock<IDbSet<VolumeWriter>> mockSetVolumeWriters;
     var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(false, out mockSetVolumeWriters);
     var repository = new VolumeWritersRepository(mockContext.Object);
     var volumeWriters = new VolumeWriter { Active = true, CustomKey = "SALVATORE-RAA", };
     // Act
     repository.Add(volumeWriters);
     // Assert
     mockSetVolumeWriters.Verify(x => x.Add(volumeWriters), Times.Once);
 }
        public void Verify_Remove_Should_RemoveTheEntityFromTheContext()
        {
            // Arrange
            Mock <IDbSet <VolumeWriter> > mockSetVolumeWriters;
            var mockContext   = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
            var repository    = new VolumeWritersRepository(mockContext.Object);
            var volumeWriters = repository.Get(1);

            // Act
            repository.Remove(volumeWriters);
            // Assert
            mockSetVolumeWriters.Verify(x => x.Remove((VolumeWriter)volumeWriters), Times.Once);
        }
        public void Verify_Deactivate_Should_SetTheActivePropertyToFalseOnTheEntity()
        {
            // Arrange
            Mock <IDbSet <VolumeWriter> > mockSetVolumeWriters;
            var mockContext   = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
            var repository    = new VolumeWritersRepository(mockContext.Object);
            var volumeWriters = repository.Get(1);

            // Act
            repository.Deactivate(volumeWriters);
            // Assert
            Assert.Equal(false, volumeWriters.Active);
        }
        public void Verify_Update_Should_SetTheEntityStateToModified()
        {
            // Arrange
            Mock <IDbSet <VolumeWriter> > mockSetVolumeWriters;
            var mockContext   = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
            var repository    = new VolumeWritersRepository(mockContext.Object);
            var volumeWriters = repository.Get(1);

            volumeWriters.ApiDetailUrl = "/TEST";
            // Act
            repository.Update(volumeWriters);
            // Assert
            mockContext.Verify(x => x.SetModified(It.IsAny <object>()), Times.Once);
        }
        public void Verify_Add_Should_AddTheEntityToTheContext()
        {
            // Arrange
            Mock <IDbSet <VolumeWriter> > mockSetVolumeWriters;
            var mockContext   = VolumeWritersMockingSetup.DoMockingSetupForContext(false, out mockSetVolumeWriters);
            var repository    = new VolumeWritersRepository(mockContext.Object);
            var volumeWriters = new VolumeWriter {
                Active = true, CustomKey = "SALVATORE-RAA",
            };

            // Act
            repository.Add(volumeWriters);
            // Assert
            mockSetVolumeWriters.Verify(x => x.Add(volumeWriters), Times.Once);
        }
        public void Verify_List_Should_ReturnAListOfVolumeWritersWithData()
        {
            // Arrange
            Mock <IDbSet <VolumeWriter> > mockSetVolumeWriters;
            var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
            var repository  = new VolumeWritersRepository(mockContext.Object);
            // Act
            var volumeWriters = repository.List.ToArray();

            // Assert
            Assert.Equal(2, volumeWriters.Length);
            Assert.Equal(1, volumeWriters[0].Id);
            Assert.Equal("/TEST/KING-STEPHEN", volumeWriters[0].ApiDetailUrl);
            Assert.Equal(2, volumeWriters[1].Id);
            Assert.Equal("/TEST/NIVEN-LARRY", volumeWriters[1].ApiDetailUrl);
        }
        public void Verify_Search_WithSelectStatement_Should_ReturnAListOfDynamicObjects()
        {
            // Arrange
            Mock <IDbSet <VolumeWriter> > mockSetVolumeWriters;
            var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters, true);
            var repository  = new VolumeWritersRepository(mockContext.Object);
            var searchModel = new Mock <IVolumeWriterSearchModel>();
            // Act
            var volumeWriters = repository.Search(searchModel.Object, i => new { i.Id, MyApiDetailUrl = i.ApiDetailUrl }).ToArray();

            // Assert
            Assert.Equal(1, volumeWriters.Length);
            Assert.Equal(2, volumeWriters[0].Id);
            Assert.Equal("/TEST/NIVEN-LARRY", volumeWriters[0].MyApiDetailUrl);
            // Stephen King was filtered out because he was Inactive
        }
        public void Verify_Search_WithPaging_Should_ReturnAListOfVolumeWritersWithDataMatchingSearchParameters()
        {
            // Arrange
            Mock <IDbSet <VolumeWriter> > mockSetVolumeWriters;
            var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
            var repository  = new VolumeWritersRepository(mockContext.Object);
            var searchModel = new VolumeWriterSearchModel {
                Paging = new Paging {
                    Skip = 1, Take = 1
                }
            };
            // Act
            var volumeWriters = repository.Search(searchModel /*.Object*/).ToArray();

            // Assert
            Assert.Equal(1, volumeWriters.Length);
            Assert.Equal(2, volumeWriters[0].Id);
            Assert.Equal("/TEST/NIVEN-LARRY", volumeWriters[0].ApiDetailUrl);
            // Stephen King was filtered out because he was Skipped
        }
        public void Verify_Search_WithModifiedSince_Should_ReturnAListOfVolumeWritersWithDataMatchingSearchParameters()
        {
            // Arrange
            Mock <IDbSet <VolumeWriter> > mockSetVolumeWriters;
            var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters, true);
            var repository  = new VolumeWritersRepository(mockContext.Object);
            var createDate  = new System.DateTime(2015, 05, 28, 10, 45, 00).AddDays(1).AddMinutes(-1);
            //var searchModel = new Mock<IVolumeWriterSearchModel>();
            //searchModel.Setup(m => m.ModifiedSince).Returns(() => createDate);
            var searchModel = new VolumeWriterSearchModel {
                ModifiedSince = createDate
            };
            // Act
            var volumeWriters = repository.Search(searchModel /*.Object*/).ToArray();

            // Assert
            Assert.Equal(1, volumeWriters.Length);
            Assert.Equal(2, volumeWriters[0].Id);
            Assert.Equal("/TEST/NIVEN-LARRY", volumeWriters[0].ApiDetailUrl);
            // Stephen King was filtered out because he was created before the modified since date
        }
 public void Verify_List_Should_ReturnAListOfVolumeWritersWithData()
 {
     // Arrange
     Mock<IDbSet<VolumeWriter>> mockSetVolumeWriters;
     var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
     var repository = new VolumeWritersRepository(mockContext.Object);
     // Act
     var volumeWriters = repository.List.ToArray();
     // Assert
     Assert.Equal(2, volumeWriters.Length);
     Assert.Equal(1, volumeWriters[0].Id);
     Assert.Equal("/TEST/KING-STEPHEN", volumeWriters[0].ApiDetailUrl);
     Assert.Equal(2, volumeWriters[1].Id);
     Assert.Equal("/TEST/NIVEN-LARRY", volumeWriters[1].ApiDetailUrl);
 }
 public void Verify_Search_WithModifiedSince_Should_ReturnAListOfVolumeWritersWithDataMatchingSearchParameters()
 {
     // Arrange
     Mock<IDbSet<VolumeWriter>> mockSetVolumeWriters;
     var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters, true);
     var repository = new VolumeWritersRepository(mockContext.Object);
     var createDate = new System.DateTime(2015, 05, 28, 10, 45, 00).AddDays(1).AddMinutes(-1);
     //var searchModel = new Mock<IVolumeWriterSearchModel>();
     //searchModel.Setup(m => m.ModifiedSince).Returns(() => createDate);
     var searchModel = new VolumeWriterSearchModel { ModifiedSince = createDate };
     // Act
     var volumeWriters = repository.Search(searchModel/*.Object*/).ToArray();
     // Assert
     Assert.Equal(1, volumeWriters.Length);
     Assert.Equal(2, volumeWriters[0].Id);
     Assert.Equal("/TEST/NIVEN-LARRY", volumeWriters[0].ApiDetailUrl);
     // Stephen King was filtered out because he was created before the modified since date
 }
 public void Verify_Search_WithPaging_Should_ReturnAListOfVolumeWritersWithDataMatchingSearchParameters()
 {
     // Arrange
     Mock<IDbSet<VolumeWriter>> mockSetVolumeWriters;
     var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
     var repository = new VolumeWritersRepository(mockContext.Object);
     var searchModel = new VolumeWriterSearchModel { Paging = new Paging { Skip = 1, Take = 1 } };
     // Act
     var volumeWriters = repository.Search(searchModel/*.Object*/).ToArray();
     // Assert
     Assert.Equal(1, volumeWriters.Length);
     Assert.Equal(2, volumeWriters[0].Id);
     Assert.Equal("/TEST/NIVEN-LARRY", volumeWriters[0].ApiDetailUrl);
     // Stephen King was filtered out because he was Skipped
 }
 public void Verify_Remove_Should_RemoveTheEntityFromTheContext()
 {
     // Arrange
     Mock<IDbSet<VolumeWriter>> mockSetVolumeWriters;
     var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
     var repository = new VolumeWritersRepository(mockContext.Object);
     var volumeWriters = repository.Get(1);
     // Act
     repository.Remove(volumeWriters);
     // Assert
     mockSetVolumeWriters.Verify(x => x.Remove((VolumeWriter)volumeWriters), Times.Once);
 }
 public void Verify_Get_ByID_Should_ReturnTheCorrectVolumeWriter()
 {
     // Arrange
     Mock<IDbSet<VolumeWriter>> mockSetVolumeWriters;
     var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
     var repository = new VolumeWritersRepository(mockContext.Object);
     // Act
     var volumeWriters = repository.Get(1);
     // Assert
                 Assert.Equal("/TEST/KING-STEPHEN", volumeWriters.ApiDetailUrl);
 }
 public void Verify_Search_WithSelectStatement_Should_ReturnAListOfDynamicObjects()
 {
     // Arrange
     Mock<IDbSet<VolumeWriter>> mockSetVolumeWriters;
     var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters, true);
     var repository = new VolumeWritersRepository(mockContext.Object);
     var searchModel = new Mock<IVolumeWriterSearchModel>();
     // Act
     var volumeWriters = repository.Search(searchModel.Object, i => new { i.Id, MyApiDetailUrl = i.ApiDetailUrl }).ToArray();
     // Assert
     Assert.Equal(1, volumeWriters.Length);
     Assert.Equal(2, volumeWriters[0].Id);
     Assert.Equal("/TEST/NIVEN-LARRY", volumeWriters[0].MyApiDetailUrl);
     // Stephen King was filtered out because he was Inactive
 }
 public void Verify_Update_Should_SetTheEntityStateToModified()
 {
     // Arrange
     Mock<IDbSet<VolumeWriter>> mockSetVolumeWriters;
     var mockContext = VolumeWritersMockingSetup.DoMockingSetupForContext(true, out mockSetVolumeWriters);
     var repository = new VolumeWritersRepository(mockContext.Object);
     var volumeWriters = repository.Get(1);
     volumeWriters.ApiDetailUrl = "/TEST";
     // Act
     repository.Update(volumeWriters);
     // Assert
     mockContext.Verify(x => x.SetModified(It.IsAny<object>()), Times.Once);
 }