public void Test_GetUInt32() { ByteArrayType data; FileStream file; file = new FileStream(TestHelper.DataTypeTestsFile, FileMode.Open); data = new ByteArrayType(0, 6); data.Read(file, 0); /* * Test retrieval of UInt32 value from byte array */ Assert.AreEqual((UInt32)0x05060708, data.GetUInt32(0)); /* * Test retrieval of UInt32 using an offset */ Assert.AreEqual((UInt32)0x03040506, data.GetUInt32(2)); /* * Test when offset is 2 bytes away from end of array */ try { data.GetUInt32(4); /* Fail if this is reached */ Assert.AreEqual(0, 1); } catch (ArgumentOutOfRangeException ex) { /* Pass if this exception was raised */ Assert.AreEqual(1, 1); } /* * Test when offset is outside bounds of array */ try { data.GetUInt32(8); /* Fail if this is reached */ Assert.AreEqual(0, 1); } catch (ArgumentOutOfRangeException ex) { /* Pass if this exception was raised */ Assert.AreEqual(1, 1); } file.Close(); }
public async Task GetUInt32_ValidOffset_ValueReturned() { var fs = TestHelpers.CreateDataTypesTestFileSystem(); using (var file = fs.File.OpenRead(TestHelpers.DataTypesTestFilePath)) { var data = new ByteArrayType(0, 6); await data.ReadAsync(file, 0, new NefsProgress()); Assert.Equal((UInt32)0x03040506, data.GetUInt32(2)); } }
public async Task GetUInt32_OffsetOutOfBounds_ArgumentOutOfRangeExceptionThrown() { var fs = TestHelpers.CreateDataTypesTestFileSystem(); using (var file = fs.File.OpenRead(TestHelpers.DataTypesTestFilePath)) { var data = new ByteArrayType(0, 6); await data.ReadAsync(file, 0, new NefsProgress()); // Offset is outside the bounds of the array Assert.Throws <ArgumentOutOfRangeException>(() => data.GetUInt32(8)); } }
public async Task GetUInt32_OffsetTwoBytesFromEnd_ArgumentOutOfRangeExceptionThrown() { var fs = TestHelpers.CreateDataTypesTestFileSystem(); using (var file = fs.File.OpenRead(TestHelpers.DataTypesTestFilePath)) { var data = new ByteArrayType(0, 6); await data.ReadAsync(file, 0, new NefsProgress()); // Offset is 2 bytes away from end of array Assert.Throws <ArgumentOutOfRangeException>(() => data.GetUInt32(4)); } }