diff --git a/src/jsutils/__tests__/inspect-test.js b/src/jsutils/__tests__/inspect-test.js index bd2e5ee0ee9..66b0609b58f 100644 --- a/src/jsutils/__tests__/inspect-test.js +++ b/src/jsutils/__tests__/inspect-test.js @@ -177,5 +177,10 @@ describe('inspect', () => { (Foo.prototype: any)[Symbol.toStringTag] = 'Bar'; expect(inspect([[new Foo()]])).to.equal('[[[Bar]]]'); + + const objectWithoutClassName = new (function() { + this.foo = 1; + })(); + expect(inspect([[objectWithoutClassName]])).to.equal('[[[Object]]]'); }); }); diff --git a/src/jsutils/inspect.js b/src/jsutils/inspect.js index 0e444898a91..49e0d8babc3 100644 --- a/src/jsutils/inspect.js +++ b/src/jsutils/inspect.js @@ -117,7 +117,7 @@ function getObjectTag(object) { if (tag === 'Object' && typeof object.constructor === 'function') { const name = object.constructor.name; - if (typeof name === 'string') { + if (typeof name === 'string' && name !== '') { return name; } }