* Bug #10082 fixed - string(complex) with real(complex)>0 did not remove the leading... 99/17899/7
Nicolas [Thu, 10 Mar 2016 14:47:52 +0000 (15:47 +0100)]
 * unit/nonreg tests added: string(1+%i) returned " 1+%i"

Change-Id: I8e499bb25c1eaa0bce65ea396562c923d20e41bb

scilab/CHANGES
scilab/modules/string/tests/nonreg_tests/bug_10082.dia.ref [new file with mode: 0644]
scilab/modules/string/tests/nonreg_tests/bug_10082.tst [new file with mode: 0644]
scilab/modules/string/tests/unit_tests/string.dia.ref
scilab/modules/string/tests/unit_tests/string.tst

index 44f5987..227448f 100644 (file)
@@ -335,6 +335,8 @@ In 6.0.0:
 
 * Bug #9456 fixed  - bench_run did not work on a path or in a toolbox
 
+* Bug #10082 fixed - string(complex) with real(complex)>0 did not remove the leading space replacing "+"
+
 * Bug #11625 fixed - uicontrol table would not update object strings when edited interactively in the plot window
 
 * Bug #12559       - Fixed some memory leaks in FFTW
diff --git a/scilab/modules/string/tests/nonreg_tests/bug_10082.dia.ref b/scilab/modules/string/tests/nonreg_tests/bug_10082.dia.ref
new file mode 100644 (file)
index 0000000..7321e6e
--- /dev/null
@@ -0,0 +1,20 @@
+// =============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2016 - Samuel GOUGEON
+//
+//  This file is distributed under the same license as the Scilab package.
+// =============================================================================
+// <-- CLI SHELL MODE -->
+// <-- Non-regression test for bug 10082 -->
+//
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/10082
+//
+// <-- Short Description -->
+// string(complex) did not remove the leading space replacing "+" for real()>0
+assert_checkequal(string(1+%i), "1+%i");
+assert_checkequal(string(30-%i), "30-%i");
+assert_checkequal(string(2.3-2*%i), "2.3-%i*2");
+assert_checkequal(string(complex(2, %nan)), "2+%i*Nan");
+assert_checkequal(string(complex(%inf, 21)), "Inf+%i*21");
+assert_checkequal(string(complex(-%nan, -%inf)), "Nan-%i*Inf");
diff --git a/scilab/modules/string/tests/nonreg_tests/bug_10082.tst b/scilab/modules/string/tests/nonreg_tests/bug_10082.tst
new file mode 100644 (file)
index 0000000..7321e6e
--- /dev/null
@@ -0,0 +1,20 @@
+// =============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2016 - Samuel GOUGEON
+//
+//  This file is distributed under the same license as the Scilab package.
+// =============================================================================
+// <-- CLI SHELL MODE -->
+// <-- Non-regression test for bug 10082 -->
+//
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/10082
+//
+// <-- Short Description -->
+// string(complex) did not remove the leading space replacing "+" for real()>0
+assert_checkequal(string(1+%i), "1+%i");
+assert_checkequal(string(30-%i), "30-%i");
+assert_checkequal(string(2.3-2*%i), "2.3-%i*2");
+assert_checkequal(string(complex(2, %nan)), "2+%i*Nan");
+assert_checkequal(string(complex(%inf, 21)), "Inf+%i*21");
+assert_checkequal(string(complex(-%nan, -%inf)), "Nan-%i*Inf");
index c2ba496..88ff866 100644 (file)
@@ -1,6 +1,7 @@
 // =============================================================================
 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 // Copyright (C) 2007-2008 - INRIA
+// Copyright (C) 2016 - Samuel GOUGEON
 //
 //  This file is distributed under the same license as the Scilab package.
 // =============================================================================
@@ -23,10 +24,14 @@ assert_checkequal(string(0-2*%i), "-%i*2");
 assert_checkequal(string(-2+2*%i), "-2+%i*2");
 assert_checkequal(string(-2-2*%i), "-2-%i*2");
 // BUG #10082
-//assert_checkequal(string(1+%i), "1+%i");
-//assert_checkequal(string(1-%i), "1-%i");
-//assert_checkequal(string(2+2*%i), "2+%i*2");
-//assert_checkequal(string(2-2*%i), "2-%i*2");
+assert_checkequal(string(1+%i), "1+%i");
+assert_checkequal(string(2+3.5*%i), "2+%i*3.5");
+assert_checkequal(string(3.4-2*%i), "3.4-%i*2");
+assert_checkequal(string(complex(3.4,-%nan)), "3.4+%i*Nan");
+assert_checkequal(string(complex(3.4,%inf)), "3.4+%i*Inf");
+assert_checkequal(string(complex(%nan,0)), "Nan");
+assert_checkequal(string(complex(0,%nan)), "%i*Nan");
+assert_checkequal(string(complex(-%inf,-%nan)), "-Inf+%i*Nan");
 //===============================
 assert_checkequal(string([]), []);
 //===============================
index 37d7525..ba6529c 100644 (file)
@@ -1,6 +1,7 @@
 // =============================================================================
 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 // Copyright (C) 2007-2008 - INRIA
+// Copyright (C) 2016 - Samuel GOUGEON
 //
 //  This file is distributed under the same license as the Scilab package.
 // =============================================================================
@@ -25,10 +26,14 @@ assert_checkequal(string(0-2*%i), "-%i*2");
 assert_checkequal(string(-2+2*%i), "-2+%i*2");
 assert_checkequal(string(-2-2*%i), "-2-%i*2");
 // BUG #10082
-//assert_checkequal(string(1+%i), "1+%i");
-//assert_checkequal(string(1-%i), "1-%i");
-//assert_checkequal(string(2+2*%i), "2+%i*2");
-//assert_checkequal(string(2-2*%i), "2-%i*2");
+assert_checkequal(string(1+%i), "1+%i");
+assert_checkequal(string(2+3.5*%i), "2+%i*3.5");
+assert_checkequal(string(3.4-2*%i), "3.4-%i*2");
+assert_checkequal(string(complex(3.4,-%nan)), "3.4+%i*Nan");
+assert_checkequal(string(complex(3.4,%inf)), "3.4+%i*Inf");
+assert_checkequal(string(complex(%nan,0)), "Nan");
+assert_checkequal(string(complex(0,%nan)), "%i*Nan");
+assert_checkequal(string(complex(-%inf,-%nan)), "-Inf+%i*Nan");
 //===============================
 assert_checkequal(string([]), []);
 //===============================