package net.jhorstmann.i18n.tools.xgettext; import junit.framework.Assert; import org.junit.Test; public class ELSignatureTest { private static final String NS = "http://net.jhorstmann/i18n/taglib"; @Test public void testNoArg() { MessageFunction fn = MessageFunction.fromEL(NS, "tr()"); Assert.assertEquals("tr", fn.getName()); Assert.assertEquals(NS, fn.getNamespace()); Assert.assertEquals(-1, fn.getMessageIndex()); Assert.assertEquals(-1, fn.getContextIndex()); Assert.assertEquals(-1, fn.getPluralIndex()); } @Test public void testInlineNamespace() { MessageFunction fn = MessageFunction.fromEL("{" + NS + "}tr()"); Assert.assertEquals("tr", fn.getName()); Assert.assertEquals(NS, fn.getNamespace()); Assert.assertEquals(-1, fn.getMessageIndex()); Assert.assertEquals(-1, fn.getContextIndex()); Assert.assertEquals(-1, fn.getPluralIndex()); } @Test public void testMsg() { MessageFunction fn = MessageFunction.fromEL(NS, "tr(message)"); Assert.assertEquals("tr", fn.getName()); Assert.assertEquals(NS, fn.getNamespace()); Assert.assertEquals(0, fn.getMessageIndex()); Assert.assertEquals(-1, fn.getContextIndex()); Assert.assertEquals(-1, fn.getPluralIndex()); } @Test public void testContext() { MessageFunction fn = MessageFunction.fromEL(NS, "tr(context, message)"); Assert.assertEquals("tr", fn.getName()); Assert.assertEquals(NS, fn.getNamespace()); Assert.assertEquals(0, fn.getContextIndex()); Assert.assertEquals(1, fn.getMessageIndex()); Assert.assertEquals(-1, fn.getPluralIndex()); } }