public void testSimpleOrderingForDeserialization() {
   POJOPropertiesCollector coll = collector(mapper, SortedProperties.class, false);
   List<BeanPropertyDefinition> props = coll.getProperties();
   assertEquals(4, props.size());
   assertEquals("a", props.get(0).getName());
   assertEquals("b", props.get(1).getName());
   assertEquals("c", props.get(2).getName());
   assertEquals("d", props.get(3).getName());
 }
  public void testSimpleWithType() {
    // first for serialization; should base choice on getter
    POJOPropertiesCollector coll = collector(mapper, TypeTestBean.class, true);
    List<BeanPropertyDefinition> props = coll.getProperties();
    assertEquals(1, props.size());
    assertEquals("value", props.get(0).getName());
    AnnotatedMember m = props.get(0).getAccessor();
    assertTrue(m instanceof AnnotatedMethod);
    assertEquals(Integer.class, m.getRawType());

    // then for deserialization; prefer ctor param
    coll = collector(mapper, TypeTestBean.class, false);
    props = coll.getProperties();
    assertEquals(1, props.size());
    assertEquals("value", props.get(0).getName());
    m = props.get(0).getMutator();
    assertEquals(AnnotatedParameter.class, m.getClass());
    assertEquals(String.class, m.getRawType());
  }