|
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ |
|
2 /* |
|
3 * Any copyright is dedicated to the Public Domain. |
|
4 * http://creativecommons.org/licenses/publicdomain/ |
|
5 */ |
|
6 |
|
7 var expect = true; |
|
8 var actual; |
|
9 |
|
10 var checkCaller = function(me) { |
|
11 var f = me['doThing']; |
|
12 delete MyObj.prototype['doThing']; |
|
13 var caller = arguments.callee.caller; |
|
14 var callerIsMethod = (f === caller); |
|
15 actual = callerIsMethod; |
|
16 }; |
|
17 |
|
18 var MyObj = function() { |
|
19 }; |
|
20 |
|
21 MyObj.prototype.doThing = function() { |
|
22 checkCaller(this); |
|
23 }; |
|
24 |
|
25 (new MyObj()).doThing(); |
|
26 |
|
27 reportCompare(expect, actual, "ok"); |