const Winamp = { media: { addEventListener: jest.fn(), _analyser: null } }; const canvasMockify = require("canvas-mock"); function createNodeMock(element) { if (element.type === "canvas") { const Canvas = window.document.createElement("canvas"); canvasMockify(Canvas); // mock canvas functions required by Phaser.js are added return Canvas; } return null; } window.requestAnimationFrame = () => {}; import React from "react"; import { Provider } from "react-redux"; import renderer from "react-test-renderer"; import getStore from "../store"; import MainWindow from "./MainWindow"; describe("MainWindow", () => { let store; beforeEach(() => { store = getStore(Winamp); }); it("renders to snapshot", () => { const options = { createNodeMock }; const tree = renderer .create( , options ) .toJSON(); expect(tree).toMatchSnapshot(); }); });