| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 | 
							- 'use strict';
 
- var test = require('tape');
 
- var inspect = require('object-inspect');
 
- var is = require('object-is');
 
- var forEach = require('for-each');
 
- var v = require('es-value-fixtures');
 
- var unboxPrimitive = require('..');
 
- test('primitives', function (t) {
 
- 	forEach([null, undefined], function (nullValue) {
 
- 		t['throws'](
 
- 			// @ts-expect-error
 
- 			function () { unboxPrimitive(nullValue); },
 
- 			TypeError,
 
- 			inspect(nullValue) + ' is not a primitive'
 
- 		);
 
- 	});
 
- 	// eslint-disable-next-line no-extra-parens
 
- 	forEach(/** @type {typeof v.nonNullPrimitives} */ ([].concat(
 
- 		// @ts-expect-error TS sucks with concat
 
- 		v.nonNullPrimitives,
 
- 		v.zeroes,
 
- 		v.infinities,
 
- 		NaN
 
- 	)), function (primitive) {
 
- 		var obj = Object(primitive);
 
- 		t.ok(
 
- 			is(unboxPrimitive(obj), primitive),
 
- 			inspect(obj) + 'unboxes to ' + inspect(primitive)
 
- 		);
 
- 	});
 
- 	t.end();
 
- });
 
- test('objects', function (t) {
 
- 	// eslint-disable-next-line no-extra-parens
 
- 	forEach(/** @type {typeof v.objects} */ (/** @type {unknown} */ ([].concat(
 
- 		// @ts-expect-error TS sucks with concat
 
- 		v.objects,
 
- 		{},
 
- 		[],
 
- 		function () {},
 
- 		/a/g,
 
- 		new Date()
 
- 	))), function (object) {
 
- 		t['throws'](
 
- 			// @ts-expect-error
 
- 			function () { unboxPrimitive(object); },
 
- 			TypeError,
 
- 			inspect(object) + ' is not a primitive'
 
- 		);
 
- 	});
 
- 	t.end();
 
- });
 
 
  |