diff --git a/src/jsutils/__tests__/inspect-test.js b/src/jsutils/__tests__/inspect-test.js index 140e91c2bc..d1bfe89d25 100644 --- a/src/jsutils/__tests__/inspect-test.js +++ b/src/jsutils/__tests__/inspect-test.js @@ -86,27 +86,6 @@ describe('inspect', () => { expect(inspect(map)).to.equal('{ a: true, b: null }'); }); - it('detect circular objects', () => { - const obj = {}; - obj.self = obj; - obj.deepSelf = { self: obj }; - - expect(inspect(obj)).to.equal( - '{ self: [Circular], deepSelf: { self: [Circular] } }', - ); - - const array = []; - array[0] = array; - array[1] = [array]; - - expect(inspect(array)).to.equal('[[Circular], [[Circular]]]'); - - const mixed = { array: [] }; - mixed.array[0] = mixed; - - expect(inspect(mixed)).to.equal('{ array: [[Circular]] }'); - }); - it('custom inspect', () => { const object = { inspect() { @@ -163,6 +142,37 @@ describe('inspect', () => { expect(inspect(object)).to.equal('Hello World!'); }); + it('detect circular objects', () => { + const obj = {}; + obj.self = obj; + obj.deepSelf = { self: obj }; + + expect(inspect(obj)).to.equal( + '{ self: [Circular], deepSelf: { self: [Circular] } }', + ); + + const array = []; + array[0] = array; + array[1] = [array]; + + expect(inspect(array)).to.equal('[[Circular], [[Circular]]]'); + + const mixed = { array: [] }; + mixed.array[0] = mixed; + + expect(inspect(mixed)).to.equal('{ array: [[Circular]] }'); + + const customA = { + inspect: () => customB, + }; + + const customB = { + inspect: () => customA, + }; + + expect(inspect(customA)).to.equal('[Circular]'); + }); + it('Use class names for the shortform of an object', () => { class Foo { foo: string;