@samitouri / QOS-React-2 / commits / 73d9d286ee

Fix EnterLeaveEventPlugin Test in jsdom

This is a follow-up to #803. In jsdom (used for internal testing), `<iframe>` does not properly create a default document. This makes the `EnterLeaveEventPlugin` tests work for jsdom, too. Open source does not need this because it uses PhantomJS.

Tim Yung committed Jan 10, 2014 at 20:07 UTC 73d9d286ee84770c10fd84022fde92bd2efc8eaa
1 file changed +9 -1
src/eventPlugins/__tests__/EnterLeaveEventPlugin-test.js
+9 -1
@@ -17,6 +17,8 @@
17 * @emails react-core
18 */
19
20 +/*jslint evil: true */
21 +
22 "use strict";
23
24 var EnterLeaveEventPlugin;
@@ -42,7 +44,13 @@ describe('EnterLeaveEventPlugin', function() {
44 var iframe = document.createElement('iframe');
45 document.body.appendChild(iframe);
46
45 - var component = React.renderComponent(<div />, iframe.contentDocument.body);
47 + var iframeDocument = iframe.contentDocument;
48 +
49 + if (!iframeDocument.innerHTML) {
50 + iframeDocument.innerHTML = '<html><head></head><body></body></html>';
51 + }
52 +
53 + var component = React.renderComponent(<div />, iframeDocument.body);
54 var div = component.getDOMNode();
55
56 var extracted = EnterLeaveEventPlugin.extractEvents(