package org.supercsv.cellprocessor; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.supercsv.TestConstants; import org.supercsv.cellprocessor.ift.CellProcessor; /** * @author Kasper B. Graversen */ public class TokenTest { CellProcessor cp = null, ccp = null; @Before public void setUp() throws Exception { cp = new Token("", null); } @Test public void testChainedConstructon() throws Exception { cp = new Token("foo", "bar", new ParseLong()); Assert .assertEquals("new ret val for new magic token", "bar", cp.execute("foo", TestConstants.ANONYMOUS_CSVCONTEXT)); } @Test public void testChaining() throws Exception { ccp = new Token("[empty]", 0, new ParseLong()); // chain processors Assert.assertEquals("chained optional value", 17L, ccp.execute("17", TestConstants.ANONYMOUS_CSVCONTEXT)); Assert.assertEquals("magic token works before parsing number", 0, ccp.execute("[empty]", TestConstants.ANONYMOUS_CSVCONTEXT)); } @Test public void testConstructon() throws Exception { cp = new Token("foo", "bar"); Assert .assertEquals("new ret val for new magic token", "bar", cp.execute("foo", TestConstants.ANONYMOUS_CSVCONTEXT)); Assert.assertEquals("org val for magic token", "bob", cp.execute("bob", TestConstants.ANONYMOUS_CSVCONTEXT)); } }