public void testGetConstructorMetaData() throws Exception {
List<BeanConfiguration<? super Foo>> beanConfigurations = provider.getBeanConfigurationForHierarchy( Foo.class );
assertThat( beanConfigurations ).hasSize( 2 );
ConstrainedExecutable constructor = findConstrainedConstructor( beanConfigurations, Foo.class, String.class );
assertThat( constructor.getKind() ).isEqualTo( ConstrainedElementKind.CONSTRUCTOR );
assertThat( constructor.isConstrained() ).isTrue();
assertThat( constructor.isCascading() ).isFalse();
assertThat( constructor.getConstraints() ).hasSize( 1 );
MetaConstraint<?> constraint = constructor.getConstraints().iterator().next();
assertThat( constraint.getDescriptor().getAnnotation().annotationType() ).isEqualTo( NotNull.class );
assertThat( constraint.getElementType() ).isEqualTo( ElementType.CONSTRUCTOR );
}