PrimitiveFieldMetadata primitiveFieldMetadata2 = (PrimitiveFieldMetadata)fields.get(1);
assertTrue(primitiveFieldMetadata2.getModifiers().size() > 0);
assertThat(primitiveFieldMetadata2.getType(), is("double"));
assertThat(primitiveFieldMetadata2.getVariables().get(0).getName(), is("a"));
ParameterizedTypeFieldMetadata parameterizedFieldMetadata1 = (ParameterizedTypeFieldMetadata)fields.get(2);
assertNotNull(parameterizedFieldMetadata1);
assertTrue(parameterizedFieldMetadata1.getModifiers().size() == 1);
assertThat(parameterizedFieldMetadata1.getType(), is("List"));
assertThat(parameterizedFieldMetadata1.getVariables().get(0).getName(), is("l"));
ParameterizedTypeFieldMetadata parameterizedFieldMetadata2 = (ParameterizedTypeFieldMetadata)fields.get(3);
assertNotNull(parameterizedFieldMetadata2);
assertTrue(parameterizedFieldMetadata2.getModifiers().size() == 1);
assertThat(parameterizedFieldMetadata2.getType(), is("A"));
assertThat(parameterizedFieldMetadata2.getVariables().get(0).getName(), is("o"));
SimpleTypeFieldMetadata simpleFieldMetadata = (SimpleTypeFieldMetadata)fields.get(4);
assertNotNull(simpleFieldMetadata);
assertTrue(simpleFieldMetadata.getModifiers().size() > 0);
assertThat(simpleFieldMetadata.getType(), is("X"));