public void TestMisc1() { // // write // int bufferSize = DurableFileStream.BLOCK_SIZE; byte[] writeBuffer = new byte[bufferSize]; Helper.SetArrayRandomly(writeBuffer); DurableFileStream dfs = new DurableFileStream("TestMisc1.dat", true); dfs.Write(writeBuffer, 0, bufferSize); dfs.Abort(); Helper.SetArrayRandomly(writeBuffer); dfs.Write(writeBuffer, 0, bufferSize); dfs.Commit(); dfs.Close(); // // read // dfs = new DurableFileStream("TestMisc1.dat", false); byte[] readBuffer = new byte[bufferSize]; dfs.Read(readBuffer, 0, bufferSize); Assert.IsTrue(Helper.IsArrayEmpty(readBuffer)); dfs.Read(readBuffer, 0, bufferSize); Assert.IsTrue(Helper.EqualArray(readBuffer, writeBuffer)); dfs.Close(); }
public void TestMisc2() { // // write // int bufferSize = DurableFileStream.BLOCK_SIZE; byte[] writeBuffer1 = new byte[bufferSize]; Helper.SetArrayRandomly(writeBuffer1); DurableFileStream dfs = new DurableFileStream("TestMisc2.dat", true); dfs.Write(writeBuffer1, 0, bufferSize); dfs.Commit(); byte[] writeBuffer2 = new byte[bufferSize]; Helper.SetArrayRandomly(writeBuffer2); dfs.Write(writeBuffer2, 0, bufferSize); Assert.AreEqual<long>(dfs.Length, 2 * DurableFileStream.BLOCK_SIZE); Assert.AreEqual<long>(dfs.Position, 2 * DurableFileStream.BLOCK_SIZE); dfs.Abort(); Assert.AreEqual<long>(dfs.Length, 1 * DurableFileStream.BLOCK_SIZE); Assert.AreEqual<long>(dfs.Position, 2 * DurableFileStream.BLOCK_SIZE); dfs.Close(); // // read // dfs = new DurableFileStream("TestMisc2.dat", false); Assert.AreEqual<long>(dfs.Length, DurableFileStream.BLOCK_SIZE); Assert.AreEqual<long>(dfs.Position, 0); byte[] readBuffer = new byte[bufferSize]; dfs.Read(readBuffer, 0, bufferSize); Assert.IsTrue(Helper.EqualArray(readBuffer, writeBuffer1)); Assert.AreEqual<long>(dfs.Length, DurableFileStream.BLOCK_SIZE); Assert.AreEqual<long>(dfs.Position, DurableFileStream.BLOCK_SIZE); dfs.Close(); }
private void ExecuteWriteRead_Abort(string filename, byte[] writeBuffer) { int bufferSize = writeBuffer.Length; // Writer DurableFileStream dfs = new DurableFileStream(filename, true); dfs.Write(writeBuffer, 0, bufferSize); Assert.AreEqual<long>(dfs.Position, bufferSize); Assert.AreEqual<long>(dfs.Length, bufferSize); dfs.Abort(); dfs.Close(); // Reader dfs = new DurableFileStream(filename, false); byte[] readBuffer = new byte[bufferSize]; dfs.Read(readBuffer, 0, bufferSize); Assert.AreEqual<long>(dfs.Position, 0); Assert.AreEqual<long>(dfs.Length, 0); dfs.Close(); // Validate Assert.IsTrue(!Helper.EqualArray(writeBuffer, readBuffer)); }