Demo for query storing
Change-Id: I947bcac841992c3f6cfd01ab337c265b0d01cb70
diff --git a/node_modules/unbox-primitive/test/index.js b/node_modules/unbox-primitive/test/index.js
new file mode 100644
index 0000000..73688ac
--- /dev/null
+++ b/node_modules/unbox-primitive/test/index.js
@@ -0,0 +1,59 @@
+'use strict';
+
+var test = require('tape');
+var inspect = require('object-inspect');
+var is = require('object-is');
+var forEach = require('for-each');
+var hasSymbols = require('has-symbols')();
+var hasBigInts = require('has-bigints')();
+
+var unboxPrimitive = require('..');
+
+var debug = function (v, m) { return inspect(v) + ' ' + m; };
+
+test('primitives', function (t) {
+ var primitives = [
+ true,
+ false,
+ '',
+ 'foo',
+ 42,
+ NaN,
+ Infinity,
+ 0
+ ];
+ if (hasSymbols) {
+ primitives.push(Symbol(), Symbol.iterator, Symbol('f'));
+ }
+ if (hasBigInts) {
+ primitives.push(BigInt(42), BigInt(0));
+ }
+ forEach(primitives, function (primitive) {
+ var obj = Object(primitive);
+ t.ok(
+ is(unboxPrimitive(obj), primitive),
+ debug(obj, 'unboxes to ' + inspect(primitive))
+ );
+ });
+
+ t.end();
+});
+
+test('objects', function (t) {
+ var objects = [
+ {},
+ [],
+ function () {},
+ /a/g,
+ new Date()
+ ];
+ forEach(objects, function (object) {
+ t['throws'](
+ function () { unboxPrimitive(object); },
+ TypeError,
+ debug(object, 'is not a primitive')
+ );
+ });
+
+ t.end();
+});