Ejemplo n.º 1
0
        public void TestDelete()
        {
            testName = "TestDelete";
            testHome = testFixtureHome + "/" + testName;
            string dbFileName    = testHome + "/" + testName + ".db";
            string dbSecFileName = testHome + "/" + testName +
                                   "_sec.db";

            Configuration.ClearDir(testHome);

            // Open a primary database and its secondary database.
            BTreeDatabase          db;
            SecondaryBTreeDatabase secDB;

            OpenSecDB(dbFileName, dbSecFileName, out db, out secDB);

            // Put a pair of key and data into database.
            DatabaseEntry key, data;

            key = new DatabaseEntry(
                ASCIIEncoding.ASCII.GetBytes("key"));
            data = new DatabaseEntry(
                ASCIIEncoding.ASCII.GetBytes("data"));
            db.Put(key, data);

            // Delete the pair with cursor.
            SecondaryCursor secCursor = secDB.SecondaryCursor();

            Assert.IsTrue(secCursor.MoveFirst());
            secCursor.Delete();

            // Confirm that the pair is deleted.
            Assert.IsFalse(db.Exists(key));

            // Close all databases.
            secDB.Close();
            db.Close();
        }