Ejemplo n.º 1
0
            public void Apply(object state)
            {
                ConsistencyCheckerTestCase.Item item = ((ConsistencyCheckerTestCase.Item)((Pair)state
                                                                                          ).second);
                LocalObjectContainer db = ((LocalObjectContainer)((Pair)state).first);
                int  id   = (int)db.GetID(item);
                Slot slot = db.IdSystem().CommittedSlot(id);

                db.FreespaceManager().Free(new Slot(slot.Address() + 1, slot.Length()));
            }
		private void AssertInconsistencyDetected(IProcedure4 proc)
		{
			IEmbeddedConfiguration config = NewConfiguration();
			LocalObjectContainer db = (LocalObjectContainer)Db4oEmbedded.OpenFile(config, TempFile
				());
			try
			{
				ConsistencyCheckerTestCase.Item item = new ConsistencyCheckerTestCase.Item();
				db.Store(item);
				db.Commit();
				Assert.IsTrue(new ConsistencyChecker(db).CheckSlotConsistency().Consistent());
				proc.Apply(new Pair(db, item));
				db.Commit();
				Assert.IsFalse(new ConsistencyChecker(db).CheckSlotConsistency().Consistent());
			}
			finally
			{
				db.Close();
			}
		}
Ejemplo n.º 3
0
        private void AssertInconsistencyDetected(IProcedure4 proc)
        {
            IEmbeddedConfiguration config = NewConfiguration();
            LocalObjectContainer   db     = (LocalObjectContainer)Db4oEmbedded.OpenFile(config, TempFile
                                                                                            ());

            try
            {
                ConsistencyCheckerTestCase.Item item = new ConsistencyCheckerTestCase.Item();
                db.Store(item);
                db.Commit();
                Assert.IsTrue(new ConsistencyChecker(db).CheckSlotConsistency().Consistent());
                proc.Apply(new Pair(db, item));
                db.Commit();
                Assert.IsFalse(new ConsistencyChecker(db).CheckSlotConsistency().Consistent());
            }
            finally
            {
                db.Close();
            }
        }