diff --git a/spec/javascripts/merge_request_tabs_spec.js b/spec/javascripts/merge_request_tabs_spec.js index 72a05ce882c825ba6d6574ded660cc2492adfa1a..92a0f1c05f7b83d063eb1ee21538177387b01b54 100644 --- a/spec/javascripts/merge_request_tabs_spec.js +++ b/spec/javascripts/merge_request_tabs_spec.js @@ -62,17 +62,21 @@ require('vendor/jquery.scrollTo'); }); }); describe('#opensInNewTab', function () { + var commitsLink; + var tabUrl; + beforeEach(function () { - const commitsLink = '.commits-tab li a'; - const tabUrl = $(commitsLink).attr('href'); + commitsLink = '.commits-tab li a'; + tabUrl = $(commitsLink).attr('href'); spyOn($.fn, 'attr').and.returnValue(tabUrl); + }); + it('opens page tab in a new browser tab with Ctrl+Click - Windows/Linux', function () { spyOn(window, 'open').and.callFake(function (url, name) { expect(url).toEqual(tabUrl); expect(name).toEqual('_blank'); }); - }); - it('opens page tab in a new browser tab with Ctrl+Click - Windows/Linux', function () { + this.class.clickTab({ metaKey: false, ctrlKey: true, @@ -81,6 +85,11 @@ require('vendor/jquery.scrollTo'); }); }); it('opens page tab in a new browser tab with Cmd+Click - Mac', function () { + spyOn(window, 'open').and.callFake(function (url, name) { + expect(url).toEqual(tabUrl); + expect(name).toEqual('_blank'); + }); + this.class.clickTab({ metaKey: true, ctrlKey: false, @@ -89,6 +98,11 @@ require('vendor/jquery.scrollTo'); }); }); it('opens page tab in a new browser tab with Middle-click - Mac/PC', function () { + spyOn(window, 'open').and.callFake(function (url, name) { + expect(url).toEqual(tabUrl); + expect(name).toEqual('_blank'); + }); + this.class.clickTab({ metaKey: false, ctrlKey: false,