/** * Converts a memory value from human readable form to the value in bytes. * * @param magnitude the magnitude * @param inUnit the input (comparison is case insensitve) * @param outUnit the output (comparison is case insensitve) * @return the value converted to bytes */ public static double memoryToBytes(double magnitude, String unit) { if (BINARY_MEMORY_UNITS.contains(unit.toLowerCase())) { return memoryBinaryConversion(magnitude, unit, "b"); } else { return memoryDecimalConversion(magnitude, unit, "b"); } }
@Test public void testDecimalMemory() throws Exception { assertEquals(2.0, ConversionUtil.memoryDecimalConversion(2, "B", "B"), 0.01); assertEquals(2000.0, ConversionUtil.memoryDecimalConversion(2, "KB", "B"), 0.01); assertEquals(2000000.0, ConversionUtil.memoryDecimalConversion(2, "MB", "B"), 0.01); assertEquals(2000000000.0, ConversionUtil.memoryDecimalConversion(2, "GB", "B"), 0.01); assertEquals(2000000000000.0, ConversionUtil.memoryDecimalConversion(2, "TB", "B"), 0.01); assertEquals(2000000000000000.0, ConversionUtil.memoryDecimalConversion(2, "PB", "B"), 0.01); }