/**
   * Simple test to verify that byte[] values can be handled properly when converting, as long as
   * there is metadata (from POJO definitions).
   */
  public void testIssue709() throws Exception {
    byte[] inputData = new byte[] {1, 2, 3};
    ObjectNode node = MAPPER.createObjectNode();
    node.put("data", inputData);
    Issue709Bean result = MAPPER.treeToValue(node, Issue709Bean.class);
    String json = MAPPER.writeValueAsString(node);
    Issue709Bean resultFromString = MAPPER.readValue(json, Issue709Bean.class);
    Issue709Bean resultFromConvert = MAPPER.convertValue(node, Issue709Bean.class);

    // all methods should work equally well:
    Assert.assertArrayEquals(inputData, resultFromString.data);
    Assert.assertArrayEquals(inputData, resultFromConvert.data);
    Assert.assertArrayEquals(inputData, result.data);
  }
 public static <T> T convertValue(Object value, Class<T> type) {
   return OBJECT_MAPPER.convertValue(value, type);
 }
 // Return given object as a list
 // AG
 static List<?> getListFromObject(Object o) {
   @SuppressWarnings("rawtypes")
   List<?> temp = new LinkedList();
   if (o instanceof List<?>) temp = mapper.convertValue(o, List.class);
   return temp;
 }
 // Return given object as a String
 // AG
 static String getStringFromObject(Object o) {
   String temp = "";
   if (o instanceof String) temp = mapper.convertValue(o, String.class);
   return temp;
 }
 // Return given object as a double
 // AG
 static double getDoubleFromObject(Object o) {
   double temp = 0.0;
   if (o instanceof Double) temp = mapper.convertValue(o, Double.class);
   return temp;
 }
 // Return given object as an int
 // AG
 static int getIntFromObject(Object o) {
   int temp = 0;
   if (o instanceof Integer) temp = mapper.convertValue(o, Integer.class);
   return temp;
 }