aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/BinderTest.js182
-rw-r--r--test/directivesSpec.js8
-rw-r--r--test/markupSpec.js8
-rw-r--r--test/moveToAngularCom/MiscTest.js35
-rw-r--r--test/testabilityPatch.js6
-rw-r--r--test/widgetsSpec.js18
6 files changed, 117 insertions, 140 deletions
diff --git a/test/BinderTest.js b/test/BinderTest.js
index e99f37e2..4d996a8e 100644
--- a/test/BinderTest.js
+++ b/test/BinderTest.js
@@ -39,7 +39,7 @@ BinderTest.prototype.testChangingRadioUpdatesModel = function(){
};
BinderTest.prototype.testChangingCheckboxUpdatesModel = function(){
- var form = this.compile('<input type="checkbox" name="model.price" value="true" checked ng-format="boolean">');
+ var form = this.compile('<input type="checkbox" name="model.price" value="true" checked ng-format="boolean"/>');
assertEquals(true, form.scope.model.price);
};
@@ -91,7 +91,7 @@ BinderTest.prototype.testReplaceBindingInTextWithSpan = function() {
};
BinderTest.prototype.testBindingSpaceConfusesIE = function() {
- //if (!msie) return;
+ if (!msie) return;
var span = document.createElement("span");
span.innerHTML = '&nbsp;';
var nbsp = span.firstChild.nodeValue;
@@ -144,7 +144,7 @@ BinderTest.prototype.testAttributesAreEvaluated = function(){
BinderTest.prototype.testInputTypeButtonActionExecutesInScope = function(){
var savedCalled = false;
- var c = this.compile('<input type="button" ng-action="person.save()" value="Apply">');
+ var c = this.compile('<input type="button" ng-click="person.save()" value="Apply">');
c.scope.$set("person.save", function(){
savedCalled = true;
});
@@ -153,17 +153,19 @@ BinderTest.prototype.testInputTypeButtonActionExecutesInScope = function(){
};
BinderTest.prototype.testInputTypeButtonActionExecutesInScope2 = function(){
- expectAsserts(1);
- var c = this.compile('<input type="image" ng-action="action()">');
+ var log = "";
+ var c = this.compile('<input type="image" ng-click="action()">');
c.scope.$set("action", function(){
- assertTrue(true);
+ log += 'click;';
});
+ expect(log).toEqual('');
c.node.click();
+ expect(log).toEqual('click;');
};
BinderTest.prototype.testButtonElementActionExecutesInScope = function(){
var savedCalled = false;
- var c = this.compile('<button ng-action="person.save()">Apply</button>');
+ var c = this.compile('<button ng-click="person.save()">Apply</button>');
c.scope.$set("person.save", function(){
savedCalled = true;
});
@@ -171,7 +173,7 @@ BinderTest.prototype.testButtonElementActionExecutesInScope = function(){
assertTrue(savedCalled);
};
-BinderTest.prototype.testParseEmptyAnchor = function(){
+BinderTest.prototype.XtestParseEmptyAnchor = function(){
var binder = this.compile("<div/>").binder;
var location = binder.location;
var anchor = binder.anchor;
@@ -185,7 +187,7 @@ BinderTest.prototype.testParseEmptyAnchor = function(){
assertEquals('undefined', typeof (anchor[""]));
};
-BinderTest.prototype.testParseAnchor = function(){
+BinderTest.prototype.XtestParseAnchor = function(){
var binder = this.compile("<div/>").binder;
var location = binder.location;
location.url = "a#x=1";
@@ -199,7 +201,7 @@ BinderTest.prototype.testParseAnchor = function(){
assertTrue(!binder.anchor.x);
};
-BinderTest.prototype.testWriteAnchor = function(){
+BinderTest.prototype.XtestWriteAnchor = function(){
var binder = this.compile("<div/>").binder;
binder.location.set('a');
binder.anchor.a = 'b';
@@ -209,7 +211,7 @@ BinderTest.prototype.testWriteAnchor = function(){
assertEquals(binder.location.get(), "a#a=b&c=%20&d");
};
-BinderTest.prototype.testWriteAnchorAsPartOfTheUpdateView = function(){
+BinderTest.prototype.XtestWriteAnchorAsPartOfTheUpdateView = function(){
var binder = this.compile("<div/>").binder;
binder.location.set('a');
binder.anchor.a = 'b';
@@ -221,8 +223,6 @@ BinderTest.prototype.testRepeaterUpdateBindings = function(){
var a = this.compile('<ul><LI ng-repeat="item in model.items" ng-bind="item.a"/></ul>');
var form = a.node;
var items = [{a:"A"}, {a:"B"}];
- var initialDataCount = _(jQuery.cache).size();
- assertTrue("" + initialDataCount, initialDataCount > 0);
a.scope.$set('model', {items:items});
a.scope.$eval();
@@ -252,8 +252,6 @@ BinderTest.prototype.testRepeaterUpdateBindings = function(){
items.shift();
items.shift();
a.scope.$eval();
- var currentDataCount = _(jQuery.cache).size();
- assertEquals("I have leaked " + (currentDataCount - initialDataCount), initialDataCount, currentDataCount);
};
BinderTest.prototype.testRepeaterContentDoesNotBind = function(){
@@ -266,118 +264,63 @@ BinderTest.prototype.testRepeaterContentDoesNotBind = function(){
'</ul>', sortedHtml(a.node));
};
-BinderTest.prototype.testShouldBindActionsOnRepeaterClone = function(){
- var c = this.compile('<a ng-repeat="item in items" href="#" ng-action="result.value = item">link</a>');
- jQuery(c).die();
- c.scope.$set('result.value', false);
- c.scope.$set('items', ['abc', 'xyz']);
- c.scope.$eval();
- assertEquals(2, c.node.find("a").size());
- c.node.find("a:last").click();
- assertEquals('xyz', c.scope.$get('result.value'));
-};
-
-
-
-BinderTest.prototype.testRepeaterInputContentDoesNotBind = function(){
- var c = compil('<ul><LI repeater="item in model.items">' +
- '<input type="text" name="item.a" value="OLD"/></li></ul>');
- c.scope.items = [{a:"A"}];
- assertEquals(c.node.find(":input").attr("value"), "OLD");
-};
-
BinderTest.prototype.testExpandEntityTag = function(){
assertEquals(
'<div ng-entity="Person" ng-watch="$anchor.a:1"></div>',
this.compileToHtml('<div ng-entity="Person" ng-watch="$anchor.a:1"/>'));
};
-BinderTest.prototype.testExpandEntityTagWithDefaults = function(){
- assertEquals(
- '<div ng-entity="Person:{a:\"a\"}" ng-watch=""></div>',
- this.compileToHtml('<div ng-entity=\'Person:{a:"a"}\'/>'));
-};
-
-BinderTest.prototype.testExpandEntityTagWithName = function(){
- var c = this.compile('<div ng-entity="friend=Person"/>');
- assertEquals(
- '<div ng-entity="friend=Person" ng-watch="$anchor.friend:{friend=Person.load($anchor.friend);friend.$$anchor=\"friend\";};"></div>',
- sortedHtml(c.node));
- assertEquals("Person", c.scope.$get("friend.$entity"));
- assertEquals("friend", c.scope.$get("friend.$$anchor"));
-};
-
-BinderTest.prototype.testExpandSubmitButtonToAction = function(){
- var html = this.compileToHtml('<input type="submit" value="Save">');
- assertTrue(html, html.indexOf('ng-action="$save()"') > 0 );
- assertTrue(html, html.indexOf('ng-bind-attr="{"disabled":"{{$invalidWidgets}}"}"') > 0 );
-};
-
BinderTest.prototype.testDoNotOverwriteCustomAction = function(){
var html = this.compileToHtml('<input type="submit" value="Save" action="foo();">');
assertTrue(html.indexOf('action="foo();"') > 0 );
};
-BinderTest.prototype.testReplaceFileUploadWithSwf = function(){
- expectAsserts(1);
- var form = jQuery("body").append('<div id="testTag"><input type="file"></div>');
- form.data('scope', new Scope());
- var factory = {};
- var binder = new Binder(form.get(0), factory, new MockLocation());
- factory.createController = function(node){
- assertEquals(node.attr('type'), 'file');
- return {updateModel:function(){}};
- };
- binder.compile();
- jQuery("#testTag").remove();
-};
-
BinderTest.prototype.testRepeaterAdd = function(){
var c = this.compile('<div><input type="text" name="item.x" ng-repeat="item in items"></div>');
var doc = c.node;
c.scope.$set('items', [{x:'a'}, {x:'b'}]);
- c.binder.compile();
c.scope.$eval();
- assertEquals('a', doc.find(':input')[0].value);
- assertEquals('b', doc.find(':input')[1].value);
+ var first = childNode(c.node, 1);
+ var second = childNode(c.node, 2);
+ assertEquals('a', first.val());
+ assertEquals('b', second.val());
- var first = doc.find('[ng-repeat-index="0"]');
- first[0].value = 'ABC';
+ first.val('ABC');
first.trigger('keyup');
- assertEquals(doc.scope().get('items')[0].x, 'ABC');
+ assertEquals(c.scope.items[0].x, 'ABC');
};
BinderTest.prototype.testItShouldRemoveExtraChildrenWhenIteratingOverHash = function(){
- var c = this.compile('<div ng-repeat="i in items">{{i}}</div>');
+ var c = this.compile('<div><div ng-repeat="i in items">{{i}}</div></div>');
var items = {};
c.scope.$set("items", items);
c.scope.$eval();
- expect(c.node.find("div").size()).toEqual(0);
+ expect(c.node[0].childNodes.length - 1).toEqual(0);
items.name = "misko";
c.scope.$eval();
- expect(c.node.find("div").size()).toEqual(1);
+ expect(c.node[0].childNodes.length - 1).toEqual(1);
delete items.name;
c.scope.$eval();
- expect(c.node.find("div").size()).toEqual(0);
+ expect(c.node[0].childNodes.length - 1).toEqual(0);
};
BinderTest.prototype.testIfTextBindingThrowsErrorDecorateTheSpan = function(){
var a = this.compile('<div>{{error.throw()}}</div>');
- var doc = a.node.find('div');
+ var doc = a.node;
a.scope.$set('error.throw', function(){throw "ErrorMsg1";});
a.scope.$eval();
- var span = doc.find('span');
+ var span = childNode(doc, 0);
assertTrue(span.hasClass('ng-exception'));
assertEquals('ErrorMsg1', fromJson(span.text()));
assertEquals('"ErrorMsg1"', span.attr('ng-error'));
a.scope.$set('error.throw', function(){throw "MyError";});
a.scope.$eval();
- span = doc.find('span');
+ span = childNode(doc, 0);
assertTrue(span.hasClass('ng-exception'));
assertTrue(span.text(), span.text().match('MyError') !== null);
assertEquals('"MyError"', span.attr('ng-error'));
@@ -389,15 +332,15 @@ BinderTest.prototype.testIfTextBindingThrowsErrorDecorateTheSpan = function(){
assertEquals(null, span.attr('ng-error'));
};
-BinderTest.prototype.testIfAttrBindingThrowsErrorDecorateTheSpan = function(){
+BinderTest.prototype.testIfAttrBindingThrowsErrorDecorateTheAttribute = function(){
var a = this.compile('<div attr="before {{error.throw()}} after"></div>');
- var doc = a.node.find("div");
+ var doc = a.node;
a.scope.$set('error.throw', function(){throw "ErrorMsg";});
a.scope.$eval();
assertTrue('ng-exception', doc.hasClass('ng-exception'));
- assertEquals('before ["ErrorMsg"] after', doc.attr('attr'));
assertEquals('"ErrorMsg"', doc.attr('ng-error'));
+ assertEquals('before "ErrorMsg" after', doc.attr('attr'));
a.scope.$set('error.throw', function(){ return 'X';});
a.scope.$eval();
@@ -408,15 +351,15 @@ BinderTest.prototype.testIfAttrBindingThrowsErrorDecorateTheSpan = function(){
};
BinderTest.prototype.testNestedRepeater = function() {
- var a = this.compile('<div ng-repeat="m in model" name="{{m.name}}">' +
+ var a = this.compile('<div><div ng-repeat="m in model" name="{{m.name}}">' +
'<ul name="{{i}}" ng-repeat="i in m.item"></ul>' +
- '</div>');
+ '</div></div>');
a.scope.$set('model', [{name:'a', item:['a1', 'a2']}, {name:'b', item:['b1', 'b2']}]);
a.scope.$eval();
- assertEquals(
- //'<#comment></#comment>'+
+ assertEquals('<div>'+
+ '<#comment></#comment>'+
'<div name="a" ng-bind-attr="{"name":"{{m.name}}"}" ng-repeat-index="0">'+
'<#comment></#comment>'+
'<ul name="a1" ng-bind-attr="{"name":"{{i}}"}" ng-repeat-index="0"></ul>'+
@@ -426,18 +369,18 @@ BinderTest.prototype.testNestedRepeater = function() {
'<#comment></#comment>'+
'<ul name="b1" ng-bind-attr="{"name":"{{i}}"}" ng-repeat-index="0"></ul>'+
'<ul name="b2" ng-bind-attr="{"name":"{{i}}"}" ng-repeat-index="1"></ul>'+
- '</div>', sortedHtml(a.node));
+ '</div></div>', sortedHtml(a.node));
};
-BinderTest.prototype.testRadioButtonGetsPrefixed = function () {
- var a = this.compile('<input ng-repeat="m in model" type="radio" name="m.a" value="on"/>');
+BinderTest.prototype.XtestRadioButtonGetsPrefixed = function () {
+ var a = this.compile('<div><input ng-repeat="m in model" type="radio" name="m.a" value="on"/></div>');
a.scope.$set('model', ['a1', 'a2']);
a.scope.$eval();
- assertEquals(
- //'<#comment></#comment>'+
+ assertEquals('</div>' +
+ '<#comment></#comment>'+
'<input name="0:m.a" ng-repeat-index="0" type="radio" value="on"></input>'+
- '<input name="1:m.a" ng-repeat-index="1" type="radio" value="on"></input>',
+ '<input name="1:m.a" ng-repeat-index="1" type="radio" value="on"></input></div>',
sortedHtml(a.node));
};
@@ -447,12 +390,12 @@ BinderTest.prototype.testHideBindingExpression = function() {
a.scope.$set('hidden', 3);
a.scope.$eval();
- assertHidden(a.node.children());
+ assertHidden(a.node);
a.scope.$set('hidden', 2);
a.scope.$eval();
- assertVisible(a.node.children());
+ assertVisible(a.node);
};
BinderTest.prototype.testHideBinding = function() {
@@ -461,17 +404,17 @@ BinderTest.prototype.testHideBinding = function() {
c.scope.$set('hidden', 'true');
c.scope.$eval();
- assertHidden(c.node.children());
+ assertHidden(c.node);
c.scope.$set('hidden', 'false');
c.scope.$eval();
- assertVisible(c.node.children());
+ assertVisible(c.node);
c.scope.$set('hidden', '');
c.scope.$eval();
- assertVisible(c.node.children());
+ assertVisible(c.node);
};
BinderTest.prototype.testShowBinding = function() {
@@ -480,17 +423,17 @@ BinderTest.prototype.testShowBinding = function() {
c.scope.$set('show', 'true');
c.scope.$eval();
- assertVisible(c.node.children());
+ assertVisible(c.node);
c.scope.$set('show', 'false');
c.scope.$eval();
- assertHidden(c.node.children());
+ assertHidden(c.node);
c.scope.$set('show', '');
c.scope.$eval();
- assertHidden(c.node.children());
+ assertHidden(c.node);
};
BinderTest.prototype.testBindClassUndefined = function() {
@@ -498,7 +441,7 @@ BinderTest.prototype.testBindClassUndefined = function() {
doc.scope.$eval();
assertEquals(
- '<div ng-class="undefined"></div>',
+ '<div class="undefined" ng-class="undefined"></div>',
sortedHtml(doc.node));
};
@@ -515,35 +458,34 @@ BinderTest.prototype.testBindClass = function() {
c.scope.$eval();
assertEquals(sortedHtml(c.node),
- '<div class="a,b" ng-class="class"></div>');
+ '<div class="a b" ng-class="class"></div>');
};
BinderTest.prototype.testBindClassEvenOdd = function() {
- var x = this.compile('<div ng-repeat="i in [0,1]" ng-class-even="\'e\'" ng-class-odd="\'o\'"/>');
+ var x = this.compile('<div><div ng-repeat="i in [0,1]" ng-class-even="\'e\'" ng-class-odd="\'o\'"/></div>');
x.scope.$eval();
assertEquals(
+ '<div><#comment></#comment>' +
'<div class="o" ng-class-even="\'e\'" ng-class-odd="\'o\'" ng-repeat-index="0"></div>' +
- '<div class="e" ng-class-even="\'e\'" ng-class-odd="\'o\'" ng-repeat-index="1"></div>',
+ '<div class="e" ng-class-even="\'e\'" ng-class-odd="\'o\'" ng-repeat-index="1"></div></div>',
sortedHtml(x.node));
};
BinderTest.prototype.testBindStyle = function() {
var c = this.compile('<div ng-style="style"/>');
- c.scope.eval('style={color:"red"}');
+ c.scope.$eval('style={color:"red"}');
c.scope.$eval();
- assertEquals("red", c.node.find('div').css('color'));
+ assertEquals("red", c.node.css('color'));
- c.scope.eval('style={}');
+ c.scope.$eval('style={}');
c.scope.$eval();
-
- assertEquals(sortedHtml(c.node), '<div ng-style="style"></div>');
};
BinderTest.prototype.testActionOnAHrefThrowsError = function(){
var model = {books:[]};
- var c = this.compile('<a ng-action="action()">Add Phone</a>', model);
+ var c = this.compile('<a ng-click="action()">Add Phone</a>', model);
c.scope.action = function(){
throw {a:'abc', b:2};
};
@@ -553,10 +495,10 @@ BinderTest.prototype.testActionOnAHrefThrowsError = function(){
assertTrue("should have an error class", input.hasClass('ng-exception'));
// TODO: I think that exception should never get cleared so this portion of test makes no sense
-// c.scope.action = noop;
-// input.click();
-// dump(input.attr('ng-error'));
-// assertFalse('error class should be cleared', input.hasClass('ng-exception'));
+ //c.scope.action = noop;
+ //input.click();
+ //dump(input.attr('ng-error'));
+ //assertFalse('error class should be cleared', input.hasClass('ng-exception'));
};
BinderTest.prototype.testShoulIgnoreVbNonBindable = function(){
@@ -777,8 +719,8 @@ BinderTest.prototype.XtestSetBinderAnchorTriggersListeners = function(){
BinderTest.prototype.testItShouldDisplayErrorWhenActionIsSyntacticlyIncorect = function(){
var c = this.compile('<div>' +
- '<input type="button" ng-action="greeting=\'ABC\'"/>' +
- '<input type="button" ng-action=":garbage:"/></div>');
+ '<input type="button" ng-click="greeting=\'ABC\'"/>' +
+ '<input type="button" ng-click=":garbage:"/></div>');
var first = jqLite(c.node[0].childNodes[0]);
var second = jqLite(c.node[0].childNodes[1]);
diff --git a/test/directivesSpec.js b/test/directivesSpec.js
index 4eef1ac3..cfee86a0 100644
--- a/test/directivesSpec.js
+++ b/test/directivesSpec.js
@@ -105,8 +105,8 @@ describe("directives", function(){
expect(scope.$get('count')).toEqual(1);
});
- it('should ng-action', function(){
- var scope = compile('<div ng-action="clicked = true"></div>');
+ it('should ng-click', function(){
+ var scope = compile('<div ng-click="clicked = true"></div>');
scope.$eval();
expect(scope.$get('clicked')).toBeFalsy();
@@ -128,9 +128,9 @@ describe("directives", function(){
var e1 = jqLite(element[0].childNodes[1]);
var e2 = jqLite(element[0].childNodes[2]);
expect(e1.hasClass('existing')).toBeTruthy();
- expect(e1.hasClass('even')).toBeTruthy();
+ expect(e1.hasClass('odd')).toBeTruthy();
expect(e2.hasClass('existing')).toBeTruthy();
- expect(e2.hasClass('odd')).toBeTruthy();
+ expect(e2.hasClass('even')).toBeTruthy();
});
it('should ng-style', function(){
diff --git a/test/markupSpec.js b/test/markupSpec.js
index 2ddefe47..e416b8ea 100644
--- a/test/markupSpec.js
+++ b/test/markupSpec.js
@@ -20,18 +20,18 @@ describe("markups", function(){
it('should translate {{}} in text', function(){
compile('<div>hello {{name}}!</div>');
- expect(element.html()).toEqual('hello <span ng-bind="name"></span>!');
+ expect(sortedHtml(element)).toEqual('<div>hello <span ng-bind="name"></span>!</div>');
scope.$set('name', 'Misko');
scope.$eval();
- expect(element.html()).toEqual('hello <span ng-bind="name">Misko</span>!');
+ expect(sortedHtml(element)).toEqual('<div>hello <span ng-bind="name">Misko</span>!</div>');
});
it('should translate {{}} in terminal nodes', function(){
compile('<select name="x"><option value="">Greet {{name}}!</option></select>');
- expect(element.html()).toEqual('<option ng-bind-template="Greet {{name}}!" value="">Greet !</option>');
+ expect(sortedHtml(element)).toEqual('<select name="x"><option ng-bind-template="Greet {{name}}!">Greet !</option></select>');
scope.$set('name', 'Misko');
scope.$eval();
- expect(element.html()).toEqual('<option ng-bind-template="Greet {{name}}!" value="">Greet Misko!</option>');
+ expect(sortedHtml(element)).toEqual('<select name="x"><option ng-bind-template="Greet {{name}}!">Greet Misko!</option></select>');
});
it('should translate {{}} in attributes', function(){
diff --git a/test/moveToAngularCom/MiscTest.js b/test/moveToAngularCom/MiscTest.js
new file mode 100644
index 00000000..db6e8563
--- /dev/null
+++ b/test/moveToAngularCom/MiscTest.js
@@ -0,0 +1,35 @@
+BinderTest.prototype.testExpandEntityTagWithName = function(){
+ var c = this.compile('<div ng-entity="friend=Person"/>');
+ assertEquals(
+ '<div ng-entity="friend=Person" ng-watch="$anchor.friend:{friend=Person.load($anchor.friend);friend.$$anchor=\"friend\";};"></div>',
+ sortedHtml(c.node));
+ assertEquals("Person", c.scope.$get("friend.$entity"));
+ assertEquals("friend", c.scope.$get("friend.$$anchor"));
+};
+
+BinderTest.prototype.XtestExpandSubmitButtonToAction = function(){
+ var html = this.compileToHtml('<input type="submit" value="Save">');
+ assertTrue(html, html.indexOf('ng-action="$save()"') > 0 );
+ assertTrue(html, html.indexOf('ng-bind-attr="{"disabled":"{{$invalidWidgets}}"}"') > 0 );
+};
+
+BinderTest.prototype.XtestReplaceFileUploadWithSwf = function(){
+ expectAsserts(1);
+ var form = jQuery("body").append('<div id="testTag"><input type="file"></div>');
+ form.data('scope', new Scope());
+ var factory = {};
+ var binder = new Binder(form.get(0), factory, new MockLocation());
+ factory.createController = function(node){
+ assertEquals(node.attr('type'), 'file');
+ return {updateModel:function(){}};
+ };
+ binder.compile();
+ jQuery("#testTag").remove();
+};
+
+BinderTest.prototype.testExpandEntityTagWithDefaults = function(){
+ assertEquals(
+ '<div ng-entity="Person:{a:\"a\"}" ng-watch=""></div>',
+ this.compileToHtml('<div ng-entity=\'Person:{a:"a"}\'/>'));
+};
+
diff --git a/test/testabilityPatch.js b/test/testabilityPatch.js
index 312b1e42..86d139cf 100644
--- a/test/testabilityPatch.js
+++ b/test/testabilityPatch.js
@@ -83,18 +83,18 @@ function sortedHtml(element) {
};
function isVisible(node) {
- var display = $(node).css('display');
+ var display = node.css('display');
if (display == 'block') display = "";
return display != 'none';
}
function assertHidden(node) {
var display = node.css('display');
- assertFalse("Node should be hidden but vas visible: " + node.sortedHtml(), isVisible(node));
+ assertFalse("Node should be hidden but vas visible: " + sortedHtml(node), isVisible(node));
}
function assertVisible(node) {
- assertTrue("Node should be visible but vas hidden: " + node.sortedHtml(), isVisible(node));
+ assertTrue("Node should be visible but vas hidden: " + sortedHtml(node), isVisible(node));
}
function assertJsonEquals(expected, actual) {
diff --git a/test/widgetsSpec.js b/test/widgetsSpec.js
index d041220b..6123e229 100644
--- a/test/widgetsSpec.js
+++ b/test/widgetsSpec.js
@@ -19,7 +19,7 @@ describe("input widget", function(){
});
it('should input-text auto init and handle keyup/change events', function(){
- compile('<input type="Text" name="name" value="Misko" ng-action="count = count + 1" ng-init="count=0"/>');
+ compile('<input type="Text" name="name" value="Misko" ng-change="count = count + 1" ng-init="count=0"/>');
expect(scope.$get('name')).toEqual("Misko");
expect(scope.$get('count')).toEqual(0);
@@ -100,20 +100,20 @@ describe("input widget", function(){
expect(scope.$get('name')).toEqual('Kai');
});
- it('should call ng-action on button click', function(){
- compile('<input type="button" value="Click Me" ng-action="clicked = true"/>');
+ it('should call ng-change on button click', function(){
+ compile('<input type="button" value="Click Me" ng-change="clicked = true"/>');
element.click();
expect(scope.$get('clicked')).toEqual(true);
});
it('should support button alias', function(){
- compile('<button ng-action="clicked = true">Click Me</button>');
+ compile('<button ng-change="clicked = true">Click Me</button>');
element.click();
expect(scope.$get('clicked')).toEqual(true);
});
it('should type="checkbox"', function(){
- compile('<input type="checkbox" name="checkbox" checked ng-action="action = true"/>');
+ compile('<input type="checkbox" name="checkbox" checked ng-change="action = true"/>');
expect(scope.$get('checkbox')).toEqual(true);
element.click();
expect(scope.$get('checkbox')).toEqual(false);
@@ -124,8 +124,8 @@ describe("input widget", function(){
it('should type="radio"', function(){
compile('<div>' +
- '<input type="radio" name="chose" value="A" ng-action="clicked = 1"/>' +
- '<input type="radio" name="chose" value="B" checked ng-action="clicked = 2"/>' +
+ '<input type="radio" name="chose" value="A" ng-change="clicked = 1"/>' +
+ '<input type="radio" name="chose" value="B" checked ng-change="clicked = 2"/>' +
'</div>');
var a = element[0].childNodes[0];
var b = element[0].childNodes[1];
@@ -181,8 +181,8 @@ describe("input widget", function(){
expect(element.hasClass('ng-exception')).toBeTruthy();
});
- it('should report error on ng-action exception', function(){
- compile('<button ng-action="a-2=x">click</button>');
+ it('should report error on ng-change exception', function(){
+ compile('<button ng-change="a-2=x">click</button>');
element.click();
expect(element.hasClass('ng-exception')).toBeTruthy();
});