package jmathlibtests.toolbox.general; import jmathlib.core.interpreter.Interpreter; import jmathlib.tools.junit.framework.*; import jmathlibtests.Compare; public class testSize extends TestCase { protected Interpreter ml; public testSize(String name) { super(name); } public static void main (String[] args) { jmathlib.tools.junit.textui.TestRunner.run (suite()); } protected void setUp() { ml = new Interpreter(true); } protected void tearDown() { ml = null; } public static Test suite() { return new TestSuite(testSize.class); } public void testSize01() { ml.executeExpression("a=size(1);"); ml.executeExpression("y=a(1,1);x=a(1,2)"); assertTrue(1.0 == ml.getScalarValueRe("x")); assertTrue(1.0 == ml.getScalarValueRe("y")); } public void testSize02() { ml.executeExpression("a=size([3 4]);"); ml.executeExpression("y=a(1,1);x=a(1,2)"); assertTrue(2.0 == ml.getScalarValueRe("x")); assertTrue(1.0 == ml.getScalarValueRe("y")); } public void testSize03() { ml.executeExpression("a=size([3 4 5]);"); ml.executeExpression("y=a(1,1);x=a(1,2)"); assertTrue(3.0 == ml.getScalarValueRe("x")); assertTrue(1.0 == ml.getScalarValueRe("y")); } public void testSize04() { ml.executeExpression("a=size([3 4 5]');"); ml.executeExpression("y=a(1,1);x=a(1,2)"); assertTrue(1 == ml.getScalarValueRe("x")); assertTrue(3 == ml.getScalarValueRe("y")); } public void testSize05() { ml.executeExpression("a=size([3 4 5;2 2 2]);"); ml.executeExpression("y=a(1,1);x=a(1,2)"); assertTrue(3 == ml.getScalarValueRe("x")); assertTrue(2 == ml.getScalarValueRe("y")); } public void testSize06() { ml.executeExpression("a=size({'sdfg','sdfg',3,4,5;7,8,'ads',4,5});"); ml.executeExpression("y=a(1,1);x=a(1,2)"); assertTrue(5 == ml.getScalarValueRe("x")); assertTrue(2 == ml.getScalarValueRe("y")); } public void testSize07() { ml.executeExpression("a=size('abcdef');"); ml.executeExpression("y=a(1,1);x=a(1,2)"); assertTrue(6 == ml.getScalarValueRe("x")); assertTrue(1 == ml.getScalarValueRe("y")); } public void testSize100() { double[][] s = {{3.0, 3.0, 5.0}}; ml.executeExpression("z = size(rand(3,3,5))"); assertTrue(Compare.ArrayEquals(s, ml.getArrayValueRe("z"))); } public void testSize101() { double[][] s = {{3.0, 3.0, 5.0, 1.0, 3.0}}; ml.executeExpression("z = size( rand(3,3,5,1,3) )"); assertTrue(Compare.ArrayEquals(s, ml.getArrayValueRe("z"))); } }