@Test
public void parseSolid()
                        throws XMLStreamException, FactoryConfigurationError, IOException, UnknownCRSException {

    GMLStreamReader gmlReader = getParser( "Solid.gml" );
    XMLStreamReader xmlReader = gmlReader.getXMLReader();
    Assert.assertEquals( XMLStreamConstants.START_ELEMENT, xmlReader.getEventType() );
    Assert.assertEquals( new QName( "http://www.opengis.net/gml", "Solid" ), xmlReader.getName() );
    Solid solid = (Solid) gmlReader.readGeometry();
    Assert.assertEquals( XMLStreamConstants.END_ELEMENT, xmlReader.getEventType() );
    Assert.assertEquals( new QName( "http://www.opengis.net/gml", "Solid" ), xmlReader.getName() );
    Assert.assertEquals( SolidType.Solid, solid.getSolidType() );
    Assert.assertEquals( CRSManager.lookup( "EPSG:31466" ), solid.getCoordinateSystem() );
    Assert.assertEquals( 8, solid.getExteriorSurface().getPatches().size() );
    Assert.assertEquals( 2568786.096,
                         ( (PolygonPatch) solid.getExteriorSurface().getPatches().get( 7 ) ).getExteriorRing().getStartPoint().get0(),
                         DELTA );
    Assert.assertEquals( 5662881.386,
                         ( (PolygonPatch) solid.getExteriorSurface().getPatches().get( 7 ) ).getExteriorRing().getStartPoint().get1(),
                         DELTA );
    Assert.assertEquals( 60.3842642785516,
                         ( (PolygonPatch) solid.getExteriorSurface().getPatches().get( 7 ) ).getExteriorRing().getStartPoint().get2(),
                         DELTA );
    Assert.assertEquals( 2568786.096,
                         ( (PolygonPatch) solid.getExteriorSurface().getPatches().get( 7 ) ).getExteriorRing().getEndPoint().get0(),
                         DELTA );
    Assert.assertEquals( 5662881.386,
                         ( (PolygonPatch) solid.getExteriorSurface().getPatches().get( 7 ) ).getExteriorRing().getEndPoint().get1(),
                         DELTA );
    Assert.assertEquals( 60.3842642785516,
                         ( (PolygonPatch) solid.getExteriorSurface().getPatches().get( 7 ) ).getExteriorRing().getEndPoint().get2(),
                         DELTA );
}