/// <exception cref="System.Exception"></exception>
 public virtual void TestReadWrite()
 {
     DeleteBase("testReadWrite.neodatis");
     NeoDatis.Odb.Core.Layers.Layer3.Engine.IFileSystemInterface fsi = new NeoDatis.Odb.Impl.Core.Layers.Layer3.Engine.LocalFileSystemInterface
                                                                           ("data", new NeoDatis.Odb.Core.Mock.MockSession("test"), NeoDatis.Odb.Test.ODBTest
                                                                           .Directory + "testReadWrite.neodatis", true, true, NeoDatis.Odb.OdbConfiguration
                                                                           .GetDefaultBufferSizeForData());
     fsi.SetWritePosition(fsi.GetLength(), false);
     for (int i = 0; i < 10000; i++)
     {
         fsi.WriteInt(i, false, "int");
         long currentPosition = fsi.GetPosition();
         if (i == 8000)
         {
             currentPosition = fsi.GetPosition();
             fsi.UseBuffer(false);
             // Using the for transaction method to avoid protected area
             // verification, check the setWritePosition method
             fsi.SetWritePositionNoVerification(4, false);
             AssertEquals(1, fsi.ReadInt());
             fsi.UseBuffer(true);
             fsi.SetWritePositionNoVerification(currentPosition, false);
         }
         if (i == 9000)
         {
             currentPosition = fsi.GetPosition();
             fsi.UseBuffer(false);
             fsi.SetWritePositionNoVerification(8, false);
             fsi.WriteInt(12, false, "int");
             fsi.UseBuffer(true);
             fsi.SetWritePositionNoVerification(currentPosition, false);
         }
     }
     fsi.SetReadPosition(0);
     for (int i = 0; i < 10000; i++)
     {
         int j = fsi.ReadInt();
         if (i == 2)
         {
             AssertEquals(12, j);
         }
         else
         {
             AssertEquals(i, j);
         }
     }
     fsi.Close();
     DeleteBase("testReadWrite.neodatis");
 }
        public virtual void TestReadWrite()
		{
			DeleteBase("testReadWrite.neodatis");
			NeoDatis.Odb.Core.Layers.Layer3.Engine.IFileSystemInterface fsi = new NeoDatis.Odb.Impl.Core.Layers.Layer3.Engine.LocalFileSystemInterface
				("data", new NeoDatis.Odb.Core.Mock.MockSession("test"), NeoDatis.Odb.Test.ODBTest
				.Directory + "testReadWrite.neodatis", true, true, NeoDatis.Odb.OdbConfiguration
				.GetDefaultBufferSizeForData());
			fsi.SetWritePosition(fsi.GetLength(), false);
			for (int i = 0; i < 10000; i++)
			{
				fsi.WriteInt(i, false, "int");
				long currentPosition = fsi.GetPosition();
				if (i == 8000)
				{
					currentPosition = fsi.GetPosition();
					fsi.UseBuffer(false);
					// Using the for transaction method to avoid protected area
					// verification, check the setWritePosition method
					fsi.SetWritePositionNoVerification(4, false);
					AssertEquals(1, fsi.ReadInt());
					fsi.UseBuffer(true);
					fsi.SetWritePositionNoVerification(currentPosition, false);
				}
				if (i == 9000)
				{
					currentPosition = fsi.GetPosition();
					fsi.UseBuffer(false);
					fsi.SetWritePositionNoVerification(8, false);
					fsi.WriteInt(12, false, "int");
					fsi.UseBuffer(true);
					fsi.SetWritePositionNoVerification(currentPosition, false);
				}
			}
			fsi.SetReadPosition(0);
			for (int i = 0; i < 10000; i++)
			{
				int j = fsi.ReadInt();
				if (i == 2)
				{
					AssertEquals(12, j);
				}
				else
				{
					AssertEquals(i, j);
				}
			}
			fsi.Close();
			DeleteBase("testReadWrite.neodatis");
		}