public void ReadPageTable() { var db = new SimpleDatabase_Accessor("CCC", false); db.Initialize(); var key = Guid.NewGuid().ToString(); const int pageIndex = 100; const int rowIndex = 99; const int fileId = 1; db.CreateTable("Inventory.Car", 100); PageTable pt = db.DiskReadPageTable("Inventory.Car"); pt.RecordIndices[0].Key = key; pt.RecordIndices[0].PageIndex = pageIndex; pt.RecordIndices[0].RowIndex = rowIndex; pt.RecordIndices[0].ActiveFileId = fileId; db.DiskWritePageTable("Inventory.Car", pt); pt = db.DiskReadPageTable("Inventory.Car"); Assert.AreEqual(pt.RecordIndices[0].Key, key); Assert.AreEqual(pt.RecordIndices[0].PageIndex, pageIndex); Assert.AreEqual(pt.RecordIndices[0].RowIndex, rowIndex); Assert.AreEqual(pt.RecordIndices[0].ActiveFileId, fileId); }
public void IndexTest() { var target = new SimpleDatabase_Accessor("RRR", false, true); target.CreateTable("Car", 96, 36); PageTable pt = target.DiskReadPageTable("Car"); pt.InsertIndex("aa", 1, 1, 1, Guid.Empty); pt.InsertIndex("bb", 1, 1, 1, Guid.Empty); var r = new RecordIndexEntry { Key = "aa" }; pt.WipeoutIndex(r, Guid.Empty); Assert.IsFalse((from i in pt.RecordIndices where i.Key == "aa" select i).Any()); pt.InsertIndex("aa", 1, 1, 1, Guid.Empty); Assert.IsTrue(pt.RecordIndices[0].Key == "aa"); }