*/
@Test
public void testSessionProperties() throws Exception
{
DefaultMuleMessage message = new DefaultMuleMessage("Test Message", muleContext);
SessionHandler handler = new SerializeAndEncodeSessionHandler();
MuleSession session = new DefaultMuleSession();
String string = "bar";
session.setProperty("fooString", string);
Date date = new Date(0);
session.setProperty("fooDate", date);
List<String> list = createList();
session.setProperty("fooList", list);
handler.storeSessionInfoToMessage(session, message);
// store save session to outbound, move it to the inbound
// for retrieve to deserialize
Object s = message.removeProperty(MuleProperties.MULE_SESSION_PROPERTY);
message.setInboundProperty(MuleProperties.MULE_SESSION_PROPERTY, s);
session = handler.retrieveSessionInfoFromMessage(message);
Object obj = session.getProperty("fooString");
assertTrue(obj instanceof String);
assertEquals(string, obj);