| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 | 
							- 'use strict';
 
- var test = require('tape');
 
- var inspect = require('object-inspect');
 
- var forEach = require('for-each');
 
- var v = require('es-value-fixtures');
 
- var whichBoxedPrimitive = require('../');
 
- var objects = [
 
- 	/a/g,
 
- 	new Date(),
 
- 	function () {},
 
- 	[],
 
- 	{}
 
- ].concat(v.objects);
 
- test('isBoxedPrimitive', function (t) {
 
- 	t.test('unboxed primitives', function (st) {
 
- 		forEach(v.primitives, function (primitive) {
 
- 			st.equal(null, whichBoxedPrimitive(primitive), inspect(primitive) + ' is a primitive, but not a boxed primitive');
 
- 		});
 
- 		st.end();
 
- 	});
 
- 	t.test('boxed primitives', function (st) {
 
- 		forEach(v.primitives, function (primitive) {
 
- 			if (primitive != null) { // eslint-disable-line eqeqeq
 
- 				var boxed = Object(primitive);
 
- 				var expected = boxed.constructor.name;
 
- 				st.equal(typeof expected, 'string', 'expected is string');
 
- 				st.equal(whichBoxedPrimitive(boxed), expected, inspect(boxed) + ' is a boxed primitive: ' + expected);
 
- 			}
 
- 		});
 
- 		st.end();
 
- 	});
 
- 	t.test('non-primitive objects', function (st) {
 
- 		forEach(objects, function (object) {
 
- 			st.equal(undefined, whichBoxedPrimitive(object), inspect(object) + ' is not a primitive, boxed or otherwise');
 
- 		});
 
- 		st.end();
 
- 	});
 
- 	t.end();
 
- });
 
 
  |