Пример #1
0
 @Test
 public void throwIfMapKeyNotString() throws IOException {
   thrown.expect(IOException.class);
   thrown.expectMessage("Unrecognized map key type class java.lang.Integer, expected string");
   BserSerializer serializer = new BserSerializer();
   serializer.serializeToBuffer(ImmutableMap.of(0, 1), buffer);
 }
Пример #2
0
 @Test
 public void throwIfStringNotUTF8() throws IOException {
   thrown.expect(CharacterCodingException.class);
   BserSerializer serializer = new BserSerializer();
   // UTF-8 cannot legally represent half of a surrogate pair, so this should throw.
   serializer.serializeToBuffer("\uDC00", buffer);
 }
Пример #3
0
 @Test
 public void serializeTrueToStream() throws IOException {
   try (ByteArrayOutputStream os = new ByteArrayOutputStream()) {
     BserSerializer serializer = new BserSerializer();
     serializer.serializeToStream(true, os);
     assertThat(os.toByteArray(), equalTo(BaseEncoding.base16().decode(EXPECTED_TRUE)));
   }
 }
Пример #4
0
 private ByteBuffer assertEncodingMatches(Object object, String base16) throws IOException {
   BserSerializer serializer = new BserSerializer();
   ByteBuffer result = serializer.serializeToBuffer(object, buffer);
   result.flip();
   byte[] base16Array = BaseEncoding.base16().decode(base16);
   assertThat(
       String.format(
           "Encoded buffer mismatch (%s != %s)",
           base16,
           BaseEncoding.base16().encode(result.array(), result.position(), result.limit())),
       result,
       equalTo(ByteBuffer.wrap(base16Array)));
   return result;
 }
Пример #5
0
 @Test
 public void largeObjectAllocatesNewBuffer() throws IOException {
   BserSerializer serializer = new BserSerializer();
   ByteBuffer result = serializer.serializeToBuffer(Strings.repeat("X", 10000), buffer);
   assertThat(result, is(not(sameInstance(buffer))));
 }
Пример #6
0
 @Test
 public void smallObjectReusesInputBuffer() throws IOException {
   BserSerializer serializer = new BserSerializer();
   ByteBuffer result = serializer.serializeToBuffer(true, buffer);
   assertThat(result, is(sameInstance(buffer)));
 }