35 lines
		
	
	
		
			735 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			35 lines
		
	
	
		
			735 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | 'use strict'; | ||
|  | 
 | ||
|  | var GetIntrinsic = require('../GetIntrinsic'); | ||
|  | 
 | ||
|  | var test = require('tape'); | ||
|  | var forEach = require('foreach'); | ||
|  | var debug = require('object-inspect'); | ||
|  | 
 | ||
|  | var v = require('./helpers/values'); | ||
|  | 
 | ||
|  | test('export', function (t) { | ||
|  | 	t.equal(typeof GetIntrinsic, 'function', 'it is a function'); | ||
|  | 	t.equal(GetIntrinsic.length, 2, 'function has length of 2'); | ||
|  | 
 | ||
|  | 	t.end(); | ||
|  | }); | ||
|  | 
 | ||
|  | test('throws', function (t) { | ||
|  | 	t['throws']( | ||
|  | 		function () { GetIntrinsic('not an intrinsic'); }, | ||
|  | 		SyntaxError, | ||
|  | 		'nonexistent intrinsic throws a syntax error' | ||
|  | 	); | ||
|  | 
 | ||
|  | 	forEach(v.nonBooleans, function (nonBoolean) { | ||
|  | 		t['throws']( | ||
|  | 			function () { GetIntrinsic('%', nonBoolean); }, | ||
|  | 			TypeError, | ||
|  | 			debug(nonBoolean) + ' is not a Boolean' | ||
|  | 		); | ||
|  | 	}); | ||
|  | 
 | ||
|  | 	t.end(); | ||
|  | }); |