123456789101112131415161718192021222324252627282930313233343536 |
- load("test-common.js");
- try {
- assert(Object.setPrototypeOf.length === 2);
- assertThrowsError(() => {
- Object.setPrototypeOf();
- }, {
- error: TypeError,
- message: "Object.setPrototypeOf requires at least two arguments",
- });
- assertThrowsError(() => {
- Object.setPrototypeOf({}, "foo");
- }, {
- error: TypeError,
- message: "Prototype must be an object or null"
- });
- o = {};
- p = {};
- assert(Object.setPrototypeOf(o, p) === o);
- Object.preventExtensions(o);
- assertThrowsError(() => {
- Object.setPrototypeOf(o, {});
- }, {
- error: TypeError,
- message: "Object's [[SetPrototypeOf]] method returned false"
- });
- assert(Object.setPrototypeOf(o, p) === o);
- console.log("PASS");
- } catch (e) {
- console.log("FAIL: " + e);
- }
|