summaryrefslogtreecommitdiff
path: root/external/contributions/Google/sputnik_conformance_modified/11_Expressions/11.13_Assignment_Operators/11.13.2_Compound_Assignment/S11.13.2_A4.9_T2.1.js
diff options
context:
space:
mode:
Diffstat (limited to 'external/contributions/Google/sputnik_conformance_modified/11_Expressions/11.13_Assignment_Operators/11.13.2_Compound_Assignment/S11.13.2_A4.9_T2.1.js')
-rw-r--r--external/contributions/Google/sputnik_conformance_modified/11_Expressions/11.13_Assignment_Operators/11.13.2_Compound_Assignment/S11.13.2_A4.9_T2.1.js65
1 files changed, 65 insertions, 0 deletions
diff --git a/external/contributions/Google/sputnik_conformance_modified/11_Expressions/11.13_Assignment_Operators/11.13.2_Compound_Assignment/S11.13.2_A4.9_T2.1.js b/external/contributions/Google/sputnik_conformance_modified/11_Expressions/11.13_Assignment_Operators/11.13.2_Compound_Assignment/S11.13.2_A4.9_T2.1.js
new file mode 100644
index 000000000..c1dc006dc
--- /dev/null
+++ b/external/contributions/Google/sputnik_conformance_modified/11_Expressions/11.13_Assignment_Operators/11.13.2_Compound_Assignment/S11.13.2_A4.9_T2.1.js
@@ -0,0 +1,65 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * @name: S11.13.2_A4.9_T2.1;
+ * @section: 11.13.2, 11.10.1;
+ * @assertion: The production x &= y is the same as x = x & y;
+ * @description: Type(x) is different from Type(y) and both types vary between Number (primitive or object) and Boolean (primitive and object);
+ */
+
+//CHECK#1
+x = true;
+x &= 1;
+if (x !== 1) {
+ $ERROR('#1: x = true; x &= 1; x === 1. Actual: ' + (x));
+}
+
+//CHECK#2
+x = 1;
+x &= true;
+if (x !== 1) {
+ $ERROR('#2: x = 1; x &= true; x === 1. Actual: ' + (x));
+}
+
+//CHECK#3
+x = new Boolean(true);
+x &= 1;
+if (x !== 1) {
+ $ERROR('#3: x = new Boolean(true); x &= 1; x === 1. Actual: ' + (x));
+}
+
+//CHECK#4
+x = 1;
+x &= new Boolean(true);
+if (x !== 1) {
+ $ERROR('#4: x = 1; x &= new Boolean(true); x === 1. Actual: ' + (x));
+}
+
+//CHECK#5
+x = true;
+x &= new Number(1);
+if (x !== 1) {
+ $ERROR('#5: x = true; x &= new Number(1); x === 1. Actual: ' + (x));
+}
+
+//CHECK#6
+x = new Number(1);
+x &= true;
+if (x !== 1) {
+ $ERROR('#6: x = new Number(1); x &= true; x === 1. Actual: ' + (x));
+}
+
+//CHECK#7
+x = new Boolean(true);
+x &= new Number(1);
+if (x !== 1) {
+ $ERROR('#7: x = new Boolean(true); x &= new Number(1); x === 1. Actual: ' + (x));
+}
+
+//CHECK#8
+x = new Number(1);
+x &= new Boolean(true);
+if (x !== 1) {
+ $ERROR('#8: x = new Number(1); x &= new Boolean(true); x === 1. Actual: ' + (x));
+}