fix prod : variables that are returned are binding link with outType
[scilab.git] / scilab / modules / elementary_functions / tests / unit_tests / prod.dia.ref
index d1fa54f..5d647b3 100644 (file)
@@ -6,7 +6,7 @@
 //  This file is distributed under the same license as the Scilab package.
 // =============================================================================
 // <-- CLI SHELL MODE -->
-// prod 
+// prod
 // Check error
 d=[1 10;254 9];
 assert_checkfalse(execstr("prod(d, ""orient"")"   ,"errcatch") == 0);
@@ -62,7 +62,7 @@ refMsg = msprintf(_("%s: Wrong size for input argument #%d: A string expected.\n
 assert_checkerror("prod(d,""r"", [""nat"" ""dble""])", refMsg);
 assert_checkfalse(execstr("prod(d,""orient"", ""t"")"   ,"errcatch") == 0);
 refMsg = msprintf(_("%s: Wrong value for input argument #%d: Must be in the set {%s}.\n"),..
-            "prod",2,"""*"",""r"",""c"",""m""");
+"prod",2,"""*"",""r"",""c"",""m""");
 assert_checkerror("prod(d,""orient"", ""t"")", refMsg);
 assert_checkfalse(execstr("prod(d,1,1)"   ,"errcatch") == 0);
 refMsg = msprintf(_("%s: Wrong type for input argument #%d: A string expected.\n"),"prod",3);
@@ -123,18 +123,18 @@ assert_checkfalse(execstr("prod(d, [""r"", ""c""])"   ,"errcatch") == 0);
 refMsg = msprintf(_("%s: Wrong size for input argument #%d: A string expected.\n"),"prod",2);
 assert_checkerror("prod(d, [""r"", ""c""])", refMsg);
 //empty matrices
-T=list(list(),list('native'),list('double'));
+T=list(list(),list("native"),list("double"));
 for typ=T
-  if prod([],typ(:))<>1 then bugmes();quit;end
-  if prod([],'*',typ(:))<>1 then bugmes();quit;end
-  if prod([],1,typ(:))<>[] then bugmes();quit;end
-  if prod([],2,typ(:))<>[] then bugmes();quit;end
-  if prod([],3,typ(:))<>[] then bugmes();quit;end
+    assert_checkequal(prod([], typ(:)), 1);
+    assert_checkequal(prod([], "*", typ(:)), 1);
+    assert_checkequal(prod([], 1, typ(:)), []);
+    assert_checkequal(prod([], 2, typ(:)), []);
+    assert_checkequal(prod([], 3, typ(:)), []);
 end
 //=======================================================================
 //float matrices
 d=[1 10;254 9];
-T=list(list(),list('native'),list('double'));
+T=list(list(),list("native"),list("double"));
 for typ=T
     assert_checkequal(prod(d, typ(:)), 22860);
     assert_checkequal(prod(d, "*", typ(:)), 22860);
@@ -144,7 +144,7 @@ for typ=T
 end
 //hypermatrices of floats
 d=[1 10;254 9];d(:,:,2)=1;
-T=list(list(),list('native'),list('double'));
+T=list(list(),list("native"),list("double"));
 for typ=T
     assert_checkequal(prod(d, typ(:)), 22860);
     assert_checkequal(prod(d, "*", typ(:)), 22860);
@@ -156,13 +156,13 @@ end
 //=======================================================================
 //matrices of short integers
 i=uint8([1 10;254 9]);
-T=list(list(),list('native'));
+T=list(list(),list("native"));
 for typ=T
     assert_checkequal(prod(i, typ(:)), uint8(76));
     assert_checkequal(prod(i, "*", typ(:)), uint8(76));
     assert_checkequal(prod(i, 1, typ(:)), uint8([254 90]));
     assert_checkequal(prod(i, 2, typ(:)), uint8([10;238]));
-    assert_checkequal(prod(i, 3, typ(:)), double(i));
+    assert_checkequal(prod(i, 3, typ(:)), i);
 end
 assert_checkequal(prod(i, "double"), 22860);
 assert_checkequal(prod(i, "*", "double"), 22860);
@@ -171,14 +171,14 @@ assert_checkequal(prod(i, 2, "double"), [10;2286]);
 assert_checkequal(prod(i, 3, "double"), double(i));
 //with hypermatrices
 i=uint8([1 10;254 9]);i(:,:,2)=uint8(1);
-T = list(list(),list('native'));
+T = list(list(),list("native"));
 for typ=T
     assert_checkequal(prod(i, typ(:)), uint8(76));
     assert_checkequal(prod(i, "*", typ(:)), uint8(76));
     assert_checkequal(prod(i, 1, typ(:)), hypermat([1,2,2],uint8([254;90;1;1])));
     assert_checkequal(prod(i, 2, typ(:)), hypermat([2,1,2],uint8([10;238;1;1])));
     assert_checkequal(prod(i, 3, typ(:)), uint8([1,10;254,9]));
-    assert_checkequal(prod(i, 5, typ(:)), double(i));
+    assert_checkequal(prod(i, 5, typ(:)), i);
 end
 assert_checkequal(prod(i, "double"), 22860);
 assert_checkequal(prod(i, "*", "double"), 22860);
@@ -188,7 +188,7 @@ assert_checkequal(prod(i, 3, "double"), [1,10;254,9]);
 assert_checkequal(prod(i, 5, "double"), double(i));
 //Polynomials
 s=%s;p=[s s+1;s^2 1];
-T=list(list(),list('native'),list('double'));
+T=list(list(),list("native"),list("double"));
 for typ=T
     assert_checkequal(prod(p, typ(:)), s^3+s^4);
     assert_checkequal(prod(p, "*", typ(:)), s^3+s^4);
@@ -198,7 +198,7 @@ for typ=T
 end
 //with hypermatrices
 s=%s;p=[s s+1;s^2 1];p(:,:,2)=[1 s;s+1 2];
-T=list(list(),list('native'),list('double'));
+T=list(list(),list("native"),list("double"));
 for typ=T
     assert_checkequal(prod(p, typ(:)), 2*s^4+4*s^5+2*s^6);
     assert_checkequal(prod(p, "*", typ(:)), 2*s^4+4*s^5+2*s^6);
@@ -210,7 +210,7 @@ end
 //=======================================================================
 //Matrices of rationals
 s=%s;r=1.0 ./[s s+1;s^2 1];
-T=list(list(),list('native'),list('double'));
+T=list(list(),list("native"),list("double"));
 for typ=T
     assert_checkequal(prod(r, typ(:)), 1.0/(s^3+s^4));
     assert_checkequal(prod(r, "*", typ(:)), 1.0/(s^3+s^4));
@@ -221,7 +221,7 @@ end
 //=======================================================================
 //Matrices of booleans
 b=[%t %t; %f %t];
-T = list(list(),list('double'));
+T = list(list(),list("double"));
 for typ=T
     assert_checkequal(prod(b, typ(:)), 0);
     assert_checkequal(prod(b, "*", typ(:)), 0);
@@ -234,9 +234,9 @@ assert_checkequal(prod(b, "*", "native"), %f);
 assert_checkequal(prod(b, 1, "native"), [%f %t]);
 assert_checkequal(prod(b, 2, "native"), [%t;%f]);
 assert_checkequal(prod(b, 3, "native"), b);
-//with hypermatrices   
+//with hypermatrices
 b=[%t %t;%f %t];b(1,1,2)=%t;
-T = list(list(),list('double'));
+T = list(list(),list("double"));
 for typ=T
     assert_checkequal(prod(b, typ(:)), 0);
     assert_checkequal(prod(b, "*", typ(:)), 0);
@@ -254,7 +254,7 @@ assert_checkequal(prod(b, 5, "native"), b);
 //=======================================================================
 //sparse matrices of floats
 s=sparse([1 10 2;-1 254 9]);
-T=list(list(),list('native'),list('double'));
+T=list(list(),list("native"),list("double"));
 for typ=T
     assert_checkequal(prod(s, typ(:)), -45720);
     assert_checkequal(prod(s, "*", typ(:)), -45720);
@@ -265,7 +265,7 @@ end
 //=======================================================================
 //sparse  matrices of boolean
 bs=sparse([%t %t %f;%t %t %t]);
-T = list(list(),list('double'));
+T = list(list(),list("double"));
 for typ=T
     assert_checkequal(prod(bs, typ(:)), 0);
     assert_checkequal(prod(bs, "*", typ(:)), 0);