예제 #1
0
 public void DbProvider_ThrowExceptionOnGettingNotRegisteredDb()
 {
     using (DbProvider dbProvider = new DbProvider(DbModeHint.Mem))
     {
         MemDbFactory memDbFactory = new MemDbFactory();
         IColumnsDb <ReceiptsColumns> memSnapshotableDb = memDbFactory.CreateColumnsDb <ReceiptsColumns>("ColumnsDb");
         dbProvider.RegisterDb("ColumnsDb", memSnapshotableDb);
         Assert.Throws <ArgumentException>(() => dbProvider.GetDb <IColumnsDb <ReceiptsColumns> >("differentdb"));
     }
 }
예제 #2
0
 public void DbProvider_ThrowExceptionOnRegisteringTheSameDb()
 {
     using (DbProvider dbProvider = new DbProvider(DbModeHint.Mem))
     {
         MemDbFactory memDbFactory = new MemDbFactory();
         IColumnsDb <ReceiptsColumns> memSnapshotableDb = memDbFactory.CreateColumnsDb <ReceiptsColumns>("ColumnsDb");
         dbProvider.RegisterDb("ColumnsDb", memSnapshotableDb);
         Assert.Throws <ArgumentException>(() => dbProvider.RegisterDb("columnsdb", new MemDb()));
     }
 }
예제 #3
0
        public void DbProvider_CanRegisterMemDb()
        {
            MemDbFactory memDbFactory = new MemDbFactory();

            using (DbProvider dbProvider = new DbProvider(DbModeHint.Mem))
            {
                IDb memDb = memDbFactory.CreateDb("MemDb");
                dbProvider.RegisterDb("MemDb", memDb);
                IDb db = dbProvider.GetDb <IDb>("MemDb");
                Assert.AreEqual(memDb, db);
            }
        }
예제 #4
0
 public void DbProvider_CanRegisterColumnsDb()
 {
     using (DbProvider dbProvider = new DbProvider(DbModeHint.Mem))
     {
         MemDbFactory memDbFactory = new MemDbFactory();
         IColumnsDb <ReceiptsColumns> memSnapshotableDb = memDbFactory.CreateColumnsDb <ReceiptsColumns>("ColumnsDb");
         dbProvider.RegisterDb("ColumnsDb", memSnapshotableDb);
         IColumnsDb <ReceiptsColumns> columnsDb = dbProvider.GetDb <IColumnsDb <ReceiptsColumns> >("ColumnsDb");
         Assert.AreEqual(memSnapshotableDb, columnsDb);
         Assert.IsTrue(memSnapshotableDb is IColumnsDb <ReceiptsColumns>);
     }
 }
예제 #5
0
        public void DbProvider_CanRegisterSnapshotableDb()
        {
            var memDbFactory = new MemDbFactory();

            using (var dbProvider = new DbProvider(DbModeHint.Mem))
            {
                var memSnapshotableDb = memDbFactory.CreateSnapshotableDb("SnapshotableDb");
                dbProvider.RegisterDb("SnapshotableDb", memSnapshotableDb);
                var snapshotableDb = dbProvider.GetDb <ISnapshotableDb>("SnapshotableDb");
                Assert.AreEqual(memSnapshotableDb, snapshotableDb);
                Assert.IsTrue(memSnapshotableDb is ISnapshotableDb);
            }
        }