Would you like fix this? :)
I can give it a shot next week.
What's the cause, and is it related to #4603 ?
@cowboyd it actually may be related
@itaied246 any idea what a possible solution might be?
I have search for the cause for a while, and there is a weird behavior for Symbol.
JSON.stringify ignores Symbol keys. Also Object.keys ignore Symbol.
So, any comparison for keys will skip, and result this error.
Check out this.
lodash isEqual function supports Symbol, so we might use this instead of the built in jest equality for Symbol.
What do you think?
@itaied246 Jest uses pretty-format to Stringify any value.
Looks like this isn't a bug in the Jest latest version
jest - v21.2.1, node - v8.8.1

This problem seems to persist with expect.objectContaining:
expect({ x: 42}).toEqual(expect.objectContaining({ [Symbol('asd')]: expect.anything() }))
passes, while it shouldn't
The issue in the OP is fixed, and the other issue can be tracked at #6466
Most helpful comment
This problem seems to persist with
expect.objectContaining:passes, while it shouldn't