Beispiel #1
0
        public void Multiple_contexts_can_be_combined_together()
        {
            var objectContext1 = new ObjectContext();
            var context1       = CreateDbContext(objectContext1);
            var objectContext2 = new ObjectContext();
            var context2       = CreateDbContext(objectContext2);

            var interceptionContext1 = new DbInterceptionContext()
                                       .WithDbContext(context1)
                                       .WithDbContext(context2)
                                       .WithObjectContext(objectContext1);

            var interceptionContext2 = interceptionContext1
                                       .WithDbContext(context2)
                                       .WithObjectContext(objectContext1)
                                       .WithObjectContext(objectContext2);

            var combined = DbInterceptionContext.Combine(new[] { interceptionContext1, interceptionContext2 });

            Assert.Equal(2, combined.DbContexts.Count());
            Assert.Equal(2, combined.ObjectContexts.Count());

            Assert.Contains(context1, combined.DbContexts);
            Assert.Contains(context2, combined.DbContexts);
            Assert.Contains(objectContext1, combined.ObjectContexts);
            Assert.Contains(objectContext2, combined.ObjectContexts);
        }
Beispiel #2
0
 public void Combine_throws_for_null_arg()
 {
     Assert.Equal(
         "interceptionContexts",
         Assert.Throws <ArgumentNullException>(() => DbInterceptionContext.Combine(null)).ParamName);
 }