react-component / menu

React Menu
https://menu.react-component.now.sh/
MIT License
681 stars 246 forks source link

jsdom throw error on mode 'horizontal' #292

Open himself65 opened 5 years ago

himself65 commented 5 years ago

version: "7.4.23

react-test-renderer is 16.9.0

react: 16.9.0

typescript: 3.6.3

import React from 'react'
import renderer from 'react-test-renderer'
import { Menu } from 'antd'

describe('component: MainHeader', () => {
  it('base: should render success', () => {
    const component = renderer.create(
      <Menu
        mode='horizontal'
      />
    )
  })
})

error message

console.error node_modules/jsdom/lib/jsdom/virtual-console.js:29
    Error: Uncaught [TypeError: Failed to execute 'observe' on 'MutationObserver': parameter 1 is not of type 'Node'.]
        at reportException (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\helpers\runtime-script-errors.js:62:24)
        at innerInvokeEventListeners (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:331:9)
        at invokeEventListeners (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:266:3)
        at HTMLUnknownElementImpl._dispatch (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:212:11)
        at HTMLUnknownElementImpl.dispatchEvent (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:87:17)
        at HTMLUnknownElement.dispatchEvent (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\generated\EventTarget.js:144:23)
        at Object.invokeGuardedCallbackDev (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\react-test-renderer\cjs\react-test-renderer.development.js:11665:16)
        at invokeGuardedCallback (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\react-test-renderer\cjs\react-test-renderer.development.js:11718:31)
        at commitRootImpl (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\react-test-renderer\cjs\react-test-renderer.development.js:15012:9)
        at unstable_runWithPriority (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\react-test-renderer\node_modules\scheduler\cjs\scheduler.development.js:815:12) TypeError: Failed to execute 'observe' on 'MutationObserver': parameter 1 is not of type 'Node'.
        at convert (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\generated\Node.js:573:11)
        at MutationObserver.observe (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\generated\MutationObserver.js:41:16)
        at DOMWrap.componentDidMount (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\antd\node_modules\rc-menu\lib\DOMWrap.js:284:33)
        at commitLifeCycles (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\react-test-renderer\cjs\react-test-renderer.development.js:12078:22)
        at commitLayoutEffects (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\react-test-renderer\cjs\react-test-renderer.development.js:15276:7)
        at HTMLUnknownElement.callCallback (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\react-test-renderer\cjs\react-test-renderer.development.js:11616:14)
        at innerInvokeEventListeners (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:315:27)
        at invokeEventListeners (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:266:3)
        at HTMLUnknownElementImpl._dispatch (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:212:11)
        at HTMLUnknownElementImpl.dispatchEvent (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:87:17)

  console.error node_modules/react-test-renderer/cjs/react-test-renderer.development.js:11818
    The above error occurred in the <DOMWrap> component:
        in DOMWrap (created by SubPopupMenu)
        in SubPopupMenu (created by Connect(SubPopupMenu))
        in Connect(SubPopupMenu) (created by Menu)
        in Provider (created by Menu)
        in Menu (created by Context.Consumer)
        in InternalMenu (created by Context.Consumer)
        in Menu (at Header.test.tsx:10)

    Consider adding an error boundary to your tree to customize error handling behavior.
    Visit https://fb.me/react-error-boundaries to learn more about error boundaries.

TypeError: Failed to execute 'observe' on 'MutationObserver': parameter 1 is not of type 'Node'.

    at convert (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\generated\Node.js:573:11)
    at MutationObserver.observe (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\generated\MutationObserver.js:41:16)
    at DOMWrap.componentDidMount (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\antd\node_modules\rc-menu\lib\DOMWrap.js:284:33)
    at commitLifeCycles (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\react-test-renderer\cjs\react-test-renderer.development.js:12078:22)
    at commitLayoutEffects (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\react-test-renderer\cjs\react-test-renderer.development.js:15276:7)
    at HTMLUnknownElement.callCallback (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\react-test-renderer\cjs\react-test-renderer.development.js:11616:14)
    at innerInvokeEventListeners (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:315:27)
    at invokeEventListeners (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:266:3)
    at HTMLUnknownElementImpl._dispatch (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:212:11)
    at HTMLUnknownElementImpl.dispatchEvent (C:\Users\76128\Desktop\work\hyraki-fe\node_modules\jsdom\lib\jsdom\living\events\EventTarget-impl.js:87:17)
himself65 commented 5 years ago

https://github.com/react-component/menu/blob/5457b8dd361a3fc1c3fb8796a2d1d9d568e1e557/src/DOMWrap.tsx#L56

himself65 commented 5 years ago

same problem, see https://github.com/react-component/menu/issues/215