Esempio n. 1
0
        public async Task GetByPredicateTestAsync()
        {
            //Arrange
            var expectation = new DummyDataModel {
                Id = 1, ATableColumn = "expected"
            };
            var dummyCollection = new List <DummyDataModel>
            {
                expectation,
                new DummyDataModel {
                    Id = 2, ATableColumn = "not expected"
                }
            };

            var mockDbSet     = new DbSetMock <DummyDataModel>(dummyCollection, (k, c) => k.Id, true);
            var mockDbContext = Mock.Of <DbContext>(MockBehavior.Strict);

            Mock.Get(mockDbContext)
            .Setup(db => db.Set <DummyDataModel>())
            .Returns(mockDbSet.Object);

            //Act
            var repo   = new Repository <DummyDataModel>(mockDbContext);
            var actual = await repo.GetByPredicateAsync(dummy => dummy.ATableColumn == expectation.ATableColumn);

            //Assert
            actual.Should().BeEquivalentTo(expectation);
            Mock.Get(mockDbContext).Verify();
        }
Esempio n. 2
0
        public async Task AddAsyncTestAsync()
        {
            //Arrange
            var dummyModel = new DummyDataModel {
                Id = 1, ATableColumn = "expected"
            };
            var mockDbContext = Mock.Of <DbContext>(MockBehavior.Strict);

            Mock.Get(mockDbContext)
            .Setup(db => db.AddAsync(dummyModel, It.IsAny <CancellationToken>()))
            .ReturnsAsync(default(EntityEntry <DummyDataModel>));

            //Act
            var repo = new Repository <DummyDataModel>(mockDbContext);
            await repo.AddAsync(dummyModel);

            //Assert
            Mock.Get(mockDbContext)
            .Verify(db => db.AddAsync(dummyModel, It.IsAny <CancellationToken>()), Times.Once);
        }
Esempio n. 3
0
        public void UpdateTest()
        {
            //Arrange
            var dummyModel    = new DummyDataModel();
            var mockDbSet     = Mock.Of <DbSet <DummyDataModel> >();
            var mockDbContext = Mock.Of <DbContext>(MockBehavior.Strict);

            Mock.Get(mockDbContext)
            .Setup(db => db.Set <DummyDataModel>())
            .Returns(mockDbSet);

            //Act
            var repo = new Repository <DummyDataModel>(mockDbContext);

            repo.Update(dummyModel);

            //Assert
            Mock.Get(mockDbContext).Verify();
            Mock.Get(mockDbSet)
            .Verify(e => e.Update(dummyModel), Times.Once);
        }