react-native-twopane-navigation
Version:
React Native package for dual screen devices navigation support (Surface Duo)
2 lines • 12.1 kB
JavaScript
var _interopRequireWildcard=require("@babel/runtime/helpers/interopRequireWildcard");var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _react=_interopRequireWildcard(require("react"));var _twoPane=_interopRequireDefault(require("../twoPane.methods"));var keyActions=_interopRequireWildcard(require("../../../shared/screenStore/keyStore/key.actions"));var headerActions=_interopRequireWildcard(require("../../../shared/screenStore/headerStore/header.actions"));var paneElementActions=_interopRequireWildcard(require("../../../shared/screenStore/paneElementStore/paneElement.action"));var _interfaces=require("../../../utilities/interfaces");var _key2=require("../../../shared/screenStore/keyStore/key.types");var _header2=require("../../../shared/screenStore/headerStore/header.types");var _paneElement2=require("../../../shared/screenStore/paneElementStore/paneElement.types");var _paneElementMethods=require("../../../shared/screenStore/paneElementStore/tests/paneElement.methods.helpers");var _headerMethods=require("../../../shared/screenStore/headerStore/tests/header.methods.helpers");var _keyMethods=require("../../../shared/screenStore/keyStore/tests/key.methods.helpers");var _appStore=require("../../../appStore");var _jsxFileName="C:\\Users\\adavi\\source\\repos\\react-native-dualscreen\\twopane-navigation\\src\\twoPane\\twoPaneStore\\tests\\twoPane.methods.test.tsx";describe('twoPane methods',function(){beforeEach(function(){jest.clearAllMocks();});it('twoPane Add with header with merge',function(){var _pushKeySpy$mock$resu,_pushheaderSpy$mock$r,_pushPaneElementsSpy$;var expectedKey=(0,_keyMethods.KeyActionBuilder)(_key2.PUSH_KEY,_interfaces.paneType.TWO,'test1',true);var expectedHeader=(0,_headerMethods.headerActionBuilder)(_header2.PUSH_HEADER,_interfaces.paneType.TWO+"_test1",{title:'test title'});var expectedtwoPaneElement=(0,_paneElementMethods.paneElementActionBuilder)(_paneElement2.PUSH_PANE_ELEMENT,_interfaces.paneType.TWO+"_test1",_react.default.createElement(_react.Fragment,{__source:{fileName:_jsxFileName,lineNumber:31,columnNumber:125}}));var pushKeySpy=jest.spyOn(keyActions,'pushKey');var pushheaderSpy=jest.spyOn(headerActions,'pushHeader');var pushPaneElementsSpy=jest.spyOn(paneElementActions,'pushElement');var _twoPaneAdd=_twoPane.default.Add('test1',_react.default.createElement(_react.Fragment,{__source:{fileName:_jsxFileName,lineNumber:38,columnNumber:46}}),{title:'test title'},true);expect(pushKeySpy).toBeCalled();expect(pushheaderSpy).toBeCalled();expect(pushPaneElementsSpy).toBeCalled();expect((_pushKeySpy$mock$resu=pushKeySpy.mock.results.find(function(x){return x.value;}))===null||_pushKeySpy$mock$resu===void 0?void 0:_pushKeySpy$mock$resu.value).toStrictEqual(expectedKey);expect((_pushheaderSpy$mock$r=pushheaderSpy.mock.results.find(function(x){return x.value;}))===null||_pushheaderSpy$mock$r===void 0?void 0:_pushheaderSpy$mock$r.value).toStrictEqual(expectedHeader);expect((_pushPaneElementsSpy$=pushPaneElementsSpy.mock.results.find(function(x){return x.value;}))===null||_pushPaneElementsSpy$===void 0?void 0:_pushPaneElementsSpy$.value).toStrictEqual(expectedtwoPaneElement);});it('twoPane Add with header with no merge',function(){var _pushKeySpy$mock$resu2,_pushheaderSpy$mock$r2,_pushPaneElementsSpy$2;var expectedKey=(0,_keyMethods.KeyActionBuilder)(_key2.PUSH_KEY,_interfaces.paneType.TWO,'test2',false);var expectedHeader=(0,_headerMethods.headerActionBuilder)(_header2.PUSH_HEADER,_interfaces.paneType.TWO+"_test2",{title:'test title'});var expectedtwoPaneElement=(0,_paneElementMethods.paneElementActionBuilder)(_paneElement2.PUSH_PANE_ELEMENT,_interfaces.paneType.TWO+"_test2",_react.default.createElement(_react.Fragment,{__source:{fileName:_jsxFileName,lineNumber:55,columnNumber:125}}));var pushKeySpy=jest.spyOn(keyActions,'pushKey');var pushheaderSpy=jest.spyOn(headerActions,'pushHeader');var pushPaneElementsSpy=jest.spyOn(paneElementActions,'pushElement');var _twoPaneAdd=_twoPane.default.Add('test2',_react.default.createElement(_react.Fragment,{__source:{fileName:_jsxFileName,lineNumber:62,columnNumber:46}}),{title:'test title'});expect(pushKeySpy).toBeCalled();expect(pushheaderSpy).toBeCalled();expect(pushPaneElementsSpy).toBeCalled();expect((_pushKeySpy$mock$resu2=pushKeySpy.mock.results.find(function(x){return x.value;}))===null||_pushKeySpy$mock$resu2===void 0?void 0:_pushKeySpy$mock$resu2.value).toStrictEqual(expectedKey);expect((_pushheaderSpy$mock$r2=pushheaderSpy.mock.results.find(function(x){return x.value;}))===null||_pushheaderSpy$mock$r2===void 0?void 0:_pushheaderSpy$mock$r2.value).toStrictEqual(expectedHeader);expect((_pushPaneElementsSpy$2=pushPaneElementsSpy.mock.results.find(function(x){return x.value;}))===null||_pushPaneElementsSpy$2===void 0?void 0:_pushPaneElementsSpy$2.value).toStrictEqual(expectedtwoPaneElement);});it('twoPane Add no header with merge',function(){var _pushKeySpy$mock$resu3,_pushPaneElementsSpy$3;var expectedKey=(0,_keyMethods.KeyActionBuilder)(_key2.PUSH_KEY,_interfaces.paneType.TWO,'test3',true);var expectedtwoPaneElement=(0,_paneElementMethods.paneElementActionBuilder)(_paneElement2.PUSH_PANE_ELEMENT,_interfaces.paneType.TWO+"_test3",_react.default.createElement(_react.Fragment,{__source:{fileName:_jsxFileName,lineNumber:77,columnNumber:125}}));var pushKeySpy=jest.spyOn(keyActions,'pushKey');var pushheaderSpy=jest.spyOn(headerActions,'pushHeader');var pushPaneElementsSpy=jest.spyOn(paneElementActions,'pushElement');var _twoPaneAdd=_twoPane.default.Add('test3',_react.default.createElement(_react.Fragment,{__source:{fileName:_jsxFileName,lineNumber:85,columnNumber:46}}),undefined,true);expect(pushKeySpy).toBeCalled();expect(pushheaderSpy).not.toBeCalled();expect(pushPaneElementsSpy).toBeCalled();expect((_pushKeySpy$mock$resu3=pushKeySpy.mock.results.find(function(x){return x.value;}))===null||_pushKeySpy$mock$resu3===void 0?void 0:_pushKeySpy$mock$resu3.value).toStrictEqual(expectedKey);expect((_pushPaneElementsSpy$3=pushPaneElementsSpy.mock.results.find(function(x){return x.value;}))===null||_pushPaneElementsSpy$3===void 0?void 0:_pushPaneElementsSpy$3.value).toStrictEqual(expectedtwoPaneElement);});it('twoPane Add with no header with no merge',function(){var _pushKeySpy$mock$resu4,_pushPaneElementsSpy$4;var expectedKey=(0,_keyMethods.KeyActionBuilder)(_key2.PUSH_KEY,_interfaces.paneType.TWO,'test4',false);var expectedtwoPaneElement=(0,_paneElementMethods.paneElementActionBuilder)(_paneElement2.PUSH_PANE_ELEMENT,_interfaces.paneType.TWO+"_test4",_react.default.createElement(_react.Fragment,{__source:{fileName:_jsxFileName,lineNumber:99,columnNumber:125}}));var pushKeySpy=jest.spyOn(keyActions,'pushKey');var pushheaderSpy=jest.spyOn(headerActions,'pushHeader');var pushPaneElementsSpy=jest.spyOn(paneElementActions,'pushElement');var _twoPaneAdd=_twoPane.default.Add('test4',_react.default.createElement(_react.Fragment,{__source:{fileName:_jsxFileName,lineNumber:106,columnNumber:46}}));expect(pushKeySpy).toBeCalled();expect(pushPaneElementsSpy).toBeCalled();expect(pushheaderSpy).not.toBeCalled();expect((_pushKeySpy$mock$resu4=pushKeySpy.mock.results.find(function(x){return x.value;}))===null||_pushKeySpy$mock$resu4===void 0?void 0:_pushKeySpy$mock$resu4.value).toStrictEqual(expectedKey);expect((_pushPaneElementsSpy$4=pushPaneElementsSpy.mock.results.find(function(x){return x.value;}))===null||_pushPaneElementsSpy$4===void 0?void 0:_pushPaneElementsSpy$4.value).toStrictEqual(expectedtwoPaneElement);});it('twoPane AddOrMoveToFront add called',function(){var pushKeySpy=jest.spyOn(keyActions,'pushKey');var pushheaderSpy=jest.spyOn(headerActions,'pushHeader');var pushPaneElementsSpy=jest.spyOn(paneElementActions,'pushElement');var moveToFrontSpy=jest.spyOn(keyActions,'moveToFront');var _twoPaneAdd=_twoPane.default.AddOrMoveToFront('test5',_react.default.createElement(_react.Fragment,{__source:{fileName:_jsxFileName,lineNumber:127,columnNumber:59}}),{title:'test title'},true);expect(pushKeySpy).toBeCalled();expect(pushheaderSpy).toBeCalled();expect(pushPaneElementsSpy).toBeCalled();expect(moveToFrontSpy).not.toBeCalled();});it('twoPane AddOrMoveToFront moveToFront called',function(){var pushKeySpy=jest.spyOn(keyActions,'pushKey');var pushheaderSpy=jest.spyOn(headerActions,'pushHeader');var pushPaneElementsSpy=jest.spyOn(paneElementActions,'pushElement');var moveToFrontSpy=jest.spyOn(keyActions,'moveToFront');var _twoPaneAdd=_twoPane.default.AddOrMoveToFront('test1',_react.default.createElement(_react.Fragment,{__source:{fileName:_jsxFileName,lineNumber:146,columnNumber:59}}),{title:'test title'},true);expect(pushKeySpy).not.toBeCalled();expect(pushheaderSpy).not.toBeCalled();expect(pushPaneElementsSpy).not.toBeCalled();expect(moveToFrontSpy).toBeCalled();});it('twoPane mergeToOppositePane called',function(){var moveToFrontSpy=jest.spyOn(keyActions,'changeScreen');var _twoPaneAdd=_twoPane.default.mergeToOppositePane();var keyStore=_appStore.store.getState().KeyReducers;expect(moveToFrontSpy).toBeCalled();expect(moveToFrontSpy).toBeCalledTimes(3);expect(keyStore.keys.filter(function(val){return val.screen===_interfaces.paneType.ONE;}).length).toEqual(3);expect(keyStore.keys.filter(function(val){return val.screen===_interfaces.paneType.TWO;}).length).toEqual(2);});it('twoPaneBackToHome calls BackToHome',function(){var keyState=(0,_keyMethods.mockKeyState)(_interfaces.paneType.TWO,false);keyState.keys.map(function(val){return _appStore.store.dispatch(keyActions.pushKey(val.screen,val.key,val.isMerge));});var popToFrontSpy=jest.spyOn(keyActions,'popToFront');var removeHeaderKeyBySpy=jest.spyOn(headerActions,'removeHeaderByKey');var removePaneElementBySpy=jest.spyOn(paneElementActions,'removePaneElementByKey');var _twoPaneBackToHome=_twoPane.default.BackToHome();expect(popToFrontSpy).toBeCalled();expect(popToFrontSpy).toBeCalledTimes(1);expect(removeHeaderKeyBySpy).toBeCalled();expect(removeHeaderKeyBySpy).toBeCalledTimes(4);expect(removePaneElementBySpy).toBeCalled();expect(removePaneElementBySpy).toBeCalledTimes(4);});it('twoPaneGoBack calls GoBack',function(){var keyState=(0,_keyMethods.mockKeyState)(_interfaces.paneType.TWO,false,_interfaces.paneType.TWO+"_");keyState.keys.map(function(val){return _appStore.store.dispatch(keyActions.pushKey(val.screen,val.key,val.isMerge));});var expectedState={keys:[{key:'TWO_test3',isMerge:true,screen:_interfaces.paneType.ONE},{key:'TWO_test5',isMerge:true,screen:_interfaces.paneType.ONE},{key:'TWO_test1',isMerge:true,screen:_interfaces.paneType.ONE},{key:'TWO_test2',isMerge:false,screen:_interfaces.paneType.TWO},{key:'TWO_TWO_first',isMerge:false,screen:_interfaces.paneType.TWO},{key:'TWO_TWO_second',isMerge:false,screen:_interfaces.paneType.TWO}]};var popScreenSpy=jest.spyOn(keyActions,'popScreen');var removeHeaderKeyBySpy=jest.spyOn(headerActions,'removeHeaderByKey');var removePaneElementBySpy=jest.spyOn(paneElementActions,'removePaneElementByKey');var _twoPaneBack=_twoPane.default.GoBack();var finalState=_appStore.store.getState().KeyReducers;expect(finalState).toStrictEqual(expectedState);expect(popScreenSpy).toBeCalled();expect(popScreenSpy).toBeCalledTimes(1);expect(removeHeaderKeyBySpy).toBeCalled();expect(removeHeaderKeyBySpy).toBeCalledTimes(1);expect(removePaneElementBySpy).toBeCalled();expect(removePaneElementBySpy).toBeCalledTimes(1);});it('replacePanecalls',function(){var removePaneElementBySpy=jest.spyOn(paneElementActions,'replacePaneElement');var _twoPaneBack=_twoPane.default.ReplacePane('test',_react.default.createElement(_react.Fragment,{__source:{fileName:_jsxFileName,lineNumber:237,columnNumber:54}}));expect(removePaneElementBySpy).toBeCalled();expect(removePaneElementBySpy).toBeCalledTimes(1);});it('ReplaceHeader calls',function(){var replaceHeaderSpy=jest.spyOn(headerActions,'replaceHeader');var _twoPaneBack=_twoPane.default.ReplaceHeader('test',{title:'test'});expect(replaceHeaderSpy).toBeCalled();expect(replaceHeaderSpy).toBeCalledTimes(1);});});
//# sourceMappingURL=twoPane.methods.test.js.map