Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(411)

Unified Diff: test/mjsunit/harmony/collections.js

Issue 238973011: Revert "ES6: Add support for Map/Set forEach" (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « test/cctest/test-ordered-hash-table.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: test/mjsunit/harmony/collections.js
diff --git a/test/mjsunit/harmony/collections.js b/test/mjsunit/harmony/collections.js
index 002adaaed7c1a3e2951c201651014b6aa1531608..b33d08063d711491c1177600df5ac4f691c33ba5 100644
--- a/test/mjsunit/harmony/collections.js
+++ b/test/mjsunit/harmony/collections.js
@@ -507,347 +507,3 @@ for (var i = 9; i >= 0; i--) {
assertEquals('minus', m.get(0));
assertEquals('minus', m.get(-0));
})();
-
-
-(function TestSetForEachInvalidTypes() {
- assertThrows(function() {
- Set.prototype.set.forEach.call({});
- }, TypeError);
-
- var set = new Set();
- assertThrows(function() {
- set.forEach({});
- }, TypeError);
-})();
-
-
-(function TestSetForEach() {
- var set = new Set();
- set.add('a');
- set.add('b');
- set.add('c');
-
- var buffer = '';
- var receiver = {};
- set.forEach(function(v, k, s) {
- assertSame(v, k);
- assertSame(set, s);
- assertSame(this, receiver);
- buffer += v;
- if (v === 'a') {
- set.delete('b');
- set.add('d');
- set.add('e');
- set.add('f');
- } else if (v === 'c') {
- set.add('b');
- set.delete('e');
- }
- }, receiver);
-
- assertEquals('acdfb', buffer);
-})();
-
-
-(function TestSetForEachAddAtEnd() {
- var set = new Set();
- set.add('a');
- set.add('b');
-
- var buffer = '';
- set.forEach(function(v) {
- buffer += v;
- if (v === 'b') {
- set.add('c');
- }
- });
-
- assertEquals('abc', buffer);
-})();
-
-
-(function TestSetForEachDeleteNext() {
- var set = new Set();
- set.add('a');
- set.add('b');
- set.add('c');
-
- var buffer = '';
- set.forEach(function(v) {
- buffer += v;
- if (v === 'b') {
- set.delete('c');
- }
- });
-
- assertEquals('ab', buffer);
-})();
-
-
-(function TestSetForEachDeleteVisitedAndAddAgain() {
- var set = new Set();
- set.add('a');
- set.add('b');
- set.add('c');
-
- var buffer = '';
- set.forEach(function(v) {
- buffer += v;
- if (v === 'b') {
- set.delete('a');
- } else if (v === 'c') {
- set.add('a');
- }
- });
-
- assertEquals('abca', buffer);
-})();
-
-
-(function TestSetForEachClear() {
- var set = new Set();
- set.add('a');
- set.add('b');
- set.add('c');
-
- var buffer = '';
- set.forEach(function(v) {
- buffer += v;
- if (v === 'a') {
- set.clear();
- set.add('d');
- set.add('e');
- }
- });
-
- assertEquals('ade', buffer);
-})();
-
-
-(function TestSetForEachNested() {
- var set = new Set();
- set.add('a');
- set.add('b');
- set.add('c');
-
- var buffer = '';
- set.forEach(function(v) {
- buffer += v;
- set.forEach(function(v) {
- buffer += v;
- if (v === 'a') {
- set.delete('b');
- }
- });
- });
-
- assertEquals('aaccac', buffer);
-})();
-
-
-(function TestSetForEachEarlyExit() {
- var set = new Set();
- set.add('a');
- set.add('b');
- set.add('c');
-
- var buffer = '';
- var ex = {};
- try {
- set.forEach(function(v) {
- buffer += v;
- throw ex;
- });
- } catch (e) {
- assertEquals(ex, e);
- }
- assertEquals('a', buffer);
-})();
-
-
-(function TestSetForEachGC() {
- var set = new Set();
- for (var i = 0; i < 100; i++) {
- set.add(i);
- }
-
- var accumulated = 0;
- set.forEach(function(v) {
- accumulated += v;
- if (v % 10 === 0) {
- gc();
- }
- });
- assertEquals(4950, accumulated);
-})();
-
-(function TestMapForEachInvalidTypes() {
- assertThrows(function() {
- Map.prototype.map.forEach.call({});
- }, TypeError);
-
- var map = new Map();
- assertThrows(function() {
- map.forEach({});
- }, TypeError);
-})();
-
-
-(function TestMapForEach() {
- var map = new Map();
- map.set(0, 'a');
- map.set(1, 'b');
- map.set(2, 'c');
-
- var buffer = [];
- var receiver = {};
- map.forEach(function(v, k, m) {
- assertEquals(map, m);
- assertEquals(this, receiver);
- buffer.push(k, v);
- if (k === 0) {
- map.delete(1);
- map.set(3, 'd');
- map.set(4, 'e');
- map.set(5, 'f');
- } else if (k === 2) {
- map.set(1, 'B');
- map.delete(4);
- }
- }, receiver);
-
- assertArrayEquals([0, 'a', 2, 'c', 3, 'd', 5, 'f', 1, 'B'], buffer);
-})();
-
-
-(function TestMapForEachAddAtEnd() {
- var map = new Map();
- map.set(0, 'a');
- map.set(1, 'b');
-
- var buffer = [];
- map.forEach(function(v, k) {
- buffer.push(k, v);
- if (k === 1) {
- map.set(2, 'c');
- }
- });
-
- assertArrayEquals([0, 'a', 1, 'b', 2, 'c'], buffer);
-})();
-
-
-(function TestMapForEachDeleteNext() {
- var map = new Map();
- map.set(0, 'a');
- map.set(1, 'b');
- map.set(2, 'c');
-
- var buffer = [];
- map.forEach(function(v, k) {
- buffer.push(k, v);
- if (k === 1) {
- map.delete(2);
- }
- });
-
- assertArrayEquals([0, 'a', 1, 'b'], buffer);
-})();
-
-
-(function TestSetForEachDeleteVisitedAndAddAgain() {
- var map = new Map();
- map.set(0, 'a');
- map.set(1, 'b');
- map.set(2, 'c');
-
- var buffer = [];
- map.forEach(function(v, k) {
- buffer.push(k, v);
- if (k === 1) {
- map.delete(0);
- } else if (k === 2) {
- map.set(0, 'a');
- }
- });
-
- assertArrayEquals([0, 'a', 1, 'b', 2, 'c', 0, 'a'], buffer);
-})();
-
-
-(function TestMapForEachClear() {
- var map = new Map();
- map.set(0, 'a');
- map.set(1, 'b');
- map.set(2, 'c');
-
- var buffer = [];
- map.forEach(function(v, k) {
- buffer.push(k, v);
- if (k === 0) {
- map.clear();
- map.set(3, 'd');
- map.set(4, 'e');
- }
- });
-
- assertArrayEquals([0, 'a', 3, 'd', 4, 'e'], buffer);
-})();
-
-
-(function TestMapForEachNested() {
- var map = new Map();
- map.set(0, 'a');
- map.set(1, 'b');
- map.set(2, 'c');
-
- var buffer = [];
- map.forEach(function(v, k) {
- buffer.push(k, v);
- map.forEach(function(v, k) {
- buffer.push(k, v);
- if (k === 0) {
- map.delete(1);
- }
- });
- });
-
- assertArrayEquals([0, 'a', 0, 'a', 2, 'c', 2, 'c', 0, 'a', 2, 'c'], buffer);
-})();
-
-
-(function TestMapForEachEarlyExit() {
- var map = new Map();
- map.set(0, 'a');
- map.set(1, 'b');
- map.set(2, 'c');
-
- var buffer = [];
- var ex = {};
- try {
- map.forEach(function(v, k) {
- buffer.push(k, v);
- throw ex;
- });
- } catch (e) {
- assertEquals(ex, e);
- }
- assertArrayEquals([0, 'a'], buffer);
-})();
-
-
-(function TestMapForEachGC() {
- var map = new Map();
- for (var i = 0; i < 100; i++) {
- map.set(i, i);
- }
-
- var accumulated = 0;
- map.forEach(function(v) {
- accumulated += v;
- if (v % 10 === 0) {
- gc();
- }
- });
- assertEquals(4950, accumulated);
-})();
« no previous file with comments | « test/cctest/test-ordered-hash-table.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698