diff options
Diffstat (limited to 'test/built-ins/Function/prototype/call/S15.3.4.4_A16.js')
-rw-r--r-- | test/built-ins/Function/prototype/call/S15.3.4.4_A16.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/test/built-ins/Function/prototype/call/S15.3.4.4_A16.js b/test/built-ins/Function/prototype/call/S15.3.4.4_A16.js new file mode 100644 index 000000000..96e1a1623 --- /dev/null +++ b/test/built-ins/Function/prototype/call/S15.3.4.4_A16.js @@ -0,0 +1,27 @@ +// Copyright 2011 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +info: If IsCallable(func) is false, then throw a TypeError exception. +es5id: 15.3.4.4_A16 +description: > + A RegExp is not a function, but it may be callable. Iff it is, + it's typeof should be 'function', in which case call should accept + it as a valid this value. +includes: [$FAIL.js] +---*/ + +var re = (/x/); +if (typeof re === 'function') { + Function.prototype.call.call(re, undefined, 'x'); +} else { + try { + Function.prototype.bind.call(re, undefined); + $FAIL('#1: If IsCallable(func) is false, ' + + 'then (bind should) throw a TypeError exception'); + } catch (e) { + if (!(e instanceof TypeError)) { + $ERROR('#1: TypeError expected. Actual: ' + e); + } + } +} |