use of org.codice.ddf.transformer.xml.streaming.lib.XmlInputTransformer in project ddf by codice.
the class TestXmlInputTransformer method testBadGml3Converter.
@Test
public void testBadGml3Converter() throws FileNotFoundException, CatalogTransformerException, ValidationException {
inputStream = new FileInputStream("src/test/resources/metacard1.xml");
xmlInputTransformer = new XmlInputTransformer();
xmlInputTransformer.setSaxEventHandlerConfiguration(Collections.singletonList("gml-handler"));
GmlHandlerFactory factory = new GmlHandlerFactory();
Gml3ToWkt badGml3toWkt = mock(Gml3ToWkt.class);
when(badGml3toWkt.convert(anyString())).thenThrow(new ValidationExceptionImpl());
factory.setGml3ToWkt(badGml3toWkt);
xmlInputTransformer.setSaxEventHandlerFactories(Collections.singletonList((SaxEventHandlerFactory) factory));
Metacard metacard = xmlInputTransformer.transform(inputStream);
assertThat(metacard.getAttribute(Validation.VALIDATION_ERRORS).getValue(), is("geospatial-handler"));
}
use of org.codice.ddf.transformer.xml.streaming.lib.XmlInputTransformer in project ddf by codice.
the class TestXmlInputTransformer method testGml3Conversion.
@Test
public void testGml3Conversion() throws FileNotFoundException, CatalogTransformerException {
inputStream = new FileInputStream("src/test/resources/metacard1.xml");
xmlInputTransformer = new XmlInputTransformer();
xmlInputTransformer.setSaxEventHandlerConfiguration(Collections.singletonList("gml-handler"));
GmlHandlerFactory factory = new GmlHandlerFactory();
factory.setGml3ToWkt(gml3ToWkt);
xmlInputTransformer.setSaxEventHandlerFactories(Collections.singletonList((SaxEventHandlerFactory) factory));
Metacard metacard = xmlInputTransformer.transform(inputStream);
assertThat(metacard.getAttribute(Metacard.GEOGRAPHY).getValue(), is("POLYGON ((35 10, 10 20, 15 40, 45 45, 35 10), (20 30, 35 35, 30 20, 20 30))"));
}
Aggregations