private PersistentHeap InitHeap(string heapName, int userHeaderSize)
 {
     PersistentHeap heap;
     try
     {
         heap = new PersistentHeap(heapName, userHeaderSize);
     }
     catch (FileNameConflictException)
     {
         heap = new PersistentHeap(heapName);
         heap.Delete();
         heap = new PersistentHeap(heapName, userHeaderSize);
     }
     return heap;
 }
 private static int PutGetAssert(byte[] bytes, PersistentHeap heap)
 {
     Debug.Assert(bytes.Length >= 4, "Your byte[] is too small to be put");
     int space1 = heap.Allocate(bytes.Length);
     heap.Put(space1, bytes);
     TestHelper.AssertByteArraysAreSame(bytes, heap.Get(space1));
     return space1;
 }
 private static void PutGetTestAssert(byte[] buffer, PersistentHeap heap)
 {
     int token = heap.Allocate(buffer.Length);
     heap.Put(token, buffer);
     TestHelper.AssertByteArraysAreSame(buffer, heap.Get(token));
 }
 public void CtorOpenTest()
 {
     const int userHeaderSize = 7;
     string heapName = "CtorOpenHeapTest";
     PersistentHeap heap = InitHeap(heapName, userHeaderSize);
     heap.Close();
     heap = new PersistentHeap(heapName);
     Assert.AreEqual(userHeaderSize, heap.GetUserHeaderSize());
     heap.Close();
 }