1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.jetspeed.layout;
18
19 import junit.framework.TestCase;
20
21 import org.apache.jetspeed.components.portletregistry.PortletRegistry;
22 import org.apache.jetspeed.layout.impl.CoordinateImpl;
23 import org.apache.jetspeed.layout.impl.PortletPlacementContextImpl;
24 import org.apache.jetspeed.om.page.Fragment;
25 import org.apache.jetspeed.request.RequestContext;
26
27 /***
28 * Test for Fragment placement
29 *
30 * @author <a>David Gurney </a>
31 * @version $Id: $
32 */
33 public class TestPortletPlacement extends TestCase
34 {
35 private PortletRegistry portletRegistry;
36
37 public void setUp(){
38 portletRegistry = MockPortletRegistryFactory.createMockPortletRegistry();
39 }
40
41 public void testGetFragmentAt()
42 {
43
44 RequestContext requestContext = FragmentUtil.buildFullRequestContext();
45
46 try
47 {
48 PortletPlacementContext ppc = new PortletPlacementContextImpl(requestContext.getPage(),portletRegistry);
49 int a_iNumCols = ppc.getNumberColumns();
50 assertEquals(a_iNumCols, 2);
51
52 int a_iNumRows = ppc.getNumberRows(0);
53 assertEquals(a_iNumRows, 2);
54
55 a_iNumRows = ppc.getNumberRows(1);
56 assertEquals(a_iNumRows, 3);
57
58
59 Fragment a_oFrag = ppc
60 .getFragmentAtNewCoordinate(new CoordinateImpl(0, 0, 0, 0));
61 assertNotNull("null fragment found at 0,0", a_oFrag);
62 assertEquals(a_oFrag.getId(), "1");
63 assertEquals(a_oFrag.getName(), "frag1");
64
65 a_oFrag = ppc.getFragmentAtNewCoordinate(new CoordinateImpl(0, 1,
66 0, 1));
67 assertNotNull("null fragment found at 0,1", a_oFrag);
68 assertEquals(a_oFrag.getId(), "2");
69 assertEquals(a_oFrag.getName(), "frag2");
70
71 a_oFrag = ppc.getFragmentAtNewCoordinate(new CoordinateImpl(1, 0,
72 1, 0));
73 assertNotNull("null fragment found at 1,0", a_oFrag);
74 assertEquals(a_oFrag.getId(), "3");
75 assertEquals(a_oFrag.getName(), "frag3");
76
77 a_oFrag = ppc.getFragmentAtNewCoordinate(new CoordinateImpl(1, 1,
78 1, 1));
79 assertNotNull("null fragment found at 1,1", a_oFrag);
80 assertEquals(a_oFrag.getId(), "4");
81 assertEquals(a_oFrag.getName(), "frag4");
82
83 a_oFrag = ppc.getFragmentAtNewCoordinate(new CoordinateImpl(1, 2,
84 1, 2));
85 assertNotNull("null fragment found at 1,2", a_oFrag);
86 assertEquals(a_oFrag.getId(), "5");
87 assertEquals(a_oFrag.getName(), "frag5");
88
89 } catch (PortletPlacementException e)
90 {
91 fail("creating the PortletPlacementManager failed");
92 }
93 }
94
95 public void testGetFragmentById()
96 {
97
98 RequestContext requestContext = FragmentUtil.buildFullRequestContext();
99
100 try
101 {
102 PortletPlacementContext ppc = new PortletPlacementContextImpl(requestContext.getPage(),portletRegistry);
103
104
105 Fragment a_oFrag = ppc.getFragmentById("1");
106 assertNotNull("null fragment with id 1", a_oFrag);
107 assertEquals(a_oFrag.getId(), "1");
108 assertEquals(a_oFrag.getName(), "frag1");
109
110 a_oFrag = ppc.getFragmentById("2");
111 assertNotNull("null fragment with id 2", a_oFrag);
112 assertEquals(a_oFrag.getId(), "2");
113 assertEquals(a_oFrag.getName(), "frag2");
114
115 a_oFrag = ppc.getFragmentById("3");
116 assertNotNull("null fragment with id 3", a_oFrag);
117 assertEquals(a_oFrag.getId(), "3");
118 assertEquals(a_oFrag.getName(), "frag3");
119
120 a_oFrag = ppc.getFragmentById("4");
121 assertNotNull("null fragment with id 4", a_oFrag);
122 assertEquals(a_oFrag.getId(), "4");
123 assertEquals(a_oFrag.getName(), "frag4");
124
125 a_oFrag = ppc.getFragmentById("5");
126 assertNotNull("null fragment with id 5", a_oFrag);
127 assertEquals(a_oFrag.getId(), "5");
128 assertEquals(a_oFrag.getName(), "frag5");
129
130 } catch (PortletPlacementException e)
131 {
132 fail("creating the PortletPlacementManager failed");
133 }
134 }
135
136 public void testRemoveFragment()
137 {
138 RequestContext requestContext = FragmentUtil.buildFullRequestContext();
139
140 try
141 {
142 PortletPlacementContext ppc = new PortletPlacementContextImpl(requestContext.getPage(),portletRegistry);
143
144 Fragment a_oFrag = ppc
145 .getFragmentAtNewCoordinate(new CoordinateImpl(0, 0, 0, 0));
146
147 Coordinate a_oCoordinate = ppc.remove(a_oFrag);
148
149 assertEquals(a_oCoordinate.getOldCol(), 0);
150 assertEquals(a_oCoordinate.getOldRow(), 0);
151
152
153 a_oFrag = ppc.getFragmentAtNewCoordinate(new CoordinateImpl(0, 0,
154 0, 0));
155 assertEquals(a_oFrag.getId(), "2");
156 assertEquals(a_oFrag.getName(), "frag2");
157 } catch (PortletPlacementException e)
158 {
159 fail("creating the PortletPlacementManager failed");
160 }
161 }
162
163 public void testFragmentMoveabs()
164 {
165 RequestContext requestContext = FragmentUtil.buildFullRequestContext();
166
167 try
168 {
169 PortletPlacementContext ppc = new PortletPlacementContextImpl(requestContext.getPage(),portletRegistry);
170
171 Fragment a_oFrag = ppc
172 .getFragmentAtNewCoordinate(new CoordinateImpl(0, 0, 0, 0));
173
174 Coordinate a_oCoordinate = ppc.moveAbsolute(a_oFrag, new CoordinateImpl(
175 0, 0, 0, 1));
176
177 assertEquals(a_oCoordinate.getOldCol(), 0);
178 assertEquals(a_oCoordinate.getOldRow(), 0);
179 assertEquals(a_oCoordinate.getNewCol(), 0);
180 assertEquals(a_oCoordinate.getNewRow(), 1);
181
182
183 a_oFrag = ppc.getFragmentAtNewCoordinate(new CoordinateImpl(0, 0,
184 0, 0));
185 assertEquals(a_oFrag.getId(), "2");
186 assertEquals(a_oFrag.getName(), "frag2");
187
188 a_oFrag = ppc.getFragmentAtNewCoordinate(new CoordinateImpl(0, 0,
189 0, 1));
190 assertEquals(a_oFrag.getId(), "1");
191 assertEquals(a_oFrag.getName(), "frag1");
192 } catch (PortletPlacementException e)
193 {
194 fail("creating the PortletPlacementManager failed");
195 }
196 }
197
198 public void testFragmentMoveUp()
199 {
200 RequestContext requestContext = FragmentUtil.buildFullRequestContext();
201
202 try
203 {
204 PortletPlacementContext ppc = new PortletPlacementContextImpl(requestContext.getPage(),portletRegistry);
205
206 Fragment a_oFrag = ppc
207 .getFragmentAtNewCoordinate(new CoordinateImpl(0, 0, 0, 1));
208
209 Coordinate a_oCoordinate = ppc.moveUp(a_oFrag);
210
211 assertEquals(a_oCoordinate.getOldCol(), 0);
212 assertEquals(a_oCoordinate.getOldRow(), 1);
213 assertEquals(a_oCoordinate.getNewCol(), 0);
214 assertEquals(a_oCoordinate.getNewRow(), 0);
215
216
217 a_oFrag = ppc.getFragmentAtNewCoordinate(new CoordinateImpl(0, 0,
218 0, 0));
219 assertEquals(a_oFrag.getId(), "2");
220 assertEquals(a_oFrag.getName(), "frag2");
221
222 a_oFrag = ppc.getFragmentAtNewCoordinate(new CoordinateImpl(0, 0,
223 0, 1));
224 assertEquals(a_oFrag.getId(), "1");
225 assertEquals(a_oFrag.getName(), "frag1");
226 } catch (PortletPlacementException e)
227 {
228 fail("creating the PortletPlacementManager failed");
229 }
230 }
231
232 }