Skip to content
Snippets Groups Projects
Commit 0597e9e9 authored by Leonardo Balter's avatar Leonardo Balter
Browse files

Remove duplicated Map tests

parent 7d0c8638
No related branches found
No related tags found
No related merge requests found
// Copyright (C) 2014 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
description: >
The method should return a valid iterator with the context as the
IteratedObject.
es6id: 23.1.3.4
---*/
var map = new Map();
map.set(1, 11);
map.set(2, 22);
map.set(3, 33);
var iterator = map.entries();
var result;
result = iterator.next();
assert.sameValue(result.value[0], 1, 'First result `value` (map key)');
assert.sameValue(result.value[1], 11, 'First result `value` (map value)');
assert.sameValue(result.value.length, 2, 'First result `value` (length)');
assert.sameValue(result.done, false, 'First result `done` flag');
result = iterator.next();
assert.sameValue(result.value[0], 2, 'Second result `value` (map key)');
assert.sameValue(result.value[1], 22, 'Second result `value` (map value)');
assert.sameValue(result.value.length, 2, 'Second result `value` (length)');
assert.sameValue(result.done, false, 'Second result `done` flag');
result = iterator.next();
assert.sameValue(result.value[0], 3, 'Third result `value` (map key)');
assert.sameValue(result.value[1], 33, 'Third result `value` (map value)');
assert.sameValue(result.value.length, 2, 'Third result `value` (length)');
assert.sameValue(result.done, false, 'Third result `done` flag');
result = iterator.next();
assert.sameValue(result.value, undefined, 'Exhausted result `value`');
assert.sameValue(result.done, true, 'Exhausted result `done` flag');
result = iterator.next();
assert.sameValue(
result.value, undefined, 'Exhausted result `value` (repeated request)'
);
assert.sameValue(
result.done, true, 'Exhausted result `done` flag (repeated request)'
);
// Copyright (C) 2014 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
description: >
If the context does not have a [[MapData]] internal slot, throw a
TypeError exception as per 23.1.5.1.
es6id: 23.1.3.4
---*/
assert.throws(TypeError, function() {
Map.prototype.entries.call({});
});
// Copyright (C) 2014 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
description: >
The method should return a valid iterator with the context as the
IteratedObject.
es6id: 23.1.3.8
---*/
var map = new Map();
map.set(1, 11);
map.set(2, 22);
map.set(3, 33);
var iterator = map.keys();
var result;
result = iterator.next();
assert.sameValue(result.value, 1, 'First result `value`');
assert.sameValue(result.done, false, 'First result `done` flag');
result = iterator.next();
assert.sameValue(result.value, 2, 'Second result `value`');
assert.sameValue(result.done, false, 'Second result `done` flag');
result = iterator.next();
assert.sameValue(result.value, 3, 'Third result `value`');
assert.sameValue(result.done, false, 'Third result `done` flag');
result = iterator.next();
assert.sameValue(result.value, undefined, 'Exhausted result `value`');
assert.sameValue(result.done, true, 'Exhausted result `done` flag');
result = iterator.next();
assert.sameValue(
result.value, undefined, 'Exhausted result `value` (repeated request)'
);
assert.sameValue(
result.done, true, 'Exhausted result `done` flag (repeated request)'
);
// Copyright (C) 2014 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
description: >
If the context does not have a [[MapData]] internal slot, throw a
TypeError exception as per 23.1.5.1.
es6id: 23.1.3.8
---*/
assert.throws(TypeError, function() {
Map.prototype.keys.call({});
});
// Copyright (C) 2014 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
description: >
When an item is added to the map after the iterator is created but before
the iterator is "done" (as defined by 23.1.5.2.1), the new item should be
accessible via iteration. When an item is added to the map after the
iterator is "done", the new item should not be accessible via iteration.
es6id: 23.1.3.11
---*/
var map = new Map();
map.set(1, 11);
map.set(2, 22);
var iterator = map.values();
var result;
result = iterator.next();
assert.sameValue(result.value, 11, 'First result `value`');
assert.sameValue(result.done, false, 'First result `done` flag');
map.set(3, 33);
result = iterator.next();
assert.sameValue(result.value, 22, 'Second result `value`');
assert.sameValue(result.done, false, 'Second result `done` flag');
result = iterator.next();
assert.sameValue(result.value, 33, 'Third result `value`');
assert.sameValue(result.done, false, 'Third result `done` flag');
result = iterator.next();
assert.sameValue(result.value, undefined, 'Exhausted result `value`');
assert.sameValue(result.done, true, 'Exhausted result `done` flag');
map.set(4, 44);
result = iterator.next();
assert.sameValue(
result.value, undefined, 'Exhausted result `value` (repeated request)'
);
assert.sameValue(
result.done, true, 'Exhausted result `done` flag (repeated request)'
);
// Copyright (C) 2014 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
description: >
The method should return a valid iterator with the context as the
IteratedObject.
es6id: 23.1.3.11
---*/
var map = new Map();
map.set(1, 11);
map.set(2, 22);
map.set(3, 33);
var iterator = map.values();
var result;
result = iterator.next();
assert.sameValue(result.value, 11, 'First result `value`');
assert.sameValue(result.done, false, 'First result `done` flag');
result = iterator.next();
assert.sameValue(result.value, 22, 'Second result `value`');
assert.sameValue(result.done, false, 'Second result `done` flag');
result = iterator.next();
assert.sameValue(result.value, 33, 'Third result `value`');
assert.sameValue(result.done, false, 'Third result `done` flag');
result = iterator.next();
assert.sameValue(result.value, undefined, 'Exhausted result `value`');
assert.sameValue(result.done, true, 'Exhausted result `done` flag');
result = iterator.next();
assert.sameValue(
result.value, undefined, 'Exhausted result `value` (repeated request)'
);
assert.sameValue(
result.done, true, 'Exhausted result `done` flag (repeated request)'
);
// Copyright (C) 2014 the V8 project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
description: >
If the context does not have a [[MapData]] internal slot, throw a
TypeError exception as per 23.1.5.1.
es6id: 23.1.3.4
---*/
assert.throws(TypeError, function() {
Map.prototype.values.call({});
});
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment