1 20 21 package com.methodhead.shim; 22 23 import java.util.*; 24 import java.sql.*; 25 import junit.framework.*; 26 import org.apache.log4j.*; 27 import com.methodhead.persistable.*; 28 import com.methodhead.test.*; 29 30 public class FoldingNavRendererTest extends TestCase { 31 32 TestSite site = null; 33 String html = null; 34 StringBuffer buf = null; 35 36 FoldingNavRenderer renderer1_ = null; 37 38 static { 39 TestUtils.initLogger(); 40 } 41 42 public FoldingNavRendererTest( String name ) { 43 super( name ); 44 } 45 46 protected void setUp() { 47 try { 48 renderer1_ = new FoldingNavRenderer(); 49 renderer1_.setStart( 1 ); 50 renderer1_.setContext( 1 ); 51 renderer1_.setDepth( 1 ); 52 renderer1_.setTop( 1 ); 53 renderer1_.setHeader( "<ul>\n" ); 54 renderer1_.setLink( "<li class=\"lev{level}\"><a HREF=\"{url}\">{title}</a></li>\n" ); 55 renderer1_.setCurLink( "<li class=\"lev{level}cur\"><a HREF=\"{url}\">{title}</a></li>\n" ); 56 renderer1_.setFooter( "</ul>\n" ); 57 } 58 catch ( Exception e ) { 59 fail( e.getMessage() ); 60 } 61 } 62 63 protected void tearDown() { 64 } 65 66 public void testProperties() { 67 try { 68 site = new TestSite(); 69 site.createLinks(); 70 71 FoldingNavRenderer renderer = new FoldingNavRenderer(); 72 renderer.setRoot( site.link1_ ); 73 assertTrue( site.link1_ == renderer.getRoot() ); 74 75 renderer.setCur( site.link1_ ); 76 assertTrue( site.link1_ == renderer.getCur() ); 77 78 renderer.setStart( 666 ); 79 assertEquals( 666, renderer.getStart() ); 80 81 renderer.setContext( 777 ); 82 assertEquals( 777, renderer.getContext() ); 83 84 renderer.setDepth( 888 ); 85 assertEquals( 888, renderer.getDepth() ); 86 87 renderer.setHeader( "header" ); 88 assertEquals( "header", renderer.getHeader() ); 89 90 renderer.setLink( "link" ); 91 assertEquals( "link", renderer.getLink() ); 92 93 renderer.setCurLink( "curlink" ); 94 assertEquals( "curlink", renderer.getCurLink() ); 95 96 renderer.setFooter( "footer" ); 97 assertEquals( "footer", renderer.getFooter() ); 98 99 renderer.setIsEditMode( true ); 100 assertEquals( true, renderer.getIsEditMode() ); 101 } 102 catch ( Exception e ) { 103 e.printStackTrace(); 104 fail(); 105 } 106 } 107 108 public void testRenderLink() { 109 try { 110 site = new TestSite(); 111 site.createLinks(); 112 113 renderer1_.setRoot( site.link1_ ); 117 renderer1_.setCur( site.link1_ ); 118 119 buf = new StringBuffer (); 120 renderer1_.renderLink( buf, site.link1_, 1 ); 121 assertEquals( "<li class=\"lev1cur\"><a HREF=\"page1.shtml\">Page1</a></li>\n", buf.toString() ); 122 123 buf = new StringBuffer (); 124 renderer1_.renderLink( buf, site.link2_, 2 ); 125 assertEquals( "<li class=\"lev2\"><a HREF=\"page2.shtml\">Page2</a></li>\n", buf.toString() ); 126 127 buf = new StringBuffer (); 128 renderer1_.renderLink( buf, site.link4_, 2 ); 129 assertEquals( "<li class=\"lev2\"><a HREF=\"page4.shtml\">Page4</a></li>\n", buf.toString() ); 130 } 131 catch ( Exception e ) { 132 e.printStackTrace(); 133 fail(); 134 } 135 } 136 137 public void testRenderLinkEditMode() { 138 try { 139 site = new TestSite(); 140 site.createLinks(); 141 142 renderer1_.setRoot( site.link1_ ); 146 renderer1_.setCur( site.link1_ ); 147 renderer1_.setIsEditMode( true ); 148 149 buf = new StringBuffer (); 150 renderer1_.renderLink( buf, site.link1_, 1 ); 151 assertEquals( "<li class=\"lev1cur\"><a HREF=\"page1.shtml\">Page1</a></li>\n", buf.toString() ); 152 153 buf = new StringBuffer (); 154 renderer1_.renderLink( buf, site.link2_, 2 ); 155 assertEquals( "<li class=\"lev2\"><a HREF=\"page2.shtml\">Page2</a></li>\n", buf.toString() ); 156 157 buf = new StringBuffer (); 158 renderer1_.renderLink( buf, site.link4_, 2 ); 159 assertEquals( "<li class=\"lev2\"><a HREF=\"page4.shtml\">Page4</a></li>\n", buf.toString() ); 160 } 161 catch ( Exception e ) { 162 e.printStackTrace(); 163 fail(); 164 } 165 } 166 167 public void testRenderHeader() { 168 try { 169 site = new TestSite(); 170 site.createLinks(); 171 172 renderer1_.setRoot( site.link1_ ); 173 renderer1_.setCur( site.link1_ ); 174 175 StringBuffer buf = new StringBuffer (); 176 renderer1_.renderHeader( buf ); 177 assertEquals( "<ul>\n", buf.toString() ); 178 } 179 catch ( Exception e ) { 180 e.printStackTrace(); 181 fail(); 182 } 183 } 184 185 public void testRenderFooter() { 186 try { 187 site = new TestSite(); 188 site.createLinks(); 189 190 renderer1_.setRoot( site.link1_ ); 191 renderer1_.setCur( site.link1_ ); 192 193 StringBuffer buf = new StringBuffer (); 194 renderer1_.renderFooter( buf ); 195 assertEquals( "</ul>\n", buf.toString() ); 196 } 197 catch ( Exception e ) { 198 e.printStackTrace(); 199 fail(); 200 } 201 } 202 203 public void testRenderNav_Cur1() { 204 try { 205 site = new TestSite(); 206 site.createLinks(); 207 208 renderer1_.setRoot( site.link1_ ); 209 renderer1_.setCur( site.link1_ ); 210 211 html = 212 "<ul>\n" + 213 "<li class=\"lev1cur\"><a HREF=\"page1.shtml\">Page1</a></li>\n" + 214 "<li class=\"lev2\"><a HREF=\"page2.shtml\">Page2</a></li>\n" + 215 "<li class=\"lev2\"><a HREF=\"page4.shtml\">Page4</a></li>\n" + 216 "<li class=\"lev2\"><a HREF=\"page5.shtml\">Page5</a></li>\n" + 217 "</ul>\n"; 218 219 buf = new StringBuffer (); 220 renderer1_.renderNav( buf ); 221 assertEquals( html, buf.toString() ); 222 } 223 catch ( Exception e ) { 224 e.printStackTrace(); 225 fail(); 226 } 227 } 228 229 public void testRenderNav_Cur1Depth2() { 230 try { 231 site = new TestSite(); 232 site.createLinks(); 233 234 renderer1_.setRoot( site.link1_ ); 235 renderer1_.setCur( site.link1_ ); 236 renderer1_.setDepth( 2 ); 237 238 html = 239 "<ul>\n" + 240 "<li class=\"lev1cur\"><a HREF=\"page1.shtml\">Page1</a></li>\n" + 241 "<li class=\"lev2\"><a HREF=\"page2.shtml\">Page2</a></li>\n" + 242 "<li class=\"lev3\"><a HREF=\"page3.shtml\">Page3</a></li>\n" + 243 "<li class=\"lev2\"><a HREF=\"page4.shtml\">Page4</a></li>\n" + 244 "<li class=\"lev2\"><a HREF=\"page5.shtml\">Page5</a></li>\n" + 245 "<li class=\"lev3\"><a HREF=\"page6.shtml\">Page6</a></li>\n" + 246 "</ul>\n"; 247 248 buf = new StringBuffer (); 249 renderer1_.renderNav( buf ); 250 assertEquals( html, buf.toString() ); 251 } 252 catch ( Exception e ) { 253 e.printStackTrace(); 254 fail(); 255 } 256 } 257 258 public void testRenderNav_Cur2() { 259 try { 260 site = new TestSite(); 261 site.createLinks(); 262 263 renderer1_.setRoot( site.link1_ ); 264 renderer1_.setCur( site.link2_ ); 265 266 html = 267 "<ul>\n" + 268 "<li class=\"lev1\"><a HREF=\"page1.shtml\">Page1</a></li>\n" + 269 "<li class=\"lev2cur\"><a HREF=\"page2.shtml\">Page2</a></li>\n" + 270 "<li class=\"lev3\"><a HREF=\"page3.shtml\">Page3</a></li>\n" + 271 "<li class=\"lev2\"><a HREF=\"page4.shtml\">Page4</a></li>\n" + 272 "<li class=\"lev2\"><a HREF=\"page5.shtml\">Page5</a></li>\n" + 273 "</ul>\n"; 274 275 buf = new StringBuffer (); 276 renderer1_.renderNav( buf ); 277 assertEquals( html, buf.toString() ); 278 } 279 catch ( Exception e ) { 280 e.printStackTrace(); 281 fail(); 282 } 283 } 284 285 public void testRenderNav_Cur2Start2() { 286 try { 287 site = new TestSite(); 288 site.createLinks(); 289 290 renderer1_.setRoot( site.link1_ ); 291 renderer1_.setCur( site.link2_ ); 292 renderer1_.setStart( 2 ); 293 294 html = 295 "<ul>\n" + 296 "<li class=\"lev1cur\"><a HREF=\"page2.shtml\">Page2</a></li>\n" + 297 "<li class=\"lev2\"><a HREF=\"page3.shtml\">Page3</a></li>\n" + 298 "<li class=\"lev1\"><a HREF=\"page4.shtml\">Page4</a></li>\n" + 299 "<li class=\"lev1\"><a HREF=\"page5.shtml\">Page5</a></li>\n" + 300 "</ul>\n"; 301 302 buf = new StringBuffer (); 303 renderer1_.renderNav( buf ); 304 assertEquals( html, buf.toString() ); 305 } 306 catch ( Exception e ) { 307 e.printStackTrace(); 308 fail(); 309 } 310 311 } 312 313 public void testRenderNav_Cur3Start2Top0() { 314 try { 315 site = new TestSite(); 316 site.createLinks(); 317 318 renderer1_.setRoot( site.link1_ ); 319 renderer1_.setCur( site.link3_ ); 320 renderer1_.setStart( 2 ); 321 renderer1_.setTop( 0 ); 322 323 html = 324 "<ul>\n" + 325 "<li class=\"lev1\"><a HREF=\"page2.shtml\">Page2</a></li>\n" + 326 "<li class=\"lev2cur\"><a HREF=\"page3.shtml\">Page3</a></li>\n" + 327 "</ul>\n"; 328 329 buf = new StringBuffer (); 330 renderer1_.renderNav( buf ); 331 assertEquals( html, buf.toString() ); 332 } 333 catch ( Exception e ) { 334 e.printStackTrace(); 335 fail(); 336 } 337 } 338 339 public void testRenderNav_Cur3Top2() { 340 try { 341 site = new TestSite(); 342 site.createLinks(); 343 344 renderer1_.setRoot( site.link1_ ); 345 renderer1_.setCur( site.link3_ ); 346 renderer1_.setTop( 2 ); 347 348 html = 349 "<ul>\n" + 350 "<li class=\"lev1\"><a HREF=\"page1.shtml\">Page1</a></li>\n" + 351 "<li class=\"lev2\"><a HREF=\"page2.shtml\">Page2</a></li>\n" + 352 "<li class=\"lev3cur\"><a HREF=\"page3.shtml\">Page3</a></li>\n" + 353 "<li class=\"lev2\"><a HREF=\"page4.shtml\">Page4</a></li>\n" + 354 "<li class=\"lev2\"><a HREF=\"page5.shtml\">Page5</a></li>\n" + 355 "</ul>\n"; 356 357 buf = new StringBuffer (); 358 renderer1_.renderNav( buf ); 359 assertEquals( html, buf.toString() ); 360 } 361 catch ( Exception e ) { 362 e.printStackTrace(); 363 fail(); 364 } 365 } 366 367 public void testRenderNav_Cur1Hide2() { 368 try { 369 site = new TestSite(); 370 site.createLinks(); 371 372 renderer1_.setRoot( site.link1_ ); 373 renderer1_.setCur( site.link1_ ); 374 site.link2_.setHidden( true ); 375 376 html = 377 "<ul>\n" + 378 "<li class=\"lev1cur\"><a HREF=\"page1.shtml\">Page1</a></li>\n" + 379 "<li class=\"lev2\"><a HREF=\"page4.shtml\">Page4</a></li>\n" + 380 "<li class=\"lev2\"><a HREF=\"page5.shtml\">Page5</a></li>\n" + 381 "</ul>\n"; 382 383 buf = new StringBuffer (); 384 renderer1_.renderNav( buf ); 385 assertEquals( html, buf.toString() ); 386 } 387 catch ( Exception e ) { 388 e.printStackTrace(); 389 fail(); 390 } 391 } 392 393 public void testGetNavHtml() { 394 try { 395 site = new TestSite(); 396 site.createLinks(); 397 398 renderer1_.setRoot( site.link1_ ); 399 renderer1_.setCur( site.link1_ ); 400 site.link2_.setHidden( true ); 401 402 html = 403 "<ul>\n" + 404 "<li class=\"lev1cur\"><a HREF=\"page1.shtml\">Page1</a></li>\n" + 405 "<li class=\"lev2\"><a HREF=\"page4.shtml\">Page4</a></li>\n" + 406 "<li class=\"lev2\"><a HREF=\"page5.shtml\">Page5</a></li>\n" + 407 "</ul>\n"; 408 409 assertEquals( html, renderer1_.getNavHtml() ); 410 } 411 catch ( Exception e ) { 412 e.printStackTrace(); 413 fail(); 414 } 415 } 416 } 417 418 | Popular Tags |