/*
* $Id: OgnlExpressionEvaluatorTestCase.java 20321 2010-11-24 15:21:24Z dfeist $
* --------------------------------------------------------------------------------------
* Copyright (c) MuleSoft, Inc. All rights reserved. http://www.mulesoft.com
*
* The software in this package is published under the terms of the CPAL v1.0
* license, a copy of which has been included with this distribution in the
* LICENSE.txt file.
*/
package org.mule.routing.filters;
import org.mule.DefaultMuleMessage;
import org.mule.module.ognl.expression.OgnlExpressionEvaluator;
import org.mule.tck.AbstractMuleTestCase;
import org.mule.tck.testmodels.fruit.Apple;
import org.mule.tck.testmodels.fruit.Banana;
import org.mule.tck.testmodels.fruit.FruitBowl;
public class OgnlExpressionEvaluatorTestCase extends AbstractMuleTestCase
{
public void testWithExpressions()
{
Apple apple = new Apple();
apple.wash();
Banana banana = new Banana();
banana.bite();
FruitBowl payload = new FruitBowl(apple, banana);
DefaultMuleMessage msg = new DefaultMuleMessage(payload, muleContext);
OgnlExpressionEvaluator e = new OgnlExpressionEvaluator();
Object value = e.evaluate("apple.washed", msg);
assertNotNull(value);
assertTrue(value instanceof Boolean);
assertTrue(((Boolean) value).booleanValue());
value = e.evaluate("bar", msg);
assertNull(value);
}
}