Add non-regression test for bug #9218. 59/16559/1
Vincent COUVERT [Mon, 1 Jun 2015 14:03:44 +0000 (16:03 +0200)]
No item added to CHANGES since never released.

Change-Id: I4061f956be42863c4f3a2020f1ef2a21c4fe73a9

scilab/modules/data_structures/tests/nonreg_tests/bug_9218.dia.ref [new file with mode: 0644]
scilab/modules/data_structures/tests/nonreg_tests/bug_9218.tst [new file with mode: 0644]

diff --git a/scilab/modules/data_structures/tests/nonreg_tests/bug_9218.dia.ref b/scilab/modules/data_structures/tests/nonreg_tests/bug_9218.dia.ref
new file mode 100644 (file)
index 0000000..77f9554
--- /dev/null
@@ -0,0 +1,25 @@
+// =============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2015 - Scilab Enterprises - Vincent COUVERT
+//
+//  This file is distributed under the same license as the Scilab package.
+// =============================================================================
+// <-- CLI SHELL MODE -->
+// <-- Non-regression test for bug 9218 -->
+//
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/9218
+//
+// <-- Short Description -->
+// a("b") = 10 makes Scilab crash 
+// but a = struct(); a("b") = 10 works.
+clear a
+a("b") = 10;
+assert_checkequal(a.b, 10);
+clear a
+a.b = 10;
+assert_checkequal(a.b, 10);
+clear a
+a = struct();
+a("b") = 10;
+assert_checkequal(a.b, 10);
diff --git a/scilab/modules/data_structures/tests/nonreg_tests/bug_9218.tst b/scilab/modules/data_structures/tests/nonreg_tests/bug_9218.tst
new file mode 100644 (file)
index 0000000..dbd7470
--- /dev/null
@@ -0,0 +1,30 @@
+// =============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2015 - Scilab Enterprises - Vincent COUVERT
+//
+//  This file is distributed under the same license as the Scilab package.
+// =============================================================================
+
+// <-- CLI SHELL MODE -->
+
+// <-- Non-regression test for bug 9218 -->
+//
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/9218
+//
+// <-- Short Description -->
+// a("b") = 10 makes Scilab crash
+// but a = struct(); a("b") = 10 works.
+
+clear a
+a("b") = 10;
+assert_checkequal(a.b, 10);
+
+clear a
+a.b = 10;
+assert_checkequal(a.b, 10);
+
+clear a
+a = struct();
+a("b") = 10;
+assert_checkequal(a.b, 10);