document.createDocumentFragment is not a function
01binary opened this issue · 2 comments
01binary commented
Getting the following:
TypeError: document.createDocumentFragment is not a function
at RenderContext (node_modules/preact-render-spy/src/preact-render-spy.js:345:46)
at deep (node_modules/preact-render-spy/src/preact-render-spy.js:373:49)
at Context.<anonymous> (test/components/Burnout.tests.js:12:13)
My mocha/chai setup is:
import chai from 'chai';
import assertJsx from 'preact-jsx-chai';
import 'undom/register';
import 'babel-polyfill';
import 'ignore-styles';
I am using undom as you can see - what dom do you expect?
"devDependencies": {
"babel-plugin-module-resolver": "^2.7.1",
"babel-polyfill": "^6.26.0",
"babel-preset-env": "^1.6.0",
"babel-register": "^6.26.0",
"chai": "^4.1.2",
"eslint": "^4.6.1",
"eslint-config-synacor": "^1.1.1",
"if-env": "^1.0.0",
"ignore-styles": "^5.0.1",
"mocha": "^3.5.0",
"node-sass": "^4.5.3",
"preact-cli": "^1.4.1",
"preact-jsx-chai": "^2.2.1",
"preact-render-spy": "^1.0.0-rc.8",
"sass-lint": "^1.11.1",
"sass-loader": "^6.0.6",
"undom": "^0.3.3"
},
"dependencies": {
"preact": "^8.2.5",
"preact-compat": "^3.17.0",
"react": "npm:preact-compat",
"recompose": "^0.25.0"
}
01binary commented
Found cedf32f but it has not been published to npm?
My preact-render-spy.js inside node_modules does not have that option you added. Otherwise the following would work:
import 'undom/register';
import { config } from 'preact-render-spy';
config.createFragment = () => global.document.createElement('#fragment');
01binary commented
Got it working with preact slack suggestion from Jason Miller:
import 'undom/register';
global.document.createDocumentFragment = () =>
global.document.createElement('#fragment');