20 lines
		
	
	
		
			603 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			603 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
'use strict';
 | 
						|
 | 
						|
var implementation = require('../implementation');
 | 
						|
var callBind = require('call-bind');
 | 
						|
var test = require('tape');
 | 
						|
var hasStrictMode = require('has-strict-mode')();
 | 
						|
var runTests = require('./tests');
 | 
						|
 | 
						|
test('as a function', function (t) {
 | 
						|
	t.test('bad first arg/receiver', { skip: !hasStrictMode }, function (st) {
 | 
						|
		st['throws'](function () { implementation(undefined); }, TypeError, 'undefined is not an object');
 | 
						|
		st['throws'](function () { implementation(null); }, TypeError, 'null is not an object');
 | 
						|
		st.end();
 | 
						|
	});
 | 
						|
 | 
						|
	runTests(callBind(implementation, Object), t);
 | 
						|
 | 
						|
	t.end();
 | 
						|
});
 |