summaryrefslogtreecommitdiff
path: root/tools/eslint/node_modules/escope/node_modules/es6-weak-map/test/polyfill.js
blob: 1a4885be8354e026ef79474cf0e1ca6227a967ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
'use strict';

module.exports = function (T, a) {
	var x = {}, y = {}, z = {}, arr = [[x, 'raz'], [y, 'dwa']], map = new T(arr);

	a(map instanceof T, true, "WeakMap");
	a(map.has(x), true, "Has: true");
	a(map.get(x), 'raz', "Get: contains");
	a(map.has(z), false, "Has: false");
	a(map.get(z), undefined, "Get: doesn't contain");
	a(map.set(z, 'trzy'), map, "Set: return");
	a(map.has(z), true, "Add");
	a(map.delete({}), false, "Delete: false");

	a(map.delete(x), true, "Delete: true");
	a(map.get(x), undefined, "Get: after delete");
	a(map.has(x), false, "Has: after delete");

	a(map.has(y), true, "Has: pre clear");
	map.clear();
	a(map.has(y), false, "Has: after clear");
};