////////////////////////////////////////////////////////////////////////// // // pgAdmin 4 - PostgreSQL Tools // // Copyright (C) 2013 - 2018, The pgAdmin Development Team // This software is released under the PostgreSQL Licence // ////////////////////////////////////////////////////////////////////////// import dialogTabNavigator from 'sources/dialog_tab_navigator'; import $ from 'jquery'; import 'bootstrap'; describe('dialogTabNavigator', function () { let dialog, tabNavigator, backward_shortcut, forward_shortcut; beforeEach(() => { let dialogHtml =$('
'+ ' '+ ' '+ '
'); dialog = {}; dialog.el = dialogHtml[0]; dialog.$el = dialogHtml; backward_shortcut = { 'alt': false, 'shift': true, 'control': true, 'key': {'key_code': 91, 'char': '['} }; forward_shortcut = { 'alt': false, 'shift': true, 'control': true, 'key': {'key_code': 93, 'char': ']'} }; tabNavigator = new dialogTabNavigator.dialogTabNavigator( dialog, backward_shortcut, forward_shortcut); }); describe('navigate', function () { beforeEach(() => { spyOn(tabNavigator, 'navigateBackward').and.callThrough(); spyOn(tabNavigator, 'navigateForward').and.callThrough(); }); it('navigate backward', function () { tabNavigator.onKeyboardEvent({}, 'shift+ctrl+['); expect(tabNavigator.navigateBackward).toHaveBeenCalled(); expect(tabNavigator.navigateForward).not.toHaveBeenCalled(); }); it('navigate forward', function () { tabNavigator.onKeyboardEvent({}, 'shift+ctrl+]'); expect(tabNavigator.navigateForward).toHaveBeenCalled(); expect(tabNavigator.navigateBackward).not.toHaveBeenCalled(); }); it('should not navigate', function () { tabNavigator.onKeyboardEvent({}, 'shift+ctrl+a'); expect(tabNavigator.navigateForward).not.toHaveBeenCalled(); expect(tabNavigator.navigateBackward).not.toHaveBeenCalled(); }); }); });