001 package com.mockrunner.tag;
002
003 import java.util.Map;
004
005 import javax.servlet.jsp.tagext.JspTag;
006 import javax.servlet.jsp.tagext.TagSupport;
007
008 import com.mockrunner.base.BasicHTMLOutputTestCase;
009 import com.mockrunner.base.HTMLOutputModule;
010 import com.mockrunner.mock.web.MockPageContext;
011 import com.mockrunner.mock.web.WebMockObjectFactory;
012
013 /**
014 * Delegator for {@link com.mockrunner.tag.TagTestModule}. You can
015 * subclass this adapter or use {@link com.mockrunner.tag.TagTestModule}
016 * directly (so your test case can use another base class).
017 * This basic adapter can be used if you don't need any other modules. It
018 * does not extend {@link com.mockrunner.base.BaseTestCase}. If you want
019 * to use several modules in conjunction, consider subclassing
020 * {@link com.mockrunner.tag.TagTestCaseAdapter}.
021 * <b>This class is generated from the {@link com.mockrunner.tag.TagTestModule}
022 * and should not be edited directly</b>.
023 */
024 public class BasicTagTestCaseAdapter extends BasicHTMLOutputTestCase
025 {
026 private TagTestModule tagTestModule;
027 private WebMockObjectFactory webMockObjectFactory;
028
029 public BasicTagTestCaseAdapter()
030 {
031
032 }
033
034 public BasicTagTestCaseAdapter(String name)
035 {
036 super(name);
037 }
038
039 protected void tearDown() throws Exception
040 {
041 super.tearDown();
042 tagTestModule = null;
043 webMockObjectFactory = null;
044 }
045
046 /**
047 * Creates the {@link com.mockrunner.tag.TagTestModule}. If you
048 * overwrite this method, you must call <code>super.setUp()</code>.
049 */
050 protected void setUp() throws Exception
051 {
052 super.setUp();
053 webMockObjectFactory = createWebMockObjectFactory();
054 tagTestModule = createTagTestModule(getWebMockObjectFactory());
055 }
056
057 /**
058 * Creates a {@link com.mockrunner.mock.web.WebMockObjectFactory}.
059 * @return the created {@link com.mockrunner.mock.web.WebMockObjectFactory}
060 */
061 protected WebMockObjectFactory createWebMockObjectFactory()
062 {
063 return new WebMockObjectFactory();
064 }
065
066 /**
067 * Same as <code>createWebMockObjectFactory(otherFactory, true)</code>.
068 */
069 protected WebMockObjectFactory createWebMockObjectFactory(WebMockObjectFactory otherFactory)
070 {
071 return new WebMockObjectFactory(otherFactory);
072 }
073
074 /**
075 * Creates a {@link com.mockrunner.mock.web.WebMockObjectFactory} based on another
076 * {@link com.mockrunner.mock.web.WebMockObjectFactory}.
077 * The created {@link com.mockrunner.mock.web.WebMockObjectFactory} will have its own
078 * request and response objects. If you set <i>createNewSession</i>
079 * to <code>true</code> it will also have its own session object.
080 * The two factories will share one <code>ServletContext</code>.
081 * Especially important for multithreading tests.
082 * If you set <i>createNewSession</i> to false, the two factories
083 * will share one session. This setting simulates multiple requests
084 * from the same client.
085 * @param otherFactory the other factory
086 * @param createNewSession create a new session for the new factory
087 * @return the created {@link com.mockrunner.mock.web.WebMockObjectFactory}
088 */
089 protected WebMockObjectFactory createWebMockObjectFactory(WebMockObjectFactory otherFactory, boolean createNewSession)
090 {
091 return new WebMockObjectFactory(otherFactory, createNewSession);
092 }
093
094 /**
095 * Gets the {@link com.mockrunner.mock.web.WebMockObjectFactory}.
096 * @return the {@link com.mockrunner.mock.web.WebMockObjectFactory}
097 */
098 protected WebMockObjectFactory getWebMockObjectFactory()
099 {
100 return webMockObjectFactory;
101 }
102
103 /**
104 * Sets the {@link com.mockrunner.mock.web.WebMockObjectFactory}.
105 * @param webMockObjectFactory the {@link com.mockrunner.mock.web.WebMockObjectFactory}
106 */
107 protected void setWebMockObjectFactory(WebMockObjectFactory webMockObjectFactory)
108 {
109 this.webMockObjectFactory = webMockObjectFactory;
110 }
111
112 /**
113 * Creates a {@link com.mockrunner.tag.TagTestModule} based on the current
114 * {@link com.mockrunner.mock.web.WebMockObjectFactory}.
115 * Same as <code>createTagTestModule(getWebMockObjectFactory())</code>.
116 * @return the created {@link com.mockrunner.tag.TagTestModule}
117 */
118 protected TagTestModule createTagTestModule()
119 {
120 return new TagTestModule(getWebMockObjectFactory());
121 }
122
123 /**
124 * Creates a {@link com.mockrunner.tag.TagTestModule} with the specified
125 * {@link com.mockrunner.mock.web.WebMockObjectFactory}.
126 * @return the created {@link com.mockrunner.tag.TagTestModule}
127 */
128 protected TagTestModule createTagTestModule(WebMockObjectFactory mockFactory)
129 {
130 return new TagTestModule(mockFactory);
131 }
132
133 /**
134 * Returns the {@link com.mockrunner.tag.TagTestModule} as
135 * {@link com.mockrunner.base.HTMLOutputModule}.
136 * @return the {@link com.mockrunner.base.HTMLOutputModule}
137 */
138 protected HTMLOutputModule getHTMLOutputModule()
139 {
140 return tagTestModule;
141 }
142
143 /**
144 * Gets the {@link com.mockrunner.tag.TagTestModule}.
145 * @return the {@link com.mockrunner.tag.TagTestModule}
146 */
147 protected TagTestModule getTagTestModule()
148 {
149 return tagTestModule;
150 }
151
152 /**
153 * Sets the {@link com.mockrunner.tag.TagTestModule}.
154 * @param tagTestModule the {@link com.mockrunner.tag.TagTestModule}
155 */
156 protected void setTagTestModule(TagTestModule tagTestModule)
157 {
158 this.tagTestModule = tagTestModule;
159 }
160
161 /**
162 * Delegates to {@link com.mockrunner.tag.TagTestModule#getMockPageContext}
163 */
164 protected MockPageContext getMockPageContext()
165 {
166 return tagTestModule.getMockPageContext();
167 }
168
169 /**
170 * Delegates to {@link com.mockrunner.tag.TagTestModule#release}
171 */
172 protected void release()
173 {
174 tagTestModule.release();
175 }
176
177 /**
178 * Delegates to {@link com.mockrunner.tag.TagTestModule#clearOutput}
179 */
180 protected void clearOutput()
181 {
182 tagTestModule.clearOutput();
183 }
184
185 /**
186 * Delegates to {@link com.mockrunner.tag.TagTestModule#createTag(Class)}
187 */
188 protected TagSupport createTag(Class tagClass)
189 {
190 return tagTestModule.createTag(tagClass);
191 }
192
193 /**
194 * Delegates to {@link com.mockrunner.tag.TagTestModule#createTag(Class, Map)}
195 */
196 protected TagSupport createTag(Class tagClass, Map attributes)
197 {
198 return tagTestModule.createTag(tagClass, attributes);
199 }
200
201 /**
202 * Delegates to {@link com.mockrunner.tag.TagTestModule#createNestedTag(Class, Map)}
203 */
204 protected NestedTag createNestedTag(Class tagClass, Map attributes)
205 {
206 return tagTestModule.createNestedTag(tagClass, attributes);
207 }
208
209 /**
210 * Delegates to {@link com.mockrunner.tag.TagTestModule#createNestedTag(Class)}
211 */
212 protected NestedTag createNestedTag(Class tagClass)
213 {
214 return tagTestModule.createNestedTag(tagClass);
215 }
216
217 /**
218 * Delegates to {@link com.mockrunner.tag.TagTestModule#getTag}
219 */
220 protected TagSupport getTag()
221 {
222 return tagTestModule.getTag();
223 }
224
225 /**
226 * Delegates to {@link com.mockrunner.tag.TagTestModule#createWrappedTag(Class)}
227 */
228 protected JspTag createWrappedTag(Class tagClass)
229 {
230 return tagTestModule.createWrappedTag(tagClass);
231 }
232
233 /**
234 * Delegates to {@link com.mockrunner.tag.TagTestModule#createWrappedTag(Class, Map)}
235 */
236 protected JspTag createWrappedTag(Class tagClass, Map attributes)
237 {
238 return tagTestModule.createWrappedTag(tagClass, attributes);
239 }
240
241 /**
242 * Delegates to {@link com.mockrunner.tag.TagTestModule#getWrappedTag}
243 */
244 protected JspTag getWrappedTag()
245 {
246 return tagTestModule.getWrappedTag();
247 }
248
249 /**
250 * Delegates to {@link com.mockrunner.tag.TagTestModule#setTag(TagSupport, Map)}
251 */
252 protected NestedTag setTag(TagSupport tag, Map attributes)
253 {
254 return tagTestModule.setTag(tag, attributes);
255 }
256
257 /**
258 * Delegates to {@link com.mockrunner.tag.TagTestModule#setTag(JspTag, Map)}
259 */
260 protected NestedTag setTag(JspTag tag, Map attributes)
261 {
262 return tagTestModule.setTag(tag, attributes);
263 }
264
265 /**
266 * Delegates to {@link com.mockrunner.tag.TagTestModule#setTag(TagSupport)}
267 */
268 protected NestedTag setTag(TagSupport tag)
269 {
270 return tagTestModule.setTag(tag);
271 }
272
273 /**
274 * Delegates to {@link com.mockrunner.tag.TagTestModule#setTag(JspTag)}
275 */
276 protected NestedTag setTag(JspTag tag)
277 {
278 return tagTestModule.setTag(tag);
279 }
280
281 /**
282 * Delegates to {@link com.mockrunner.tag.TagTestModule#setDoRelease(boolean)}
283 */
284 protected void setDoRelease(boolean doRelease)
285 {
286 tagTestModule.setDoRelease(doRelease);
287 }
288
289 /**
290 * Delegates to {@link com.mockrunner.tag.TagTestModule#setDoReleaseRecursive(boolean)}
291 */
292 protected void setDoReleaseRecursive(boolean doRelease)
293 {
294 tagTestModule.setDoReleaseRecursive(doRelease);
295 }
296
297 /**
298 * Delegates to {@link com.mockrunner.tag.TagTestModule#populateAttributes}
299 */
300 protected void populateAttributes()
301 {
302 tagTestModule.populateAttributes();
303 }
304
305 /**
306 * Delegates to {@link com.mockrunner.tag.TagTestModule#setBody(String)}
307 */
308 protected void setBody(String body)
309 {
310 tagTestModule.setBody(body);
311 }
312
313 /**
314 * Delegates to {@link com.mockrunner.tag.TagTestModule#getNestedTag}
315 */
316 protected NestedTag getNestedTag()
317 {
318 return tagTestModule.getNestedTag();
319 }
320
321 /**
322 * Delegates to {@link com.mockrunner.tag.TagTestModule#doTag}
323 */
324 protected void doTag()
325 {
326 tagTestModule.doTag();
327 }
328
329 /**
330 * Delegates to {@link com.mockrunner.tag.TagTestModule#doStartTag}
331 */
332 protected int doStartTag()
333 {
334 return tagTestModule.doStartTag();
335 }
336
337 /**
338 * Delegates to {@link com.mockrunner.tag.TagTestModule#doEndTag}
339 */
340 protected int doEndTag()
341 {
342 return tagTestModule.doEndTag();
343 }
344
345 /**
346 * Delegates to {@link com.mockrunner.tag.TagTestModule#doInitBody}
347 */
348 protected void doInitBody()
349 {
350 tagTestModule.doInitBody();
351 }
352
353 /**
354 * Delegates to {@link com.mockrunner.tag.TagTestModule#doAfterBody}
355 */
356 protected int doAfterBody()
357 {
358 return tagTestModule.doAfterBody();
359 }
360
361 /**
362 * Delegates to {@link com.mockrunner.tag.TagTestModule#processTagLifecycle}
363 */
364 protected int processTagLifecycle()
365 {
366 return tagTestModule.processTagLifecycle();
367 }
368 }