/*
*
Title: StripesUtils
* Description:
* Copyright: Copyright (c) 2007
* Company: Institut de recherches cliniques de Montréal (IRCM)
*/
package ca.qc.ircm.stripes.test;
import java.util.HashMap;
import java.util.Map;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import ca.qc.ircm.stripes.test.bean.GenericPersonActionBean;
import ca.qc.ircm.stripes.test.bean.PersonActionBean;
import net.sourceforge.stripes.controller.DispatcherServlet;
import net.sourceforge.stripes.controller.StripesFilter;
import net.sourceforge.stripes.mock.MockHttpSession;
import net.sourceforge.stripes.mock.MockRoundtrip;
import net.sourceforge.stripes.mock.MockServletContext;
/**
* Test session interceptor.
*
* @author Christian Poitras
*/
public class Test {
MockServletContext context;
@Before
public void setupContext() {
context = new MockServletContext("test");
// Add the Stripes Filter
Map filterParams = new HashMap();
filterParams.put("Extension.Packages",
"ca.qc.ircm.stripes.test");
filterParams.put("ActionResolver.Packages",
"ca.qc.ircm.stripes.test");
context.addFilter(StripesFilter.class, "StripesFilter", filterParams);
// Add the Stripes Dispatcher
context.setServlet(DispatcherServlet.class, "StripesDispatcher", null);
}
@After
public void releaseContext() {
context = null;
}
/**
* Test non-generic field.
*/
@org.junit.Test
public void nonGeneric() throws Exception {
MockHttpSession session = new MockHttpSession(context);
// Create person in non-generic action bean.
{
MockRoundtrip trip = new MockRoundtrip(context, PersonActionBean.class, session);
trip.addParameter("person", "Christian");
trip.execute();
PersonActionBean bean = trip.getActionBean(PersonActionBean.class);
Assert.assertEquals("Christian", bean.getPerson().getName());
}
}
/**
* Test generic field.
*/
@org.junit.Test
public void generic() throws Exception {
MockHttpSession session = new MockHttpSession(context);
// Create person in generic action bean.
{
MockRoundtrip trip = new MockRoundtrip(context, GenericPersonActionBean.class, session);
trip.addParameter("person", "Christian");
trip.execute();
GenericPersonActionBean> bean = trip.getActionBean(GenericPersonActionBean.class);
Assert.assertEquals("Christian", bean.getPerson().getName());
}
}
}