aboutsummaryrefslogtreecommitdiffstats
path: root/test/markupSpec.js
diff options
context:
space:
mode:
authorDi Peng2011-06-06 12:13:07 -0700
committerIgor Minar2011-06-16 21:17:46 -0700
commite6ee9947645c5cca9cf6efd902cae1a4a31ea13c (patch)
treeaef3c87645697d98b49e51b1a0e805c271dfc1d1 /test/markupSpec.js
parentc8ee00cb2bfffcc25fdfc14c56b5b82cf71284d5 (diff)
downloadangular.js-e6ee9947645c5cca9cf6efd902cae1a4a31ea13c.tar.bz2
Added ng:disabled, ng:checked, ng:multiple, ng:readonly, ng:selected to markup.js.
Also added coresponding descriptions live examples and tests for each directive to be displayed on the website. Closes #351
Diffstat (limited to 'test/markupSpec.js')
-rw-r--r--test/markupSpec.js50
1 files changed, 50 insertions, 0 deletions
diff --git a/test/markupSpec.js b/test/markupSpec.js
index 765c3108..0e5c8457 100644
--- a/test/markupSpec.js
+++ b/test/markupSpec.js
@@ -89,6 +89,56 @@ describe("markups", function(){
expect(sortedHtml(element)).toEqual('<a ng:bind-attr="{"href":"{{url}}"}"></a>');
});
+ it('should bind disabled', function() {
+ compile('<button ng:disabled="{{isDisabled}}">Button</button>');
+ scope.isDisabled = false;
+ scope.$eval();
+ expect(element.attr('disabled')).toBeFalsy();
+ scope.isDisabled = true;
+ scope.$eval();
+ expect(element.attr('disabled')).toBeTruthy();
+ });
+
+ it('should bind checked', function() {
+ compile('<input type="checkbox" ng:checked="{{isChecked}}" />');
+ scope.isChecked = false;
+ scope.$eval();
+ expect(element.attr('checked')).toBeFalsy();
+ scope.isChecked=true;
+ scope.$eval();
+ expect(element.attr('checked')).toBeTruthy();
+ });
+
+ it('should bind selected', function() {
+ compile('<select><option value=""></option><option ng:selected="{{isSelected}}">Greetings!</option></select>');
+ scope.isSelected=false;
+ scope.$eval();
+ expect(element.children()[1].selected).toBeFalsy();
+ scope.isSelected=true;
+ scope.$eval();
+ expect(element.children()[1].selected).toBeTruthy();
+ });
+
+ it('should bind readonly', function() {
+ compile('<input type="text" ng:readonly="{{isReadonly}}" />');
+ scope.isReadonly=false;
+ scope.$eval();
+ expect(element.attr('readOnly')).toBeFalsy();
+ scope.isReadonly=true;
+ scope.$eval();
+ expect(element.attr('readOnly')).toBeTruthy();
+ });
+
+ it('should bind multiple', function() {
+ compile('<select ng:multiple="{{isMultiple}}"></select>');
+ scope.isMultiple=false;
+ scope.$eval();
+ expect(element.attr('multiple')).toBeFalsy();
+ scope.isMultiple='multiple';
+ scope.$eval();
+ expect(element.attr('multiple')).toBeTruthy();
+ });
+
it('should bind src', function() {
compile('<img ng:src="{{url}}" />');
scope.url = 'http://localhost/';