private static byte[] GenerateData(long size)
{
var result = new byte[size];
new Random().NextBytes(result);
return result;
}
Is it good, robust and efficient solution?
I use my method like this
[TestMethod]
public void WriteAndRead16MBbyZeroOffsetTest()
{
var length = 1024 * 1024 * 16; // 16mb
WriteAndReadTest(length);
}
private void WriteAndReadTest(long length, long offset = 0L)
{
byte[] generatedData = GenerateData(length);
byte[] expectedData = null;
StorageException resultException = null;
try
{
_blobReaderWriterLazy.Value.Write(offset, generatedData);
_blobReaderWriterLazy.Value.Read(offset, length, out expectedData);
}
catch (StorageException exception)
{
resultException = exception;
}
Assert.IsNull(resultException);
Assert.IsTrue(generatedData.Length == expectedData.Length);
Assert.IsTrue(generatedData.SequenceEqual(expectedData));
}