コード例 #1
0
        public void Verify_SaveChanges_WithBadData_Should_ThrowAnException()
        {
            // Arrange
            Mock <IDbSet <Person> > mockSetPeople;
            var mockContext = PeopleMockingSetup.DoMockingSetupForContext(false, out mockSetPeople);

            mockContext.Setup(m => m.SaveChanges()).Returns(() => { throw new Exception("TEST"); });
            var repository = new PeopleRepository(mockContext.Object);

            // Act/Assert
            Assert.Throws(typeof(Exception), () => { repository.SaveChanges(); });
        }
コード例 #2
0
        public void Verify_SaveChanges_Should_RunOnceAndReturnSuccessfully()
        {
            // Arrange
            Mock <IDbSet <Person> > mockSetPeople;
            var mockContext = PeopleMockingSetup.DoMockingSetupForContext(false, out mockSetPeople);
            var repository  = new PeopleRepository(mockContext.Object);
            var person      = new Person {
                Active = true, CustomKey = "SALVATORE-RAA", Name = "R.A.A Salvatore"
            };

            repository.Add(person);
            // Act
            var result = repository.SaveChanges();

            // Assert
            mockContext.Verify(x => x.SaveChanges(), Times.Once);
            Assert.Equal(true, result);
        }