public void testEncode() throws Exception {
   Geometry geometry = GML3MockData.multiGeometry();
   GML3EncodingUtils.setID(geometry, "geometry");
   Document dom = encode(geometry, GML.MultiGeometry);
   // print(dom);
   assertEquals("geometry", getID(dom.getDocumentElement()));
   assertEquals(3, dom.getElementsByTagNameNS(GML.NAMESPACE, "geometryMember").getLength());
   // geometry.1 is not encoded on the gml:Point because user data is already being used for
   // srsDimension and srsName; not going to support the use of these inside a multigeometry
   // and combined with gml:id
   assertEquals(
       "geometry.2", getID(dom.getElementsByTagNameNS(GML.NAMESPACE, "LineString").item(0)));
   assertEquals("geometry.3", getID(dom.getElementsByTagNameNS(GML.NAMESPACE, "Polygon").item(0)));
 }