/* * GeoTools - The Open Source Java GIS Toolkit * http://geotools.org * * (C) 2002-2009, Open Source Geospatial Foundation (OSGeo) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. */ package org.geotools.gml3.bindings; import javax.measure.unit.BaseUnit; import org.geotools.gml3.ComplexAttributeTestSupport; import org.geotools.gml3.GML; import org.geotools.measure.Measure; import org.opengis.feature.ComplexAttribute; import org.w3c.dom.Document; public class MeasureTypeBindingTest extends ComplexAttributeTestSupport { public void testParser() throws Exception { GML3MockData.element(GML.measure, document, document); document.getDocumentElement().setAttribute("uom", "http://someuri"); document.getDocumentElement().appendChild(document.createTextNode("1234")); Measure measure = (Measure) parse(); assertNotNull(measure); assertEquals(1234, measure.doubleValue(), 0.1); assertEquals("http://someuri", ((BaseUnit) measure.getUnit()).getSymbol()); } public void testEncode() throws Exception { ComplexAttribute myCode = gmlMeasureType(GML.measure, "12", "m"); Document dom = encode(myCode, GML.measure); print(dom); assertEquals("gml:measure", dom.getDocumentElement().getNodeName()); assertEquals("12", dom.getDocumentElement().getFirstChild().getNodeValue()); assertNotNull(dom.getDocumentElement().getAttribute("uom")); assertEquals("m", dom.getDocumentElement().getAttribute("uom")); } }