TypeError: Cannot read property 'onBlur' of undefined with jest and @testing-library/react
lougroshek opened this issue · comments
Test has no assertions, just renders a component that renders this library's text field component. I see the history in #172, noting here in case someone else encounters it before I have time to explore further.
return (
<TextField
className={clsx(parentClasses, classes.textfield)}
size="small"
{...rest}
/>
)
test('Renders MMMTextField', () => {
render(
<ApolloWrapper>
<Router>
<ThemeProvider theme={theme}>
<MMMTextField />
</ThemeProvider>
</Router>
</ApolloWrapper>
)
})
Error: Uncaught [TypeError: Cannot read property 'onBlur' of undefined]
at reportException (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/helpers/runtime-script-errors.js:66:24)
at innerInvokeEventListeners (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:341:9)
at invokeEventListeners (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:274:3)
at HTMLUnknownElementImpl._dispatch (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:221:9)
at HTMLUnknownElementImpl.dispatchEvent (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:94:17)
at HTMLUnknownElement.dispatchEvent (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/generated/EventTarget.js:231:34)
at Object.invokeGuardedCallbackDev (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:3994:16)
at invokeGuardedCallback (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:4056:31)
at beginWork$1 (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:23964:7)
at performUnitOfWork (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:22779:12) TypeError: Cannot read property 'onBlur' of undefined
at fieldToTextField (/Users/lougroshek/STAPortal/STA.Web/node_modules/formik-material-ui/src/TextField.tsx:13:31)
at TextField (/Users/lougroshek/STAPortal/STA.Web/node_modules/formik-material-ui/src/TextField.tsx:38:28)
at renderWithHooks (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:14985:18)
at mountIndeterminateComponent (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:17811:13)
at beginWork (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:19049:16)
at HTMLUnknownElement.callCallback (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:3945:14)
at HTMLUnknownElement.callTheUserObjectsOperation (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/generated/EventListener.js:26:30)
at innerInvokeEventListeners (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:338:25)
at invokeEventListeners (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:274:3)
at HTMLUnknownElementImpl._dispatch (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:221:9)
at HTMLUnknownElementImpl.dispatchEvent (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:94:17)
at HTMLUnknownElement.dispatchEvent (/Users/lougroshek/STAPortal/STA.Web/node_modules/jsdom/lib/jsdom/living/generated/EventTarget.js:231:34)
at Object.invokeGuardedCallbackDev (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:3994:16)
at invokeGuardedCallback (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:4056:31)
at beginWork$1 (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:23964:7)
at performUnitOfWork (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:22779:12)
at workLoopSync (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:22707:5)
at renderRootSync (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:22670:7)
at performSyncWorkOnRoot (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:22293:18)
at scheduleUpdateOnFiber (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:21881:7)
at updateContainer (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:25482:3)
at /Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:26021:7
at unbatchedUpdates (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:22431:12)
at legacyRenderSubtreeIntoContainer (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:26020:5)
at Object.render (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:26103:10)
at /Users/lougroshek/STAPortal/STA.Web/node_modules/@testing-library/react/dist/pure.js:101:25
at batchedUpdates$1 (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom.development.js:22380:12)
at act (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-dom/cjs/react-dom-test-utils.development.js:1042:14)
at render (/Users/lougroshek/STAPortal/STA.Web/node_modules/@testing-library/react/dist/pure.js:97:26)
at Object.<anonymous> (/Users/lougroshek/STAPortal/STA.Web/src/sta/components/MMMTextField/MMMTextField.test.js:25:3)
at Promise.then.completed (/Users/lougroshek/STAPortal/STA.Web/node_modules/jest-circus/build/utils.js:276:28)
at new Promise (<anonymous>)
at callAsyncCircusFn (/Users/lougroshek/STAPortal/STA.Web/node_modules/jest-circus/build/utils.js:216:10)
at _callCircusTest (/Users/lougroshek/STAPortal/STA.Web/node_modules/jest-circus/build/run.js:212:40)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at _runTest (/Users/lougroshek/STAPortal/STA.Web/node_modules/jest-circus/build/run.js:149:3)
at _runTestsForDescribeBlock (/Users/lougroshek/STAPortal/STA.Web/node_modules/jest-circus/build/run.js:63:9)
at run (/Users/lougroshek/STAPortal/STA.Web/node_modules/jest-circus/build/run.js:25:3)
at runAndTransformResultsToJestFormat (/Users/lougroshek/STAPortal/STA.Web/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapterInit.js:176:21)
at jestAdapter (/Users/lougroshek/STAPortal/STA.Web/node_modules/jest-circus/build/legacy-code-todo-rewrite/jestAdapter.js:109:19)
at runTestInternal (/Users/lougroshek/STAPortal/STA.Web/node_modules/jest-runner/build/runTest.js:380:16)
at runTest (/Users/lougroshek/STAPortal/STA.Web/node_modules/jest-runner/build/runTest.js:472:34)
at Object.worker (/Users/lougroshek/STAPortal/STA.Web/node_modules/jest-runner/build/testWorker.js:133:12)
at VirtualConsole.<anonymous> (node_modules/jsdom/lib/jsdom/virtual-console.js:29:45)
at reportException (node_modules/jsdom/lib/jsdom/living/helpers/runtime-script-errors.js:70:28)
at innerInvokeEventListeners (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:341:9)
at invokeEventListeners (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:274:3)
at HTMLUnknownElementImpl._dispatch (node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:221:9)
[2mnode_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:94:17)
console.error
The above error occurred in the <FormikMaterialUITextField> component:
at TextField (/Users/lougroshek/STAPortal/STA.Web/node_modules/formik-material-ui/src/TextField.tsx:37:37)
at MMMTextField (/Users/lougroshek/STAPortal/STA.Web/src/sta/components/MMMTextField/MMMTextField.js:7:36)
at ThemeProvider (/Users/lougroshek/STAPortal/STA.Web/node_modules/@material-ui/styles/ThemeProvider/ThemeProvider.js:48:24)
at Router (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-router/cjs/react-router.js:99:30)
at BrowserRouter (/Users/lougroshek/STAPortal/STA.Web/node_modules/react-router-dom/cjs/react-router-dom.js:67:35)
at ApolloProvider (/Users/lougroshek/STAPortal/STA.Web/node_modules/@apollo/client/react/context/ApolloProvider.js:5:21)
at ApolloWrapper (/Users/lougroshek/STAPortal/STA.Web/src/sta/apollo/index.js:37:33)
"formik": "^2.2.9",
"formik-material-ui": "^3.0.1",
@lougroshek I would just be guessing without a full example. I dont see a Formik container anywhere in the snippets?
I created a test and could not reproduce the error. Please create a full reproduction