コード例 #1
0
        public void TransactionCoordinator_Begin_Transaction()
        {
            var context     = TestContext.Factory();
            var coordinator = new EntityFrameworkTransactionCoordinator(context);

            context.Database.CurrentTransaction.Should().BeNull();
            coordinator.BeginTransaction();
            context.Database.CurrentTransaction.Should().NotBeNull();
        }
コード例 #2
0
        public void TransactionCoordinator_Disable_Change_Tracking()
        {
            var context     = TestContext.Factory();
            var coordinator = new EntityFrameworkTransactionCoordinator(context);

            context.ChangeTracker.AutoDetectChangesEnabled = true;
            coordinator.DisableChangeTracking();

            context.ChangeTracker.AutoDetectChangesEnabled.Should().BeFalse();
        }
コード例 #3
0
        public void TransactionCoordinator_Rollback_Transaction()
        {
            var context     = TestContext.Factory();
            var coordinator = new EntityFrameworkTransactionCoordinator(context);

            coordinator.BeginTransaction();
            context.Entities.Add(new TestEntity());
            context.SaveChanges();
            coordinator.RollbackTransaction();

            context.Entities.FirstOrDefault(x => x.Id == 1).Should().BeNull();
            context.Database.CurrentTransaction.Should().BeNull();
        }