@@ -1105,6 +1105,60 @@ void main() {
1105
1105
});
1106
1106
});
1107
1107
1108
+ describe ('type="color"' , () {
1109
+ it ('should update input value from model' , () {
1110
+ _.compile ('<input type="color" ng-model="model">' );
1111
+ _.rootScope.apply ();
1112
+
1113
+ expect ((_.rootElement as dom.InputElement ).value).toEqual ('#000000' );
1114
+
1115
+ _.rootScope.apply ('model = "#123456"' );
1116
+ expect ((_.rootElement as dom.InputElement ).value).toEqual ('#123456' );
1117
+ });
1118
+
1119
+ it ('should render as #000000 on default and when a null value is present' , () {
1120
+ _.compile ('<input type="color" ng-model="model">' );
1121
+ _.rootScope.apply ();
1122
+
1123
+ expect ((_.rootElement as dom.InputElement ).value).toEqual ('#000000' );
1124
+
1125
+ _.rootScope.apply ('model = null' );
1126
+ expect ((_.rootElement as dom.InputElement ).value).toEqual ('#000000' );
1127
+ });
1128
+
1129
+ it ('should update model from the input value' , () {
1130
+ _.compile ('<input type="color" ng-model="model" probe="p">' );
1131
+ Probe probe = _.rootScope.context['p' ];
1132
+ var ngModel = probe.directive (NgModel );
1133
+ InputElement inputElement = probe.element;
1134
+
1135
+ inputElement.value = '#000000' ;
1136
+ _.triggerEvent (inputElement, 'change' );
1137
+ expect (_.rootScope.context['model' ]).toEqual ('#000000' );
1138
+
1139
+ inputElement.value = '#ffffff' ;
1140
+ var input = probe.directive (InputTextLike );
1141
+ input.processValue ();
1142
+ expect (_.rootScope.context['model' ]).toEqual ('#ffffff' );
1143
+ });
1144
+
1145
+ it ('should only render the input value upon the next digest' , (Scope scope) {
1146
+ _.compile ('<input type="color" ng-model="model" probe="p">' );
1147
+ Probe probe = _.rootScope.context['p' ];
1148
+ var ngModel = probe.directive (NgModel );
1149
+ InputElement inputElement = probe.element;
1150
+
1151
+ ngModel.render ('#aabbcc' );
1152
+ scope.context['model' ] = '#aabbcc' ;
1153
+
1154
+ expect (inputElement.value).not.toEqual ('#aabbcc' );
1155
+
1156
+ scope.apply ();
1157
+
1158
+ expect (inputElement.value).toEqual ('#aabbcc' );
1159
+ });
1160
+ });
1161
+
1108
1162
describe ('contenteditable' , () {
1109
1163
it ('should update content from model' , () {
1110
1164
_.compile ('<p contenteditable ng-model="model">' );
0 commit comments