org.apache.commons.jexl.junit
Class Asserter

java.lang.Object
  extended by junit.framework.Assert
      extended by org.apache.commons.jexl.junit.Asserter

public class Asserter
extends junit.framework.Assert

A utility class for performing JUnit based assertions using Jexl expressions. This class can make it easier to do unit tests using Jexl navigation expressions.

Since:
1.0
Version:
$Revision: 398153 $
Author:
James Strachan

Field Summary
private  JexlContext context
          context to use during asserts.
private  java.util.Map variables
          variables used during asserts.
 
Constructor Summary
Asserter()
          Create an asserter.
Asserter(java.lang.Object variableValue)
          This constructor will register the given variableValue as the "this" variable.
 
Method Summary
 void assertExpression(java.lang.String expression, java.lang.Object expected)
          Performs an assertion that the value of the given Jexl expression evaluates to the given expected value.
 void setVariable(java.lang.String name, java.lang.Object value)
          Puts a variable of a certain name in the context so that it can be used from assertion expressions.
 
Methods inherited from class junit.framework.Assert
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail, failNotEquals, failNotSame, failSame
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

variables

private final java.util.Map variables
variables used during asserts.


context

private final JexlContext context
context to use during asserts.

Constructor Detail

Asserter

public Asserter()
Create an asserter.


Asserter

public Asserter(java.lang.Object variableValue)
This constructor will register the given variableValue as the "this" variable.

Parameters:
variableValue - 'this'.
Method Detail

assertExpression

public void assertExpression(java.lang.String expression,
                             java.lang.Object expected)
                      throws java.lang.Exception
Performs an assertion that the value of the given Jexl expression evaluates to the given expected value.

Parameters:
expression - is the Jexl expression to evaluate
expected - is the expected value of the expression
Throws:
java.lang.Exception - if the expression could not be evaluationed or an assertion fails

setVariable

public void setVariable(java.lang.String name,
                        java.lang.Object value)
Puts a variable of a certain name in the context so that it can be used from assertion expressions.

Parameters:
name - variable name
value - variable value