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));
        }
Beispiel #4
0
        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>());
        }
Beispiel #5
0
        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);
        }
Beispiel #6
0
        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);
        }
Beispiel #7
0
        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);
        }
Beispiel #8
0
        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);
        }