@@ -100,13 +100,18 @@ describe('<md-tabs>', function () {
100
100
'<md-tab ng-disabled="true"></md-tab>' +
101
101
'<md-tab></md-tab>' +
102
102
'</md-tabs>' ) ;
103
+ var ctrl = tabs . controller ( 'mdTabs' ) ;
103
104
var tabItems = tabs . find ( 'md-tab-item' ) ;
104
105
105
106
expect ( tabItems . eq ( 0 ) ) . toBeActiveTab ( ) ;
106
107
107
- // Boundary case, do nothing
108
+ // Focus should move to the last tab if left arrow is pressed
108
109
triggerKeydown ( tabs . find ( 'md-tabs-canvas' ) . eq ( 0 ) , $mdConstant . KEY_CODE . LEFT_ARROW ) ;
109
- expect ( tabItems . eq ( 0 ) ) . toBeActiveTab ( ) ;
110
+ expect ( ctrl . getFocusedTabId ( ) ) . toBe ( tabItems . eq ( 2 ) . attr ( 'id' ) ) ;
111
+
112
+ // Focus should move to the first tab if right arrow is pressed
113
+ triggerKeydown ( tabs . find ( 'md-tabs-canvas' ) . eq ( 0 ) , $mdConstant . KEY_CODE . RIGHT_ARROW ) ;
114
+ expect ( ctrl . getFocusedTabId ( ) ) . toBe ( tabItems . eq ( 0 ) . attr ( 'id' ) ) ;
110
115
111
116
// Tab 0 should still be active, but tab 2 focused (skip tab 1 it's disabled)
112
117
triggerKeydown ( tabs . find ( 'md-tabs-canvas' ) . eq ( 0 ) , $mdConstant . KEY_CODE . RIGHT_ARROW ) ;
@@ -115,10 +120,6 @@ describe('<md-tabs>', function () {
115
120
triggerKeydown ( tabs . find ( 'md-tabs-canvas' ) . eq ( 0 ) , $mdConstant . KEY_CODE . ENTER ) ;
116
121
expect ( tabItems . eq ( 2 ) ) . toBeActiveTab ( ) ;
117
122
118
- // Boundary case, do nothing
119
- triggerKeydown ( tabs . find ( 'md-tabs-canvas' ) . eq ( 0 ) , $mdConstant . KEY_CODE . RIGHT_ARROW ) ;
120
- expect ( tabItems . eq ( 2 ) ) . toBeActiveTab ( ) ;
121
-
122
123
triggerKeydown ( tabs . find ( 'md-tabs-canvas' ) . eq ( 0 ) , $mdConstant . KEY_CODE . ENTER ) ;
123
124
expect ( tabItems . eq ( 2 ) ) . toBeActiveTab ( ) ;
124
125
0 commit comments