Java tutorial
/* * ================================================================= * * The Apache Software License, Version 1.1 * * Copyright (c) 2001-2003 The Apache Software Foundation. All * rights reserved. * * Redistribution and use in source and binary forms, with or * without modification, are permitted provided that the following * conditions are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above * copyright notice, this list of conditions and the following * disclaimer in the documentation and/or other materials * provided with the distribution. * * 3. The end-user documentation included with the redistribution, * if any, must include the following acknowlegement: * "This product includes software developed by the * Apache Software Foundation (http://www.apache.org/)." * Alternately, this acknowlegement may appear in the software * itself, if and wherever such third-party acknowlegements * normally appear. * * 4. The names "The Jakarta Project", "junitbook", "jia", * "JUnit in Action" and "Apache Software Foundation" must not be * used to endorse or promote products derived from this software * without prior written permission. For written permission, * please contact apache@apache.org. * * 5. Products derived from this software may not be called "Apache" * nor may "Apache" appear in their names without prior written * permission of the Apache Group. * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * ================================================================= * * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Software Foundation. For * more information on the Apache Software Foundation, please see * <http://www.apache.org/>. * */ package junit.mock; import junit.framework.TestCase; import net.sf.mockcreator.MockCore; import org.apache.commons.beanutils.DynaBean; import org.apache.commons.beanutils.DynaProperty; import org.apache.commons.beanutils.BasicDynaClass; import javax.servlet.jsp.tagext.Tag; public class TestDynaPropertiesMO extends TestCase { private DynaPropertiesTag tag; private MockPageContext mockPageContext; private DynaBean createDynaBean() throws Exception { DynaProperty[] props = new DynaProperty[] { new DynaProperty("id", String.class), new DynaProperty("responsetime", Long.class) }; BasicDynaClass dynaClass = new BasicDynaClass("requesttime", null, props); DynaBean bean = dynaClass.newInstance(); bean.set("id", "12345"); bean.set("responsetime", new Long(500)); return bean; } protected void setUp() { MockCore.reset(); tag = new DynaPropertiesTag(); mockPageContext = new MockPageContext(); tag.setPageContext(mockPageContext); } public void testDoStartTag() throws Exception { DynaBean bean = createDynaBean(); /*mockPageContext.setupFindAttribute(bean); mockPageContext.addExpectedFindAttributeValues("item"); mockPageContext.addExpectedSetAttributeStringObjectValues( "var", bean.getDynaClass().getDynaProperties());*/ mockPageContext.expectFindAttribute("item").returns(bean); mockPageContext.expectSetAttribute("var", bean.getDynaClass().getDynaProperties()); tag.setItem("${item}"); tag.setVar("var"); int result = tag.doStartTag(); assertEquals(Tag.SKIP_BODY, result); //mockPageContext. //System.out.print(mockPageContext.getAttribute("var")); } protected void tearDown() { //mockPageContext.verify(); } }