package net.jhorstmann.i18n.xgettext.web; import net.jhorstmann.i18n.tools.xml.NamespaceContextImpl; import java.util.Iterator; import junit.framework.Assert; import org.junit.Test; import org.xml.sax.SAXException; public class NamespaceContextTest { @Test public void testSimple() throws SAXException { NamespaceContextImpl nc = new NamespaceContextImpl(); nc.startPrefixMapping("a", "urn:a"); Assert.assertEquals("urn:a", nc.getNamespaceURI("a")); Assert.assertEquals("a", nc.getPrefix("urn:a")); Iterator prefixes = nc.getPrefixes("urn:a"); Assert.assertNotNull(prefixes); Assert.assertTrue(prefixes.hasNext()); Assert.assertEquals("a", prefixes.next()); Assert.assertFalse(prefixes.hasNext()); nc.endPrefixMapping("a"); } @Test public void testNested() throws SAXException { NamespaceContextImpl nc = new NamespaceContextImpl(); nc.startPrefixMapping("a", "urn:a"); nc.startPrefixMapping("a", "urn:a2"); Assert.assertEquals("urn:a2", nc.getNamespaceURI("a")); Assert.assertEquals("a", nc.getPrefix("urn:a2")); Iterator prefixes = nc.getPrefixes("urn:a2"); Assert.assertNotNull(prefixes); Assert.assertTrue(prefixes.hasNext()); Assert.assertEquals("a", prefixes.next()); Assert.assertFalse(prefixes.hasNext()); nc.endPrefixMapping("a"); nc.endPrefixMapping("a"); } }