From 7c49b255483c0381c23de41d108800f93ebc1979 Mon Sep 17 00:00:00 2001 From: Misko Hevery Date: Mon, 12 Apr 2010 19:05:39 -0700 Subject: $invalid widget clear on switch change --- test/servicesSpec.js | 13 ++++++++++++- test/widgetsSpec.js | 5 +++++ 2 files changed, 17 insertions(+), 1 deletion(-) (limited to 'test') diff --git a/test/servicesSpec.js b/test/servicesSpec.js index 91cc1f0e..618d9a15 100644 --- a/test/servicesSpec.js +++ b/test/servicesSpec.js @@ -80,11 +80,22 @@ describe("service $invalidWidgets", function(){ }); it("should count number of invalid widgets", function(){ - var scope = compile('').$init(); + var scope = compile('').$init(); expect(scope.$invalidWidgets.length).toEqual(1); scope.price = 123; scope.$eval(); expect(scope.$invalidWidgets.length).toEqual(0); scope.$element.remove(); + scope.price = 'abc'; + scope.$eval(); + expect(scope.$invalidWidgets.length).toEqual(1); + + jqLite(document.body).append(scope.$element); + scope.$invalidWidgets.clearOrphans(); + expect(scope.$invalidWidgets.length).toEqual(1); + + jqLite(document.body).html(''); + scope.$invalidWidgets.clearOrphans(); + expect(scope.$invalidWidgets.length).toEqual(0); }); }); diff --git a/test/widgetsSpec.js b/test/widgetsSpec.js index c6158c37..c64f03ca 100644 --- a/test/widgetsSpec.js +++ b/test/widgetsSpec.js @@ -221,10 +221,15 @@ describe('ng:switch', function(){ it('should call init on switch', function(){ var scope = compile('
{{name}}
'); + var cleared = false; scope.url = 'a'; + scope.$invalidWidgets = {clearOrphans: function(){ + cleared = true; + }}; scope.$init(); expect(scope.name).toEqual(undefined); expect(scope.$element.text()).toEqual('works'); + expect(cleared).toEqual(true); }); }); -- cgit v1.2.3