Program: 91695
Project: 91695
Buggy source:
/** 
 * Tests the inheritance of 2 types having the same common parent.
 */
@Test @DependsOnMethod("String_Node_Str") public void testMultiInheritance(){
  final DefaultFeatureType metropolis=metropolis();
  final DefaultFeatureType capital=capital();
  final DefaultFeatureType metroCapital=new DefaultFeatureType(singletonMap(DefaultFeatureType.NAME_KEY,"String_Node_Str"),false,new DefaultFeatureType[]{metropolis,capital},new DefaultAttributeType<>(singletonMap(DefaultAttributeType.NAME_KEY,"String_Node_Str"),String.class,1,1,null));
  assertUnmodifiable(metroCapital);
  assertEquals("String_Node_Str","String_Node_Str",metroCapital.getName().toString());
  assertArrayEquals("String_Node_Str",new Object[]{metropolis,capital},metroCapital.getSuperTypes().toArray());
  assertFalse("String_Node_Str",metroCapital.isAbstract());
  assertFalse("String_Node_Str",metroCapital.isSparse());
  assertTrue("String_Node_Str",metroCapital.isSimple());
  assertEquals("String_Node_Str",6,metroCapital.indices().size());
  assertPropertiesEquals(metroCapital,false,"String_Node_Str");
  assertPropertiesEquals(metroCapital,true,"String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str");
  assertEquals("String_Node_Str",CharSequence.class,((AttributeType<?>)metroCapital.getProperty("String_Node_Str")).getValueClass());
  assertTrue("String_Node_Str",DefaultFeatureType.maybeAssignableFrom(capital,metroCapital));
  assertFalse("String_Node_Str",DefaultFeatureType.maybeAssignableFrom(metroCapital,capital));
  assertTrue("String_Node_Str",DefaultFeatureType.maybeAssignableFrom(metropolis,metroCapital));
  assertFalse("String_Node_Str",DefaultFeatureType.maybeAssignableFrom(metroCapital,metropolis));
  assertTrue("String_Node_Str",capital.isAssignableFrom(metroCapital));
  assertFalse("String_Node_Str",metroCapital.isAssignableFrom(capital));
  assertTrue("String_Node_Str",metropolis.isAssignableFrom(metroCapital));
  assertFalse("String_Node_Str",metroCapital.isAssignableFrom(metropolis));
}

Fixed version (ground truth):
/** 
 * Tests the inheritance of 2 types having the same common parent.
 */
@Test @DependsOnMethod("String_Node_Str") public void testMultiInheritance(){
  final DefaultFeatureType metropolis=metropolis();
  final DefaultFeatureType capital=capital();
  final DefaultFeatureType metroCapital=new DefaultFeatureType(name("String_Node_Str"),false,new DefaultFeatureType[]{metropolis,capital},new DefaultAttributeType<>(name("String_Node_Str"),String.class,1,1,null));
  assertUnmodifiable(metroCapital);
  assertEquals("String_Node_Str","String_Node_Str",metroCapital.getName().toString());
  assertArrayEquals("String_Node_Str",new Object[]{metropolis,capital},metroCapital.getSuperTypes().toArray());
  assertFalse("String_Node_Str",metroCapital.isAbstract());
  assertFalse("String_Node_Str",metroCapital.isSparse());
  assertTrue("String_Node_Str",metroCapital.isSimple());
  assertEquals("String_Node_Str",6,metroCapital.indices().size());
  assertPropertiesEquals(metroCapital,false,"String_Node_Str");
  assertPropertiesEquals(metroCapital,true,"String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str");
  assertEquals("String_Node_Str",CharSequence.class,((AttributeType<?>)metroCapital.getProperty("String_Node_Str")).getValueClass());
  assertTrue("String_Node_Str",DefaultFeatureType.maybeAssignableFrom(capital,metroCapital));
  assertFalse("String_Node_Str",DefaultFeatureType.maybeAssignableFrom(metroCapital,capital));
  assertTrue("String_Node_Str",DefaultFeatureType.maybeAssignableFrom(metropolis,metroCapital));
  assertFalse("String_Node_Str",DefaultFeatureType.maybeAssignableFrom(metroCapital,metropolis));
  assertTrue("String_Node_Str",capital.isAssignableFrom(metroCapital));
  assertFalse("String_Node_Str",metroCapital.isAssignableFrom(capital));
  assertTrue("String_Node_Str",metropolis.isAssignableFrom(metroCapital));
  assertFalse("String_Node_Str",metroCapital.isAssignableFrom(metropolis));
}