com.singularsys.jeptests.system
Class JepTest

java.lang.Object
  extended by com.singularsys.jeptests.system.JepTest
Direct Known Subclasses:
CPTest, ExtendedParserTest, PostfixEvalTest, StandardEvaluatorTest

public class JepTest
extends java.lang.Object


Field Summary
protected  Jep jep
          The parser
protected  java.lang.Object myFalse
           
protected  java.lang.Object myTrue
           
static boolean PRINT_RESULTS
           
 
Constructor Summary
JepTest()
           
 
Method Summary
protected  void assertEqNodes(java.lang.String s, Node expected, Node actual)
           
protected  java.lang.Object calcValue(Node node)
          Calculate the value of an expression.
protected  java.lang.Object calcValue(java.lang.String expr)
          Calculate the value of an expression.
protected  boolean compareRecursive(Node node1, Node node2)
           
protected  void complexValueTest(java.lang.String expr, Complex expected, double tol)
          Test parse-evaluate with complex number and given tolerance.
protected  void myAssertEquals(java.lang.String msg, java.lang.Object expected, java.lang.Object actual)
           
protected  void myAssertNaN(java.lang.String msg, java.lang.Object actual)
           
protected  void myAssertNull(java.lang.String msg, java.lang.Object actual)
           
static void nodeTest(Node n, java.lang.Object v)
           
static void nodeTest(Node n, Operator op)
           
static void nodeTest(Node n, java.lang.String name)
           
static void nodeTest(Node n, Variable v)
           
protected  void printTestHeader(java.lang.String str)
          Prints a header with the name of the test as specified in str.
 void setUp()
          Sets up the parser.
 void testAssign()
           
 void testBinom()
           
 void testBlankParser()
          Test creating a Jep instance with no functions and no variables.
 void testCaseString()
           
 void testChangeVariable()
          Test changing variables value after parsing
 void testChangeVariableComplex()
          Test changing variables value after parsing
 void testComments()
           
 void testComplex()
           
 void testEmptyEqn()
           
 void testEmptyEqn2()
           
 void testEvalExceptions()
          Test whether evaluation exceptions are thrown when they should be.
 void testEvaluate()
          Tests the evaluate() method.
 void testEvaluateComplex()
           
 void testEvaluateString()
           
 void testExpectedTokenSequence()
          Tests for bug #52
 void testFormat()
           
 void testFunction()
           
 void testIf()
           
 void testImplicitMul()
           
 void testLazyLogical()
           
 void testLazyLogicalBug()
          Test for bug with 1&&1&&1
 void testListAccess()
           
 void testListFunctions()
           
 void testLogarithm()
           
 void testLogical()
           
 void testMacroFunction()
           
 void testMultiDimArray()
           
 void testMultiLine()
           
 void testMultiplyBug()
           
 void testNaN()
           
 void testNoAssign()
           
 void testNull()
           
 void testNumbers()
           
 void testNumParam()
           
 void testParseException()
          Tests whether a parse exceptions are thrown when they should be.
 void testPlusPlus()
           
 void testRecursiveMacroFunction()
           
 void testSemiColon()
           
 void testSetAllowUndeclared()
          Tests whether allowUndeclared is working properly.
 void testSimpleSum()
           
 void testStrings()
           
 void testStringsFun()
           
 void testSwitch()
           
 void testUminusPower()
           
 void testX2Y()
           
protected  void valueTest(java.lang.String expr, double a, double tol)
          Test values to within a given precision
protected  void valueTest(java.lang.String expr, java.lang.Object expected)
          Test result j.evaluate(j.parse(expr))
protected  void valueTestFail(java.lang.String expr)
          Test whether evaluating an expression results in an exception
protected  void valueTestNaN(java.lang.String expr)
          Test whether an expression evaluates to NaN
protected  void valueTestNull(java.lang.String expr)
           
protected  void valueTestString(java.lang.String expr, java.lang.String expected)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PRINT_RESULTS

public static final boolean PRINT_RESULTS
See Also:
Constant Field Values

jep

protected Jep jep
The parser


myTrue

protected java.lang.Object myTrue

myFalse

protected java.lang.Object myFalse
Constructor Detail

JepTest

public JepTest()
Method Detail

setUp

public void setUp()
Sets up the parser.


printTestHeader

protected void printTestHeader(java.lang.String str)
Prints a header with the name of the test as specified in str.


valueTest

protected void valueTest(java.lang.String expr,
                         java.lang.Object expected)
                  throws java.lang.Exception
Test result j.evaluate(j.parse(expr))

Parameters:
expr - the expression to parse and evaluate
expected - result expected
Throws:
java.lang.Exception

calcValue

protected java.lang.Object calcValue(Node node)
                              throws java.lang.Exception
Calculate the value of an expression.

Parameters:
node -
Throws:
java.lang.Exception

calcValue

protected java.lang.Object calcValue(java.lang.String expr)
                              throws java.lang.Exception
Calculate the value of an expression.

Parameters:
expr -
Throws:
java.lang.Exception

myAssertEquals

protected void myAssertEquals(java.lang.String msg,
                              java.lang.Object expected,
                              java.lang.Object actual)

myAssertNaN

protected void myAssertNaN(java.lang.String msg,
                           java.lang.Object actual)

myAssertNull

protected void myAssertNull(java.lang.String msg,
                            java.lang.Object actual)

valueTestNull

protected void valueTestNull(java.lang.String expr)
                      throws java.lang.Exception
Throws:
java.lang.Exception

valueTestNaN

protected void valueTestNaN(java.lang.String expr)
                     throws java.lang.Exception
Test whether an expression evaluates to NaN

Parameters:
expr -
Throws:
java.lang.Exception

valueTestFail

protected void valueTestFail(java.lang.String expr)
                      throws java.lang.Exception
Test whether evaluating an expression results in an exception

Parameters:
expr -
Throws:
java.lang.Exception

valueTestString

protected void valueTestString(java.lang.String expr,
                               java.lang.String expected)
                        throws java.lang.Exception
Throws:
java.lang.Exception

complexValueTest

protected void complexValueTest(java.lang.String expr,
                                Complex expected,
                                double tol)
                         throws java.lang.Exception
Test parse-evaluate with complex number and given tolerance.

Parameters:
expr -
expected -
tol -
Throws:
java.lang.Exception

valueTest

protected void valueTest(java.lang.String expr,
                         double a,
                         double tol)
                  throws java.lang.Exception
Test values to within a given precision

Parameters:
expr - expression
a - the expected value
tol - tolerance
Throws:
java.lang.Exception

nodeTest

public static void nodeTest(Node n,
                            Operator op)

nodeTest

public static void nodeTest(Node n,
                            java.lang.String name)

nodeTest

public static void nodeTest(Node n,
                            Variable v)

nodeTest

public static void nodeTest(Node n,
                            java.lang.Object v)

compareRecursive

protected boolean compareRecursive(Node node1,
                                   Node node2)

assertEqNodes

protected void assertEqNodes(java.lang.String s,
                             Node expected,
                             Node actual)

testSimpleSum

public void testSimpleSum()
                   throws java.lang.Exception
Throws:
java.lang.Exception

testEvaluate

public void testEvaluate()
                  throws java.lang.Exception
Tests the evaluate() method.

Throws:
java.lang.Exception

testEvaluateComplex

public void testEvaluateComplex()
                         throws java.lang.Exception
Throws:
java.lang.Exception

testEvaluateString

public void testEvaluateString()
                        throws java.lang.Exception
Throws:
java.lang.Exception

testChangeVariable

public void testChangeVariable()
                        throws java.lang.Exception
Test changing variables value after parsing

Throws:
java.lang.Exception

testChangeVariableComplex

public void testChangeVariableComplex()
                               throws java.lang.Exception
Test changing variables value after parsing

Throws:
java.lang.Exception

testSetAllowUndeclared

public void testSetAllowUndeclared()
                            throws java.lang.Exception
Tests whether allowUndeclared is working properly.

Throws:
java.lang.Exception

testNumbers

public void testNumbers()
                 throws java.lang.Exception
Throws:
java.lang.Exception

testStrings

public void testStrings()
                 throws java.lang.Exception
Throws:
java.lang.Exception

testStringsFun

public void testStringsFun()
                    throws java.lang.Exception
Throws:
java.lang.Exception

testLogical

public void testLogical()
                 throws java.lang.Exception
Throws:
java.lang.Exception

testNull

public void testNull()
              throws java.lang.Exception
Throws:
java.lang.Exception

testNaN

public void testNaN()
             throws java.lang.Exception
Throws:
java.lang.Exception

testComplex

public void testComplex()
                 throws java.lang.Exception
Throws:
java.lang.Exception

testFunction

public void testFunction()
                  throws java.lang.Exception
Throws:
java.lang.Exception

testIf

public void testIf()
            throws java.lang.Exception
Throws:
java.lang.Exception

testPlusPlus

public void testPlusPlus()
                  throws java.lang.Exception
Throws:
java.lang.Exception

testImplicitMul

public void testImplicitMul()
                     throws java.lang.Exception
Throws:
java.lang.Exception

testUminusPower

public void testUminusPower()
                     throws java.lang.Exception
Throws:
java.lang.Exception

testNumParam

public void testNumParam()
                  throws java.lang.Exception
Throws:
java.lang.Exception

testBinom

public void testBinom()
               throws ParseException,
                      java.lang.Exception
Throws:
ParseException
java.lang.Exception

testFormat

public void testFormat()
                throws java.lang.Exception
Throws:
java.lang.Exception

testAssign

public void testAssign()
                throws java.lang.Exception
Throws:
java.lang.Exception

testMultiplyBug

public void testMultiplyBug()
                     throws java.lang.Exception
Throws:
java.lang.Exception

testNoAssign

public void testNoAssign()
                  throws java.lang.Exception
Throws:
java.lang.Exception

testListAccess

public void testListAccess()
                    throws java.lang.Exception
Throws:
java.lang.Exception

testMultiDimArray

public void testMultiDimArray()
                       throws java.lang.Exception
Throws:
java.lang.Exception

testListFunctions

public void testListFunctions()
                       throws java.lang.Exception
Throws:
java.lang.Exception

testLazyLogical

public void testLazyLogical()
                     throws java.lang.Exception
Throws:
java.lang.Exception

testLogarithm

public void testLogarithm()
                   throws java.lang.Exception
Throws:
java.lang.Exception

testBlankParser

public void testBlankParser()
                     throws java.lang.Exception
Test creating a Jep instance with no functions and no variables.

Throws:
java.lang.Exception

testMacroFunction

public void testMacroFunction()
                       throws java.lang.Exception
Throws:
java.lang.Exception

testRecursiveMacroFunction

public void testRecursiveMacroFunction()
                                throws java.lang.Exception
Throws:
java.lang.Exception

testParseException

public void testParseException()
Tests whether a parse exceptions are thrown when they should be. See ticket #50 Tests on both the standard parser and the configurable parser, is carried out by CPTest which extends this.


testEvalExceptions

public void testEvalExceptions()
Test whether evaluation exceptions are thrown when they should be.


testSemiColon

public void testSemiColon()
                   throws java.lang.Exception
Throws:
java.lang.Exception

testMultiLine

public void testMultiLine()
                   throws java.lang.Exception
Throws:
java.lang.Exception

testEmptyEqn

public void testEmptyEqn()
                  throws java.lang.Exception
Throws:
java.lang.Exception

testComments

public void testComments()
                  throws java.lang.Exception
Throws:
java.lang.Exception

testEmptyEqn2

public void testEmptyEqn2()
                   throws java.lang.Exception
Throws:
java.lang.Exception

testX2Y

public void testX2Y()
             throws java.lang.Exception
Throws:
java.lang.Exception

testExpectedTokenSequence

public void testExpectedTokenSequence()
Tests for bug #52


testSwitch

public void testSwitch()
                throws java.lang.Exception
Throws:
java.lang.Exception

testCaseString

public void testCaseString()
                    throws java.lang.Exception
Throws:
java.lang.Exception

testLazyLogicalBug

public void testLazyLogicalBug()
                        throws java.lang.Exception
Test for bug with 1&&1&&1

Throws:
java.lang.Exception


Copyright © 2010 Singular Systems http://www.singularsys.com/jep