summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/language/statements/for/S12.6.3_A14.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/test262/language/statements/for/S12.6.3_A14.js')
-rw-r--r--js/src/tests/test262/language/statements/for/S12.6.3_A14.js48
1 files changed, 48 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/statements/for/S12.6.3_A14.js b/js/src/tests/test262/language/statements/for/S12.6.3_A14.js
new file mode 100644
index 0000000000..49c3b859e9
--- /dev/null
+++ b/js/src/tests/test262/language/statements/for/S12.6.3_A14.js
@@ -0,0 +1,48 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+info: |
+ The production IterationStatement: "for (var VariableDeclarationListNoIn;
+ Expression; Expression) Statement"
+es5id: 12.6.3_A14
+description: Using +,*,/, as the second Expression
+---*/
+
+//CHECK#1
+for(var i=0;i<10;i++){}
+if (i!==10) throw new Test262Error('#1: i === 10. Actual: i ==='+ i );
+
+//CHECK#2
+var j=0;
+for(var i=1;i<10;i*=2){
+ j++;
+}
+if (i!==16) throw new Test262Error('#2.1: i === 16. Actual: i ==='+ i );
+if (j!==4) throw new Test262Error('#2.2: j === 4. Actual: j ==='+ j );
+
+//CHECK#3
+var j=0;
+for(var i=16;i>1;i=i/2){
+ j++;
+}
+if (i!==1) throw new Test262Error('#3.1: i === 1. Actual: i ==='+ i );
+if (j!==4) throw new Test262Error('#3.2: j === 4. Actual: j ==='+ j );
+
+//CHECK#4
+var j=0;
+for(var i=10;i>1;i--){
+ j++;
+}
+if (i!==1) throw new Test262Error('#4.1: i === 1. Actual: i ==='+ i );
+if (j!==9) throw new Test262Error('#4.2: j === 9. Actual: j ==='+ j );
+
+//CHECK#5
+var j=0;
+for(var i=2;i<10;i*=i){
+ j++;
+}
+if (i!==16) throw new Test262Error('#5.1: i === 16. Actual: i ==='+ i );
+if (j!==2) throw new Test262Error('#5.2: j === 2. Actual: j ==='+ j );
+
+reportCompare(0, 0);