1 7 package com.inversoft.verge.mvc.view.jsp.model.test; 8 9 10 import javax.servlet.jsp.JspException ; 11 import javax.servlet.jsp.tagext.Tag ; 12 13 import com.inversoft.junit.JspTestCase; 14 import com.inversoft.verge.mvc.model.web.WebMetaData; 15 import com.inversoft.verge.mvc.view.jsp.model.ModelResolutionRegistry; 16 import com.inversoft.verge.mvc.view.jsp.model.UseBeanTag; 17 18 19 24 public class UseBeanTagTest extends JspTestCase { 25 26 31 public UseBeanTagTest(String name) { 32 super(name); 33 setLocal(true); 34 } 35 36 37 40 public void testRequest() { 41 UseBeanTag tag = new UseBeanTag(); 42 tag.setPageContext(pageContext); 43 tag.setVar("bean"); 44 tag.setClassName("com.inversoft.verge.mvc.view.jsp.model.test.Bean"); 45 tag.setScope("request"); 46 47 try { 48 assertEquals("Should be EVAL_PAGE", runTag(tag), Tag.EVAL_PAGE); 49 } catch (JspException jspe) { 50 fail(jspe.toString()); 51 } 52 53 assertNotNull("Should be in pageContext", pageContext.getAttribute("bean")); 54 assertNotNull("Should be in request", pageContext.getRequest().getAttribute("bean")); 55 assertNotNull("Should have created meta data", 56 ModelResolutionRegistry.lookup("bean", pageContext)); 57 assertTrue("Should have created web meta data", 58 ModelResolutionRegistry.lookup("bean", pageContext).getMetaData() instanceof WebMetaData); 59 } 60 61 64 public void testSession() { 65 UseBeanTag tag = new UseBeanTag(); 66 tag.setPageContext(pageContext); 67 tag.setVar("bean"); 68 tag.setClassName("com.inversoft.verge.mvc.view.jsp.model.test.Bean"); 69 tag.setScope("session"); 70 71 try { 72 assertEquals("Should be EVAL_PAGE", runTag(tag), Tag.EVAL_PAGE); 73 } catch (JspException jspe) { 74 fail(jspe.toString()); 75 } 76 77 assertNotNull("Should be in pageContext", pageContext.getAttribute("bean")); 78 assertNotNull("Should be in session", pageContext.getSession().getAttribute("bean")); 79 assertNotNull("Should have created meta data", 80 ModelResolutionRegistry.lookup("bean", pageContext)); 81 assertTrue("Should have created web meta data", 82 ModelResolutionRegistry.lookup("bean", pageContext).getMetaData() instanceof WebMetaData); 83 } 84 85 88 public void testApplication() { 89 UseBeanTag tag = new UseBeanTag(); 90 tag.setPageContext(pageContext); 91 tag.setVar("bean"); 92 tag.setClassName("com.inversoft.verge.mvc.view.jsp.model.test.Bean"); 93 tag.setScope("application"); 94 95 try { 96 assertEquals("Should be EVAL_PAGE", runTag(tag), Tag.EVAL_PAGE); 97 } catch (JspException jspe) { 98 fail(jspe.toString()); 99 } 100 101 assertNotNull("Should be in pageContext", pageContext.getAttribute("bean")); 102 assertNotNull("Should be in context", pageContext.getServletContext().getAttribute("bean")); 103 assertNotNull("Should have created meta data", 104 ModelResolutionRegistry.lookup("bean", pageContext)); 105 assertTrue("Should have created web meta data", 106 ModelResolutionRegistry.lookup("bean", pageContext).getMetaData() instanceof WebMetaData); 107 } 108 109 112 public void testFailures() { 113 UseBeanTag tag = new UseBeanTag(); 114 tag.setPageContext(pageContext); 115 tag.setVar("bean"); 116 tag.setClassName("com.inversoft.verge.mvc.view.jsp.model.test.Bean"); 117 tag.setScope("badScope"); 118 119 try { 120 assertEquals("Should be EVAL_PAGE", runTag(tag), Tag.EVAL_PAGE); 121 fail("Should have failed due to invalid scope"); 122 } catch (JspException jspe) { 123 System.out.println(jspe.toString()); 124 } 125 126 tag.setVar("bean"); 127 tag.setClassName("com.inversoft.verge.mvc.view.jsp.model.test.BadClass"); 128 tag.setScope("request"); 129 130 try { 131 assertEquals("Should be EVAL_PAGE", runTag(tag), Tag.EVAL_PAGE); 132 fail("Should have failed due to invalid class"); 133 } catch (JspException jspe) { 134 System.out.println(jspe.toString()); 135 } 136 } 137 } | Popular Tags |