public void TestMoveNext() { testName = "TestMoveNext"; SetUpTest(true); DatabaseEnvironment env; RecnoDatabase db; Logging(testHome, testName, out env, out db); // Get log cursor to read/write log. LogCursor logCursor = env.GetLogCursor(); logCursor.MoveLast(); DatabaseEntry curRec = logCursor.CurrentRecord; for (int i = 0; i < 1000; i++) { db.Append(new DatabaseEntry( ASCIIEncoding.ASCII.GetBytes("new data"))); } Assert.IsTrue(logCursor.MoveNext()); logCursor.MoveNext(); // Close the log cursor. logCursor.Close(); db.Close(); env.Close(); }
public void TestMovePrev() { testName = "TestMovePrev"; SetUpTest(true); DatabaseEnvironment env; LSN lsn; RecnoDatabase db; Logging(testHome, testName, out env, out db); // Get log cursor to read/write log. LogCursor logCursor = env.GetLogCursor(); // Get the last two LSN in log file. logCursor.MoveLast(); Assert.IsTrue(logCursor.MovePrev()); // Close all. logCursor.Close(); db.Close(); env.Close(); }
public void TestMoveLast() { testName = "TestMoveLast"; SetUpTest(true); DatabaseEnvironment env; RecnoDatabase db; Logging(testHome, testName, out env, out db); // Get log cursor to read/write log. LogCursor logCursor = env.GetLogCursor(); // Move to the last LSN in log file. Assert.IsTrue(logCursor.MoveLast()); // The offset of last LSN shouldn't be 0. Assert.AreNotEqual(0, logCursor.CurrentLSN.Offset); // Close all. logCursor.Close(); db.Close(); env.Close(); }
public void TestRefresh() { testName = "TestRefresh"; SetUpTest(true); DatabaseEnvironment env; LSN lsn; RecnoDatabase db; Logging(testHome, testName, out env, out db); // Get log cursor to read/write log. LogCursor logCursor = env.GetLogCursor(); // Move the cursor to the last record. logCursor.MoveLast(); DatabaseEntry curRec = logCursor.CurrentRecord; // Put some new records into database. for (int i = 0; i < 10; i++) { db.Append(new DatabaseEntry( ASCIIEncoding.ASCII.GetBytes("new data"))); } // Get the current record that cursor points to. logCursor.Refresh(); // It shouldn't be changed. Assert.AreEqual(curRec.Data, logCursor.CurrentRecord.Data); // Close all. logCursor.Close(); db.Close(); env.Close(); }