public void CanSafelyCallDisposeMultipleTimes()
 {
     using (var snapshotStore = new SqlSnapshotStore(new SqlSnapshotStoreDialect(SqlServerConnection.Name), new BinarySerializer(), new SnapshotStoreSettings()))
     {
         snapshotStore.Dispose();
         snapshotStore.Dispose();
     }
 }
Esempio n. 2
0
        public void SqlSnapshotStore_Returns_Null_When_No_Snapshot_Exists()
        {
            var database = new Mock<ISqlRepository>();
            database.Setup(db => db.GetSnapshot(It.IsAny<Guid>()));

            var store = new SqlSnapshotStore
            {
                GetRepository = () => database.Object
            };

            var snapshot = store.GetSnapshot<BankAccountSnapshot>(Guid.NewGuid());

            Assert.IsNull(snapshot);
        }
Esempio n. 3
0
        public void SqlSnapshotStore_Deserializes_Snapshot_Details()
        {
            var database = new Mock<ISqlRepository>();
            database.Setup(db => db.GetSnapshot(It.IsAny<Guid>())).Returns(new SnapshotDetail{SnapshotData = Resources.JsonSerializedSnapshot});

            var store = new SqlSnapshotStore
            {
                GetRepository = () => database.Object
            };

            var snapshot = store.GetSnapshot<BankAccountSnapshot>(Guid.NewGuid());

            Assert.AreEqual(900, snapshot.Data.Balance);
        }
Esempio n. 4
0
        public void SqlSnapshotStore_Returns_Null_When_No_Snapshot_Exists()
        {
            var database = new Mock <ISqlRepository>();

            database.Setup(db => db.GetSnapshot(It.IsAny <Guid>()));

            var store = new SqlSnapshotStore
            {
                GetRepository = () => database.Object
            };

            var snapshot = store.GetSnapshot <BankAccountSnapshot>(Guid.NewGuid());

            Assert.IsNull(snapshot);
        }
Esempio n. 5
0
        public void SqlSnapshotStore_Serializes_Snapshots()
        {
            var database = new Mock<ISqlRepository>();
            database.Setup(db => db.InsertSnapshot(It.IsAny<SnapshotDetail>()));

            var store = new SqlSnapshotStore
            {
                GetRepository = () => database.Object
            };

            var snapshot = new Snapshot<BankAccountSnapshot> {Data = new BankAccountSnapshot {Balance = 900}};
            store.SaveSnapshot(snapshot);

            database.Verify(db => db.InsertSnapshot(It.IsAny<SnapshotDetail>()), Times.Once());
        }
Esempio n. 6
0
        public void SqlSnapshotStore_Deserializes_Snapshot_Details()
        {
            var database = new Mock <ISqlRepository>();

            database.Setup(db => db.GetSnapshot(It.IsAny <Guid>())).Returns(new SnapshotDetail {
                SnapshotData = Resources.JsonSerializedSnapshot
            });

            var store = new SqlSnapshotStore
            {
                GetRepository = () => database.Object
            };

            var snapshot = store.GetSnapshot <BankAccountSnapshot>(Guid.NewGuid());

            Assert.AreEqual(900, snapshot.Data.Balance);
        }
Esempio n. 7
0
        public void SqlSnapshotStore_Serializes_Snapshots()
        {
            var database = new Mock <ISqlRepository>();

            database.Setup(db => db.InsertSnapshot(It.IsAny <SnapshotDetail>()));

            var store = new SqlSnapshotStore
            {
                GetRepository = () => database.Object
            };

            var snapshot = new Snapshot <BankAccountSnapshot> {
                Data = new BankAccountSnapshot {
                    Balance = 900
                }
            };

            store.SaveSnapshot(snapshot);

            database.Verify(db => db.InsertSnapshot(It.IsAny <SnapshotDetail>()), Times.Once());
        }
 public void CanSafelyCallDisposeMultipleTimes()
 {
     using (var snapshotStore = new SqlSnapshotStore(new SqlSnapshotStoreDialect(SqlServerConnection.Name), new BinarySerializer(), new SnapshotStoreSettings()))
     {
         snapshotStore.Dispose();
         snapshotStore.Dispose();
     }
 }