| /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ |
| /* This Source Code Form is subject to the terms of the Mozilla Public |
| * License, v. 2.0. If a copy of the MPL was not distributed with this |
| * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
| |
| |
| /** |
| File Name: instanceof-003.js |
| ECMA Section: |
| Description: http://bugzilla.mozilla.org/show_bug.cgi?id=7635 |
| |
| js> function Foo() {} |
| js> theproto = {}; |
| [object Object] |
| js> Foo.prototype = theproto |
| [object Object] |
| js> theproto instanceof Foo |
| true |
| |
| I think this should be 'false' |
| |
| |
| Author: christine@netscape.com |
| Date: 12 november 1997 |
| |
| Modified to conform to ECMA3 |
| https://bugzilla.mozilla.org/show_bug.cgi?id=281606 |
| */ |
| var SECTION = "instanceof-003"; |
| var VERSION = "ECMA_2"; |
| var TITLE = "instanceof operator"; |
| var BUGNUMBER ="7635"; |
| |
| startTest(); |
| |
| function Foo() {}; |
| theproto = {}; |
| Foo.prototype = theproto; |
| |
| AddTestCase( |
| "function Foo() = {}; theproto = {}; Foo.prototype = theproto; " + |
| "theproto instanceof Foo", |
| false, |
| theproto instanceof Foo ); |
| |
| |
| var o = {}; |
| |
| // https://bugzilla.mozilla.org/show_bug.cgi?id=281606 |
| try |
| { |
| AddTestCase( |
| "o = {}; o instanceof o", |
| "error", |
| o instanceof o ); |
| } |
| catch(e) |
| { |
| AddTestCase( |
| "o = {}; o instanceof o", |
| "error", |
| "error" ); |
| } |
| |
| test(); |