@@ -1106,5 +1106,49 @@ describe('input', function() {
11061106 browserTrigger ( inputElm . eq ( 1 ) , 'click' ) ;
11071107 expect ( scope . selected ) . toBe ( 2 ) ;
11081108 } ) ;
1109+
1110+
1111+ it ( 'should work inside ngRepeat with primitive values' , function ( ) {
1112+ compileInput (
1113+ '<div ng-repeat="i in items">' +
1114+ '<input type="radio" name="sel_{{i.id}}" ng-model="i.selected" ng-value="true">' +
1115+ '<input type="radio" name="sel_{{i.id}}" ng-model="i.selected" ng-value="false">' +
1116+ '</div>' ) ;
1117+
1118+ scope . $apply ( function ( ) {
1119+ scope . items = [ { id : 1 , selected : true } , { id : 2 , selected : false } ] ;
1120+ } ) ;
1121+
1122+ inputElm = formElm . find ( 'input' ) ;
1123+ expect ( inputElm [ 0 ] . checked ) . toBe ( true ) ;
1124+ expect ( inputElm [ 1 ] . checked ) . toBe ( false ) ;
1125+ expect ( inputElm [ 2 ] . checked ) . toBe ( false ) ;
1126+ expect ( inputElm [ 3 ] . checked ) . toBe ( true ) ;
1127+
1128+ browserTrigger ( inputElm . eq ( 1 ) , 'click' ) ;
1129+ expect ( scope . items [ 0 ] . selected ) . toBe ( false ) ;
1130+ } ) ;
1131+
1132+
1133+ it ( 'should work inside ngRepeat without name attribute' , function ( ) {
1134+ compileInput (
1135+ '<div ng-repeat="i in items">' +
1136+ '<input type="radio" ng-model="i.selected" ng-value="true">' +
1137+ '<input type="radio" ng-model="i.selected" ng-value="false">' +
1138+ '</div>' ) ;
1139+
1140+ scope . $apply ( function ( ) {
1141+ scope . items = [ { id : 1 , selected : true } , { id : 2 , selected : false } ] ;
1142+ } ) ;
1143+
1144+ inputElm = formElm . find ( 'input' ) ;
1145+ expect ( inputElm [ 0 ] . checked ) . toBe ( true ) ;
1146+ expect ( inputElm [ 1 ] . checked ) . toBe ( false ) ;
1147+ expect ( inputElm [ 2 ] . checked ) . toBe ( false ) ;
1148+ expect ( inputElm [ 3 ] . checked ) . toBe ( true ) ;
1149+
1150+ browserTrigger ( inputElm . eq ( 1 ) , 'click' ) ;
1151+ expect ( scope . items [ 0 ] . selected ) . toBe ( false ) ;
1152+ } ) ;
11091153 } ) ;
11101154} ) ;
0 commit comments