|
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ |
|
2 |
|
3 /* |
|
4 * Any copyright is dedicated to the Public Domain. |
|
5 * http://creativecommons.org/licenses/publicdomain/ |
|
6 */ |
|
7 |
|
8 function strict() { 'use strict'; return this; } |
|
9 function lenient() { return this; } |
|
10 var obj = {}; |
|
11 |
|
12 assertEq(strict.bind(true)(), true); |
|
13 assertEq(strict.bind(42)(), 42); |
|
14 assertEq(strict.bind("")(), ""); |
|
15 assertEq(strict.bind(null)(), null); |
|
16 assertEq(strict.bind(undefined)(), undefined); |
|
17 assertEq(strict.bind(obj)(), obj); |
|
18 |
|
19 assertEq(lenient.bind(true)() instanceof Boolean, true); |
|
20 assertEq(lenient.bind(42)() instanceof Number, true); |
|
21 assertEq(lenient.bind("")() instanceof String, true); |
|
22 assertEq(lenient.bind(null)(), this); |
|
23 assertEq(lenient.bind(undefined)(), this); |
|
24 assertEq(lenient.bind(obj)(), obj); |
|
25 |
|
26 reportCompare(true, true); |