1 package org.paneris.jammyjoes.controller; 2 3 import java.util.LinkedList; 4 5 import junit.framework.TestCase; 6 7 import org.melati.template.ServletTemplateContext; 8 9 import com.mockobjects.dynamic.Mock; 10 11 public class TestCaseSearchCriteria extends TestCase { 12 13 public void testNulled() { 14 ParameterProvider unit = new ParameterProvider(null,null); 15 String param = unit.nulled(null); 16 assertEquals(null, param); 17 } 18 public void testNotNulled() { 19 ParameterProvider unit = new ParameterProvider(null,null); 20 String param = unit.nulled("a"); 21 assertEquals("a", param); 22 } 23 public void testNulledEmpty() { 24 ParameterProvider unit = new ParameterProvider(null,null); 25 String param = unit.nulled(""); 26 assertEquals(null, param); 27 } 28 public void testNulledUnderscore() { 29 ParameterProvider unit = new ParameterProvider(null,null); 30 String param = unit.nulled("_"); 31 assertEquals(null, param); 32 } 33 34 public void testTemplateContextParameter() { 35 Mock contextControl = new Mock(ServletTemplateContext.class); 36 ServletTemplateContext tc = (ServletTemplateContext)contextControl.proxy(); 37 ParameterProvider unit = new ParameterProvider(tc, null); 38 contextControl.expectAndReturn("getForm", "troid", "1");; 39 String param = unit.getParam("troid", 0); 40 assertEquals("1", param); 41 } 42 43 public void testPathInfoParameter() { 44 Mock contextControl = new Mock(ServletTemplateContext.class); 45 ServletTemplateContext tc = (ServletTemplateContext)contextControl.proxy(); 46 String[] pathInfo = {"1"}; 47 ParameterProvider unit = new ParameterProvider(tc, pathInfo); 48 contextControl.expectAndReturn("getForm", "troid", null); 49 String param = unit.getParam("troid", 0); 50 assertEquals("1",param); 51 } 52 53 public void testPathInfoNoParameter() { 54 Mock contextControl = new Mock(ServletTemplateContext.class); 55 ServletTemplateContext tc = (ServletTemplateContext)contextControl.proxy(); 56 String[] pathInfo = {"1"}; 57 ParameterProvider unit = new ParameterProvider(tc, pathInfo); 58 contextControl.expectAndReturn("getForm", "troid", null); 59 String param = unit.getParam("troid", 1); 60 assertEquals(null,param); 61 } 62 63 public void testPathInfoEncodedParameter() { 64 Mock contextControl = new Mock(ServletTemplateContext.class); 65 ServletTemplateContext tc = (ServletTemplateContext)contextControl.proxy(); 66 String[] pathInfo = {"%2b"}; 67 ParameterProvider unit = new ParameterProvider(tc, pathInfo); 68 contextControl.expectAndReturn("getForm", "troid", null); 69 String param = unit.getParam("troid", 0); 70 assertEquals("+",param); 71 } 72 73 74 public void testTroidConstraint() { 75 Mock contextControl = new Mock(ServletTemplateContext.class); 76 contextControl.expectAndReturn("getForm", "troid", "1"); 77 ServletTemplateContext tc = (ServletTemplateContext)contextControl.proxy(); 78 TemplateContextSearchCriteria unit = new TemplateContextSearchCriteria(tc, null, null,new Logger("."), null); 79 LinkedList constraints = new LinkedList(); 80 unit.constrainTroid(constraints); 81 assertEquals(1, constraints.size()); 82 assertEquals("\"id\" = 1", constraints.getFirst().toString()); 83 } 84 85 }