@Test
public void testToBytes()
{

    assertEquals(new DataSize(0, BYTE).toBytes(), 0);
    assertEquals(new DataSize(0, MEGABYTE).toBytes(), 0);
    assertEquals(new DataSize(1, BYTE).toBytes(), 1);
    assertEquals(new DataSize(1, KILOBYTE).toBytes(), 1024);
    assertEquals(new DataSize(42, MEGABYTE).toBytes(), 42L * 1024 * 1024);
    assertEquals(new DataSize(0.037, KILOBYTE).toBytes(), 37);
    assertEquals(new DataSize(1, TERABYTE).toBytes(), 1024L * 1024 * 1024 * 1024);
    assertEquals(new DataSize(1, PETABYTE).toBytes(), 1024L * 1024 * 1024 * 1024 * 1024);
    assertEquals(new DataSize(1024, PETABYTE).toBytes(), 1024L * 1024 * 1024 * 1024 * 1024 * 1024);
    assertEquals(new DataSize(8191, PETABYTE).toBytes(), 8191L * 1024 * 1024 * 1024 * 1024 * 1024);
    assertEquals(new DataSize(Long.MAX_VALUE, BYTE).toBytes(), Long.MAX_VALUE);
    assertEquals(new DataSize(Long.MAX_VALUE / 1024.0, KILOBYTE).toBytes(), Long.MAX_VALUE);
}