package squill.generate; import static org.junit.Assert.assertEquals; import org.junit.Test; import static squill.tests.TestUtil.assertContains; import squill.generate.TupleGenerator; import static squill.util.FileUtil.path; import java.util.Collections; /** * @author Michael Hunger * @since 25.08.2008 */ public class VelocityTupleGeneratorTest { @Test public void single() { final VelocityTupleGenerator generator = new VelocityTupleGenerator("test/src", "squill.tuple", 2); assertEquals("fileName", "test/src/squill/tuple/Tuple1.java", generator.fileName(1).getPath()); final String file = generator.generate(2); assertContains("package", "package squill.tuple;", file); assertContains("class", "Tuple2 < T1,T2 >", file); assertContains("var", "public final T2 v2;", file); assertContains("factory", "public static < P1,P2 > Tuple2< P1,P2 > _( P1 v1,P2 v2 )", file); assertContains("toString", "return \"(\" + v1 +\",\"+ v2 + \")\";", file); assertContains("equals", "Tuple2 tuple = (Tuple2) o;", file); assertContains("hashCode", "result = 31 * result + (v2 != null ? v2.hashCode() : 0)", file); } }