summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/language/types/reference/S8.7_A7.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/test262/language/types/reference/S8.7_A7.js')
-rw-r--r--js/src/tests/test262/language/types/reference/S8.7_A7.js34
1 files changed, 34 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/types/reference/S8.7_A7.js b/js/src/tests/test262/language/types/reference/S8.7_A7.js
new file mode 100644
index 0000000000..87895d39df
--- /dev/null
+++ b/js/src/tests/test262/language/types/reference/S8.7_A7.js
@@ -0,0 +1,34 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: Passing arguments by reference do change values of reference to be passed
+es5id: 8.7_A7
+description: Add new property to original variable inside function
+---*/
+
+var n = {};
+var m = n;
+
+//////////////////////////////////////////////////////////////////////////////
+//CHECK#1
+if (typeof m !== "object") {
+ throw new Test262Error('#1: var n = {}; var m = n; typeof m === "object". Actual: ' + (typeof m));
+}
+//
+//////////////////////////////////////////////////////////////////////////////
+
+function populateAge(person){person.age = 50;}
+
+populateAge(m);
+
+//////////////////////////////////////////////////////////////////////////////
+//CHECK#2
+if (n.age !== 50) {
+ throw new Test262Error('#2: var n = {}; var m = n; function populateAge(person){person.age = 50;} populateAge(m); n.age === 50. Actual: ' + (n.age));
+}
+
+//
+//////////////////////////////////////////////////////////////////////////////
+
+reportCompare(0, 0);