| 'use strict'; |
| |
| var test = require('tape'); |
| var inspect = require('object-inspect'); |
| var forEach = require('for-each'); |
| |
| var isWeakRef = require('..'); |
| |
| test('isWeakRef', function (t) { |
| t.equal(typeof isWeakRef, 'function', 'is a function'); |
| |
| var nonWeakRefs = [undefined, null, true, false, 42, 0, Infinity, NaN, /a/g, function () {}, {}, []]; |
| forEach(nonWeakRefs, function (nonWeakRef) { |
| t.equal(isWeakRef(nonWeakRef), false, inspect(nonWeakRef) + ' is not a WeakRef'); |
| }); |
| |
| t.test('actual WeakRefs', { skip: typeof WeakRef === 'undefined' }, function (st) { |
| var ref = new WeakRef({}); |
| |
| st.equal(isWeakRef(ref), true, inspect(ref) + ' is a WeakRef'); |
| |
| st.end(); |
| }); |
| |
| t.end(); |
| }); |