public void setMates(List<String> mates) {
this.mates = mates;
}
}
PropertyParsingContext context = newContext(Test.class, Test.class.getDeclaredField("friends"));
PropertyMeta meta = parser.parse(context);
assertThat(meta.getPropertyName()).isEqualTo("friends");
assertThat(meta.<String>getValueClass()).isEqualTo(String.class);
assertThat(meta.getGetter().getName()).isEqualTo("getFriends");
assertThat((Class<List>) meta.getGetter().getReturnType()).isEqualTo(List.class);
assertThat(meta.getSetter().getName()).isEqualTo("setFriends");
assertThat((Class<List>) meta.getSetter().getParameterTypes()[0]).isEqualTo(List.class);
assertThat(meta.type()).isEqualTo(PropertyType.LIST);
assertThat(meta.forValues().nullValueForCollectionAndMap()).isNotNull().isInstanceOf(List.class);
assertThat(meta.structure().isStaticColumn()).isTrue();
PropertyParsingContext context2 = newContext(Test.class, Test.class.getDeclaredField("mates"));
PropertyMeta meta2 = parser.parse(context2);
assertThat(meta2.type()).isEqualTo(PropertyType.LIST);
assertThat(meta2.forValues().nullValueForCollectionAndMap()).isNotNull().isInstanceOf(List.class);
}