1 package uba.db.sql.language;
2
3 import java.util.ArrayList;
4 import java.util.List;
5
6 import junit.framework.TestCase;
7 import uba.db.testhelpers.TestUtils;
8
9 /***
10 * @version $Revision: 1.6 $
11 */
12 public class DisplayMultipleColumnsTest extends TestCase {
13 private DisplayMultipleColumns multipleColumns;
14 private DisplayMultipleColumns sameMultipleColumns;
15 private DisplayMultipleColumns otherMultipleColumns;
16 private DisplayOneColumn displayColumnC;
17 private DisplayOneColumn displayColumnE;
18 private DisplayOneColumn displayColumnD;
19
20 /***
21 * @see junit.framework.TestCase#setUp()
22 */
23 protected void setUp() throws Exception {
24 super.setUp();
25
26 displayColumnC = new DisplayOneColumn(new ColumnName("c"));
27 displayColumnE = new DisplayOneColumn(new ColumnName("e"));
28 multipleColumns = new DisplayMultipleColumns(displayColumnC, displayColumnE);
29
30 sameMultipleColumns = new DisplayMultipleColumns(displayColumnC, displayColumnE);
31 displayColumnD = new DisplayOneColumn(new ColumnName("d"));
32 otherMultipleColumns = new DisplayMultipleColumns(displayColumnD, displayColumnE);
33 }
34
35 /***
36 * Test de igualdad entre dos instancias.
37 */
38 public void testEquals() {
39 TestUtils.assertEqualsImplementation(multipleColumns,
40 sameMultipleColumns,
41 otherMultipleColumns);
42 }
43
44 /***
45 * Test: agregar a multiples columnas.
46 */
47 public void testAppendToMultipleColumns() {
48 DisplayColumns result = multipleColumns.append(otherMultipleColumns);
49 List columns = new ArrayList();
50 columns.add(displayColumnC);
51 columns.add(displayColumnE);
52 columns.add(displayColumnD);
53 columns.add(displayColumnE);
54
55 assertEquals(new DisplayMultipleColumns(columns), result);
56 }
57
58 /***
59 * Test: agregar a una columna.
60 */
61 public void testAppendToOneColumn() {
62 DisplayColumns result = displayColumnC.append(otherMultipleColumns);
63 List columns = new ArrayList();
64 columns.add(displayColumnC);
65 columns.add(displayColumnD);
66 columns.add(displayColumnE);
67
68 assertEquals(new DisplayMultipleColumns(columns), result);
69 }
70
71 /***
72 * Test: agregar a un comodin de todas las columnas.
73 */
74 public void testAppendToAllColumns() {
75 DisplayColumns result = new DisplayAllColumns().append(otherMultipleColumns);
76 List columns = new ArrayList();
77 columns.add(new DisplayAllColumns());
78 columns.add(displayColumnD);
79 columns.add(displayColumnE);
80
81 assertEquals(new DisplayMultipleColumns(columns), result);
82 }
83 }