* Bug #8938 fixed - nonreg test added (insertions in boolean sparse) 27/18427/6
Samuel GOUGEON [Tue, 9 Aug 2016 01:05:35 +0000 (03:05 +0200)]
  http://bugzilla.scilab.org/8938

Change-Id: Ie27e690b921912136520147d628c9fb6fbb58b05

scilab/CHANGES.md
scilab/modules/sparse/tests/nonreg_tests/bug_8938.dia.ref [new file with mode: 0644]
scilab/modules/sparse/tests/nonreg_tests/bug_8938.tst [new file with mode: 0644]

index f9d5e81..85401fc 100644 (file)
@@ -253,6 +253,7 @@ Bug Fixes
 * [Bug #8010](http://bugzilla.scilab.org/show_bug.cgi?id=8010) fixed - Permanent variables could be redefined through a syntax like `%i(1,1)=1`
 * [Bug #8356](http://bugzilla.scilab.org/show_bug.cgi?id=8356) fixed - `sci2exp` applied to lists, tlists or mlists having undefined fields yielded an error or a wrong result.
 * [Bug #8493](http://bugzilla.scilab.org/show_bug.cgi?id=8493) fixed - Some trivial simplifications of `p1./p2` with matrices of complex-encoded polynomials were not done.
+* [Bug #8938](http://bugzilla.scilab.org/show_bug.cgi?id=8938) fixed   - In a boolean sparse matrix `sp`, distributive insertions like `sp(1,:)=%t`, `sp(1,1:$)=%t` or `sp(:,:)=%t` yielded an error.
 * [Bug #9153](http://bugzilla.scilab.org/show_bug.cgi?id=9153) fixed - The `isqualbitwise` help page was inaccurate and badly located
 * [Bug #9912](http://bugzilla.scilab.org/show_bug.cgi?id=9912) fixed - In case of missing translated help page, the default en_US was sometimes ignored
 * [Bug #10116](http://bugzilla.scilab.org/show_bug.cgi?id=10116) fixed - `for h = H, .., end` could not be used when H is a vector of graphic handles
diff --git a/scilab/modules/sparse/tests/nonreg_tests/bug_8938.dia.ref b/scilab/modules/sparse/tests/nonreg_tests/bug_8938.dia.ref
new file mode 100644 (file)
index 0000000..75e1274
--- /dev/null
@@ -0,0 +1,22 @@
+// =============================================================================
+// 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 8938 -->
+//
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/8938
+//
+// <-- Short Description -->
+// Some distributive insertions in boolean sparse matrices failed
+sp = sparse([%t %f;%f %t]);
+assert_checktrue(execstr("sp(1,:) = %t", "errcatch")==0);
+assert_checkequal(sp, sparse([%t %t ; %f %t]));
+sp = sparse([%t %f;%f %t]);
+assert_checktrue(execstr("sp(1,1:$) = %t", "errcatch")==0);
+assert_checkequal(sp, sparse([%t %t ; %f %t]));
+assert_checktrue(execstr("sp(:,:) = %t", "errcatch")==0);
+assert_checkequal(sp, sparse([%t %t ; %t %t]));
diff --git a/scilab/modules/sparse/tests/nonreg_tests/bug_8938.tst b/scilab/modules/sparse/tests/nonreg_tests/bug_8938.tst
new file mode 100644 (file)
index 0000000..4d65e11
--- /dev/null
@@ -0,0 +1,27 @@
+// =============================================================================
+// 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 8938 -->
+//
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/8938
+//
+// <-- Short Description -->
+// Some distributive insertions in boolean sparse matrices failed
+
+sp = sparse([%t %f;%f %t]);
+assert_checktrue(execstr("sp(1,:) = %t", "errcatch")==0);
+assert_checkequal(sp, sparse([%t %t ; %f %t]));
+
+sp = sparse([%t %f;%f %t]);
+assert_checktrue(execstr("sp(1,1:$) = %t", "errcatch")==0);
+assert_checkequal(sp, sparse([%t %t ; %f %t]));
+
+assert_checktrue(execstr("sp(:,:) = %t", "errcatch")==0);
+assert_checkequal(sp, sparse([%t %t ; %t %t]));