diff --git a/src/tabs/test/tabs.spec.js b/src/tabs/test/tabs.spec.js index bf5e2c671c..7ab517d611 100644 --- a/src/tabs/test/tabs.spec.js +++ b/src/tabs/test/tabs.spec.js @@ -778,4 +778,34 @@ describe('tabs', function() { expect(elm.find('.outer-tab-content').eq(0).text().trim()).toEqual(scope.tabs[0].content); })); }); + describe('tab switching using keyboard', function() { + beforeEach(inject(function($compile, $rootScope) { + scope = $rootScope.$new(); + + elm = $compile([ + '', + ' heading 0content 0', + ' heading 1content 1', + ' heading 2content 2', + '' + ].join('\n'))(scope); + scope.$apply(); + })); + + it('should switch tab on focus', function() { + titles().eq(0).find('a').click(); + + titles().eq(1).find('a').focus(); + expect(titles().eq(1)).toHaveClass('active'); + expect(contents().eq(1)).toHaveClass('active'); + expect(titles().eq(0)).not.toHaveClass('active'); + expect(contents().eq(0)).not.toHaveClass('active'); + + titles().eq(2).find('a').focus(); + expect(titles().eq(2)).toHaveClass('active'); + expect(contents().eq(2)).toHaveClass('active'); + expect(titles().eq(1)).not.toHaveClass('active'); + expect(contents().eq(1)).not.toHaveClass('active'); + }); + }); }); diff --git a/template/tabs/tab.html b/template/tabs/tab.html index aedd7ef379..5588a4edd6 100644 --- a/template/tabs/tab.html +++ b/template/tabs/tab.html @@ -1,3 +1,3 @@
  • - {{heading}} + {{heading}}