validate-symbol.js 616 B

12345678910111213141516171819
  1. 'use strict';
  2. var SymbolPoly = require('../polyfill');
  3. module.exports = function (t, a) {
  4. var symbol;
  5. a.throws(function () { t(undefined); }, TypeError, "Undefined");
  6. a.throws(function () { t(null); }, TypeError, "Null");
  7. a.throws(function () { t(true); }, TypeError, "Primitive");
  8. a.throws(function () { t('raz'); }, TypeError, "String");
  9. a.throws(function () { t({}); }, TypeError, "Object");
  10. a.throws(function () { t([]); }, TypeError, "Array");
  11. if (typeof Symbol !== 'undefined') {
  12. symbol = Symbol();
  13. a(t(symbol), symbol, "Native");
  14. }
  15. symbol = SymbolPoly();
  16. a(t(symbol), symbol, "Polyfill");
  17. };