UNPKG

react-native-dualscreeninfo

Version:

React Native package for dual screen devices support (Surface Duo)

54 lines (44 loc) 1.22 kB
declare type DoneFn = (error?: any) => void; const { EventEmitter } = require('events'); const dualScreenEmitter = new EventEmitter(); jest.mock('NativeModules', () => { return { DualScreenInfo: { getWindowRects: jest.fn(), isSpanned: jest.fn(), addListener: jest.fn(), removeListeners: jest.fn(), }, }; }); jest.mock('NativeEventEmitter', () => { function mockedNativeEventEmitter() { return dualScreenEmitter; } return mockedNativeEventEmitter; }); function beforeHelper(done: DoneFn) { //general setup jest.clearAllMocks(); done(); } function afterHelper(done: DoneFn) { //general setup done(); } export function getEventEmitter() { return dualScreenEmitter; } export function runTests(testSuiteName: string, spec: () => void) { // Iterate across all the test suites that we have describe(testSuiteName + ' Wrapper' , () => { beforeEach(done => { beforeHelper(done); }); afterEach(done => { afterHelper(done); }); // Set value before we call spec to ensure that any inline conditionals in test definition get respected describe(testSuiteName, spec); }); }