package com.ximple.eofms.filter; import java.io.File; import java.io.IOException; import org.apache.commons.digester.Digester; import org.apache.commons.digester.xmlrules.DigesterLoader; import org.geotools.TestData; import org.testng.Assert; import org.testng.annotations.Test; import org.xml.sax.SAXException; public class ElementDispatcherTest { private static final String TestRulesName = "testRules.xml"; private static final String TestConfigName = "testElementFilter.xml"; @Test public void testLoadRules() throws IOException { File rules = TestData.file(this, TestRulesName); Digester digester = DigesterLoader.createDigester(rules.toURI().toURL()); // File config = TestData.file(this, TestConfigName); // ElementDispatcher ed = (ElementDispatcher) digester.parse(config); Assert.assertNotNull(digester); } @Test public void testLoadConfig() throws IOException, SAXException { File rules = TestData.file(this, TestRulesName); Digester digester = DigesterLoader.createDigester(rules.toURI().toURL()); File config = TestData.file(this, TestConfigName); ElementDispatcher ed = (ElementDispatcher) digester.parse(config); Assert.assertNotNull(ed); // Assert.assertEquals(ed.getRules().size(), 3); ElementDispatchableFilter filter = ed.getRules().get(0); /* Assert.assertTrue(filter instanceof TypeIdDispatchableFilter); TypeIdDispatchableFilter tFilter = (TypeIdDispatchableFilter) filter; Assert.assertEquals(tFilter.getName(), "DemoFeature1"); Assert.assertEquals(tFilter.getTid(), 106); Assert.assertEquals(tFilter.getElmtype(), 7); Assert.assertNotNull(tFilter.getCreateStrategy()); Assert.assertTrue(tFilter.getCreateStrategy() instanceof CreateLineStringStrategy); */ filter = ed.getRules().get(0); Assert.assertTrue(filter instanceof TypeCompIdDispatchableFilter); TypeCompIdDispatchableFilter tcFilter = (TypeCompIdDispatchableFilter) filter; Assert.assertEquals(tcFilter.getName(), "DemoFeature2"); Assert.assertEquals(tcFilter.getTid(), 107); Assert.assertEquals(tcFilter.getCid(), 11); Assert.assertNotNull(tcFilter.getCreateStrategy()); Assert.assertTrue(tcFilter.getCreateStrategy() instanceof CreateTextStrategy); /* filter = ed.getRules().get(2); Assert.assertTrue(filter instanceof TypeCompLevelIdDispatchableFilter); TypeCompLevelIdDispatchableFilter tclFilter = (TypeCompLevelIdDispatchableFilter) filter; Assert.assertEquals(tclFilter.getName(), "DemoFeature3"); Assert.assertEquals(tclFilter.getTid(), 108); Assert.assertEquals(tclFilter.getCid(), 2); Assert.assertEquals(tclFilter.getLid(), 34); Assert.assertNull(tclFilter.getCreateStrategy()); */ } }