'use strict' /* eslint-env mocha */ /* eslint no-proto: 0 */ var assert = require('assert') var setPrototypeOf = require('..') describe('setProtoOf(obj, proto)', function () { it('should merge objects', function () { var obj = { a: 1, b: 2 } var proto = { b: 3, c: 4 } var mergeObj = setPrototypeOf(obj, proto) if (Object.getPrototypeOf) { assert.strictEqual(Object.getPrototypeOf(obj), proto) } else if ({ __proto__: [] } instanceof Array) { assert.strictEqual(obj.__proto__, proto) } else { assert.strictEqual(obj.a, 1) assert.strictEqual(obj.b, 2) assert.strictEqual(obj.c, 4) } assert.strictEqual(mergeObj, obj) }) })