public void Add_Should_NotThrowException_WhenPassedArgumentIsValid() { // Arrange var mockedSet = new Mock <DbSet <IAdvert> >(); var mockedAdvert = new Mock <IAdvert>(); mockedSet.SetupAllProperties(); var mockedDbContext = new Mock <ICarSystemEfDbContext>(); var fakeEntry = (DbEntityEntry <IAdvert>)FormatterServices.GetSafeUninitializedObject(typeof(DbEntityEntry <IAdvert>)); // Act mockedDbContext.Setup(x => x.Set <IAdvert>()).Returns(mockedSet.Object); mockedDbContext.Setup(x => x.Entry(It.IsAny <IAdvert>())).Returns(fakeEntry); var mockedDbSet = new EfCarSystemDbSetCocoon <IAdvert>(mockedDbContext.Object); try { mockedDbSet.Add(mockedAdvert.Object); } catch (NullReferenceException e) { } // Assert mockedDbContext.Verify(x => x.Entry(mockedAdvert.Object), Times.AtLeastOnce); }
public void Constructor_Should_WorkCorrectly_IfDbContextPassedIsValid() { // Arrange var mockedDbContext = new Mock <ICarSystemEfDbContext>(); var mockedModel = new Mock <DbSet <IAdvert> >(); // Act mockedDbContext.Setup(x => x.Set <IAdvert>()).Returns(mockedModel.Object); var mockedDbSet = new EfCarSystemDbSetCocoon <IAdvert>(mockedDbContext.Object); // Assert Assert.That(mockedDbSet, Is.Not.Null); }
public void Constructor_Should_SetDbSetCorrectly_WhenValidArgumentsPassed() { // Arrange var mockedContext = new Mock <ICarSystemEfDbContext>(); var mockedModel = new Mock <DbSet <IAdvert> >(); // Act mockedContext.Setup(x => x.Set <IAdvert>()).Returns(mockedModel.Object); var repository = new EfCarSystemDbSetCocoon <IAdvert>(mockedContext.Object); // Assert Assert.That(repository.DbSet, Is.Not.Null); Assert.That(repository.DbSet, Is.EqualTo(mockedModel.Object)); }
public void Delete_Should_ThrowNullReferenceException_WhenPassedArgumentIsNull() { // Arrange var mockedDbContext = new Mock <ICarSystemEfDbContext>(); var mockedSet = new Mock <DbSet <IAdvert> >(); // Act mockedDbContext.Setup(set => set.Set <IAdvert>()).Returns(mockedSet.Object); var mockedDbSet = new EfCarSystemDbSetCocoon <IAdvert>(mockedDbContext.Object); IAdvert entity = null; // Assert Assert.That(() => mockedDbSet.Delete(entity), Throws.InstanceOf <NullReferenceException>()); }
public void All_Should_ReturnEntitiesOfGivenSet() { // Arrange var mockedDbContext = new Mock <ICarSystemEfDbContext>(); var mockedSet = new Mock <DbSet <IAdvert> >(); // Act mockedDbContext.Setup(x => x.Set <IAdvert>()).Returns(mockedSet.Object); var mockedDbSet = new EfCarSystemDbSetCocoon <IAdvert>(mockedDbContext.Object); // Assert Assert.NotNull(mockedDbSet.All()); Assert.IsInstanceOf(typeof(DbSet <IAdvert>), mockedDbSet.All()); Assert.AreSame(mockedDbSet.All(), mockedDbSet.DbSet); }
public void ReturnCorrectResult_WhenParameterIsValid() { // Arrange var mockedSet = new Mock <DbSet <IAdvert> >(); var mockedDbContext = new Mock <ICarSystemEfDbContext>(); var fakeAdvert = new Mock <IAdvert>(); var validId = 15; // Act mockedDbContext.Setup(mock => mock.Set <IAdvert>()).Returns(mockedSet.Object); var mockedDbSet = new EfCarSystemDbSetCocoon <IAdvert>(mockedDbContext.Object); mockedSet.Setup(x => x.Find(It.IsAny <int>())).Returns(fakeAdvert.Object); // Assert Assert.That(mockedDbSet.GetById(validId), Is.Not.Null); Assert.AreEqual(mockedDbSet.GetById(validId), fakeAdvert.Object); }
public void Detach_Should_BeCalled_WhenInvoked() { // Arrange var mockedSet = new Mock <DbSet <IAdvert> >(); var mockedDbContext = new Mock <ICarSystemEfDbContext>(); mockedDbContext.Setup(x => x.Set <IAdvert>()).Returns(mockedSet.Object); var mockedDbSet = new EfCarSystemDbSetCocoon <IAdvert>(mockedDbContext.Object); var mockedAdvert = new Mock <IAdvert>(); // Act try { mockedDbSet.Detach(mockedAdvert.Object); } catch (NullReferenceException e) { }; // Assert mockedDbContext.Verify(x => x.Entry(mockedAdvert.Object), Times.AtLeastOnce); }
public void Delete_Should_NotThrowException_WhenPassedArgumentIsValid() { // Arrange var mockedSet = new Mock <DbSet <IAdvert> >(); var mockedAdvert = new Mock <IAdvert>(); mockedSet.SetupAllProperties(); var mockedDbContext = new Mock <ICarSystemEfDbContext>(); // Act mockedDbContext.Setup(x => x.Set <IAdvert>()).Returns(mockedSet.Object); var mockedDbSet = new EfCarSystemDbSetCocoon <IAdvert>(mockedDbContext.Object); try { mockedDbSet.Delete(mockedAdvert.Object); } catch (NullReferenceException e) { } // Assert mockedDbContext.Verify(x => x.Entry(mockedAdvert.Object), Times.AtLeastOnce); }