Class JepTest

    • Field Detail

      • 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
      • 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
      • negativeZero

        protected java.lang.Object negativeZero()
      • 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
      • testNumberAsBooleanLogical

        public void testNumberAsBooleanLogical()
                                        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
      • 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
      • testLazyLogical

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

        public void testLazyLogical2()
                              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
      • 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
      • test_not_X_Y

        public void test_not_X_Y()
                          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
      • testCaseNull

        public void testCaseNull()
                          throws java.lang.Exception
        Throws:
        java.lang.Exception
      • buildVector

        protected java.lang.Object buildVector​(java.lang.Object... eles)
                                        throws java.lang.Exception
        Throws:
        java.lang.Exception
      • buildMatrix

        protected java.lang.Object buildMatrix​(java.lang.Object[]... eles)
                                        throws java.lang.Exception
        Throws:
        java.lang.Exception
      • testComplexListAccess

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

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

        public void testListAccessShiftZero()
                                     throws java.lang.Exception
        Throws:
        java.lang.Exception
      • testEleUnit

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

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

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

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

        public void testListExtra()
                           throws java.lang.Exception
        Throws:
        java.lang.Exception
      • testSpecialFunctions

        public void testSpecialFunctions()
                                  throws java.lang.Exception
        Throws:
        java.lang.Exception
      • testSpecialFunctions

        public void testSpecialFunctions​(boolean hasRealEval,
                                         boolean hasCallback)
                                  throws java.lang.Exception
        Throws:
        java.lang.Exception
      • setShiftZeroElePfmc

        protected void setShiftZeroElePfmc()