diff options
| author | Misko Hevery | 2011-03-23 09:33:29 -0700 | 
|---|---|---|
| committer | Vojta Jina | 2011-08-02 01:00:03 +0200 | 
| commit | 8f0dcbab804180828d6859b1340c86cf161209fb (patch) | |
| tree | d13d47d47a1889cb7c96a87cecacd2e25307d51c /test/ScenarioSpec.js | |
| parent | 1f4b417184ce53af15474de065400f8a686430c5 (diff) | |
| download | angular.js-8f0dcbab804180828d6859b1340c86cf161209fb.tar.bz2 | |
feat(scope): new and improved scope implementation
- Speed improvements (about 4x on flush phase)
- Memory improvements (uses no function closures)
- Break $eval into $apply, $dispatch, $flush
- Introduced $watch and $observe
Breaks angular.equals() use === instead of ==
Breaks angular.scope() does not take parent as first argument
Breaks scope.$watch() takes scope as first argument
Breaks scope.$set(), scope.$get are removed
Breaks scope.$config is removed
Breaks $route.onChange callback has not "this" bounded
Diffstat (limited to 'test/ScenarioSpec.js')
| -rw-r--r-- | test/ScenarioSpec.js | 23 | 
1 files changed, 3 insertions, 20 deletions
| diff --git a/test/ScenarioSpec.js b/test/ScenarioSpec.js index 17a10ae9..ce8b0dec 100644 --- a/test/ScenarioSpec.js +++ b/test/ScenarioSpec.js @@ -15,41 +15,24 @@ describe("ScenarioSpec: Compilation", function(){      it("should compile dom node and return scope", function(){        var node = jqLite('<div ng:init="a=1">{{b=a+1}}</div>')[0];        scope = angular.compile(node)(); +      scope.$flush();        expect(scope.a).toEqual(1);        expect(scope.b).toEqual(2);      });      it("should compile jQuery node and return scope", function(){        scope = compile(jqLite('<div>{{a=123}}</div>'))(); +      scope.$flush();        expect(jqLite(scope.$element).text()).toEqual('123');      });      it("should compile text node and return scope", function(){        scope = angular.compile('<div>{{a=123}}</div>')(); +      scope.$flush();        expect(jqLite(scope.$element).text()).toEqual('123');      });    }); -  describe('scope', function(){ -    it("should have $set, $get, $eval, $updateView methods", function(){ -      scope = angular.compile('<div>{{a}}</div>')(); -      scope.$eval("$invalidWidgets.push({})"); -      expect(scope.$set("a", 2)).toEqual(2); -      expect(scope.$get("a")).toEqual(2); -      expect(scope.$eval("a=3")).toEqual(3); -      scope.$eval(); -      expect(jqLite(scope.$element).text()).toEqual('3'); -    }); - -    it("should have $ objects", function(){ -      scope = angular.compile('<div></div>')(angular.scope({$config: {a:"b"}})); -      expect(scope.$service('$location')).toBeDefined(); -      expect(scope.$get('$eval')).toBeDefined(); -      expect(scope.$get('$config')).toBeDefined(); -      expect(scope.$get('$config.a')).toEqual("b"); -    }); -  }); -    describe("configuration", function(){      it("should take location object", function(){        var url = "http://server/#?book=moby"; | 
