longConverterWithTest.patch
src/rsb/converter/LongConverter.java | ||
---|---|---|
77 | 77 |
final long value = (Long) data; |
78 | 78 |
final byte[] backing = new byte[BYTES_PER_INT]; |
79 | 79 |
for (int i = 0; i < BYTES_PER_INT; ++i) { |
80 |
// CHECKSTYLE.OFF: LineLength - no way to convince |
|
81 |
// eclipse to wrap this |
|
82 |
backing[i] = |
|
83 |
(byte) ((value & (MASK << (i * BYTE_LENGTH))) >> (i * BYTE_LENGTH)); |
|
84 |
// CHECKSTYLE.ON: LineLength |
|
80 |
backing[i] = (byte) ((value >> (i * BYTE_LENGTH)) & MASK); |
|
85 | 81 |
} |
86 | 82 |
final ByteBuffer serialized = ByteBuffer.wrap(backing); |
87 | 83 |
return new WireContents<ByteBuffer>(serialized, |
test/rsb/converter/LongConverterTest.java | ||
---|---|---|
72 | 72 |
public void roundtripLargeValue() throws Throwable { |
73 | 73 |
final LongConverter converter = |
74 | 74 |
new LongConverter(LongConverter.UINT64_SIGNATURE); |
75 |
final Long input = 130236144L;
|
|
75 |
final Long input = 6172840431323434035L;
|
|
76 | 76 |
final WireContents<ByteBuffer> buf = |
77 | 77 |
converter.serialize(Long.class, input); |
78 | 78 |
assertNotNull(buf); |