package jmathlib.tools.junit.framework; import jmathlib.core.interpreter.Interpreter; import jmathlibtests.Compare; public class JMathLibTestCase extends TestCase { protected Interpreter ml; public JMathLibTestCase (String name) { super(name); } protected void setUp() { ml = new Interpreter(true); } protected void tearDown() { ml = null; } public void eval(String s) { ml.executeExpression(s); } public void assertStringEquals(String a, String b) { ml.executeExpression(a); double[][]ans1D = ml.getArrayValueRe("ans"); double[][]ans1I = ml.getArrayValueIm("ans"); ml.executeExpression(b); double[][]ans2D = ml.getArrayValueRe("ans"); double[][]ans2I = ml.getArrayValueIm("ans"); assertTrue(Compare.ArrayEquals(ans1D, ans2D)); assertTrue(Compare.ArrayEquals(ans1I, ans2I)); } public void assertEvalScalarEquals(String func, String var, boolean b) { ml.executeExpression(func); boolean ansRe = ml.getScalarValueBoolean(var); assertEquals(ansRe, b); } public void assertScalarEquals(String var, double varRe ) { double ansRe = ml.getScalarValueRe(var); assertEquals(ansRe, varRe); } public void assertScalarEquals(String var, double varRe, double tol ) { double ansRe = ml.getScalarValueRe(var); assertEquals(ansRe, varRe, tol); } public void assertScalarEquals(String var, double varRe, double varIm, double tol ) { double ansRe = ml.getScalarValueRe(var); double ansIm = ml.getScalarValueIm(var); assertEquals(ansRe, varRe, tol); assertEquals(ansIm, varIm, tol); } public void assertEvalScalarEquals(String func, String var, double varRe) { ml.executeExpression(func); double ansRe = ml.getScalarValueRe(var); assertEquals(ansRe, varRe); } public void assertEvalScalarEquals(String func, String var, double varRe, double tol ) { ml.executeExpression(func); double ansRe = ml.getScalarValueRe(var); assertEquals(ansRe, varRe, tol); } public void assertEvalScalarEquals(String func, String var, double varRe, double varIm, double tol ) { ml.executeExpression(func); double ansRe = ml.getScalarValueRe(var); double ansIm = ml.getScalarValueIm(var); assertEquals(ansRe, varRe, tol); assertEquals(ansIm, varIm, tol); } public void assertEvalArrayEquals(String func, String var, double[][] varRe) { ml.executeExpression(func); double[][]ansRe = ml.getArrayValueRe(var); assertTrue(Compare.ArrayEquals(ansRe, varRe)); } public void assertEvalArrayEquals(String func, String var, double[][] varRe, double tol ) { ml.executeExpression(func); double[][]ansRe = ml.getArrayValueRe(var); assertTrue(Compare.ArrayEquals(ansRe, varRe, tol)); } public void assertEvalArrayEquals(String func, String var, double[][] varRe, double[][] varIm, double tol ) { ml.executeExpression(func); double[][]ansRe = ml.getArrayValueRe(var); double[][]ansIm = ml.getArrayValueIm(var); assertTrue(Compare.ArrayEquals(ansRe, varRe, tol)); assertTrue(Compare.ArrayEquals(ansIm, varIm, tol)); } }