Fix for #5 (IBeaconManufacturerData.calculateUUIDString(byte[]) bug)

This commit is contained in:
Alexandros Schillings
2015-07-03 18:16:21 +01:00
parent 33f2a265f7
commit 31f191b695
2 changed files with 11 additions and 1 deletions
@@ -50,6 +50,9 @@ public class IBeaconUtils {
}
final int intFromByte = ByteUtils.getIntFromByte(uuid[i]);
if(intFromByte <= 0xF){
sb.append('0');
}
sb.append(Integer.toHexString(intFromByte));
}
@@ -34,6 +34,13 @@ public class IBeaconUtilsTest extends TestCase {
}
public void testCalculateUuidString() throws Exception {
assertEquals("00", IBeaconUtils.calculateUuidString(new byte[]{0}));
assertEquals("0a", IBeaconUtils.calculateUuidString(new byte[]{10}));
assertEquals("0f", IBeaconUtils.calculateUuidString(new byte[]{15}));
assertEquals("10", IBeaconUtils.calculateUuidString(new byte[]{16}));
assertEquals("7f", IBeaconUtils.calculateUuidString(new byte[]{127}));
assertEquals(
"00000000-0000-0000-0000-00",
IBeaconUtils.calculateUuidString(new byte[]{0,0,0,0,0,0,0,0,0,0,0}));
}
}