diff options
| author | Vojta Jina | 2012-01-20 14:04:53 -0800 |
|---|---|---|
| committer | Vojta Jina | 2012-01-23 13:11:12 -0800 |
| commit | dbffbefb7cd7af2ac063c95378a035aa9fbbd2ff (patch) | |
| tree | 047f7ae83c0573e1f1c22c44cba7644a1ab464b1 /test/service/controllerSpec.js | |
| parent | 0196411dbe179afe24f4faa6d6503ff3f69472da (diff) | |
| download | angular.js-dbffbefb7cd7af2ac063c95378a035aa9fbbd2ff.tar.bz2 | |
refactor($controller): Add $controller service for instantiating controllers
So that we can allow user to override this service and use BC hack:
https://gist.github.com/1649788
Diffstat (limited to 'test/service/controllerSpec.js')
| -rw-r--r-- | test/service/controllerSpec.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/test/service/controllerSpec.js b/test/service/controllerSpec.js new file mode 100644 index 00000000..8b12eceb --- /dev/null +++ b/test/service/controllerSpec.js @@ -0,0 +1,38 @@ +'use strict'; + +describe('$controller', function() { + var $controller; + + beforeEach(inject(function($injector) { + $controller = $injector.get('$controller'); + })); + + it('should return instance of given controller class', function() { + var MyClass = function() {}, + ctrl = $controller(MyClass); + + expect(ctrl).toBeDefined(); + expect(ctrl instanceof MyClass).toBe(true); + }); + + it('should inject arguments', inject(function($http) { + var MyClass = function($http) { + this.$http = $http; + }; + + var ctrl = $controller(MyClass); + expect(ctrl.$http).toBe($http); + })); + + + it('should inject given scope', function() { + var MyClass = function($scope) { + this.$scope = $scope; + }; + + var scope = {}, + ctrl = $controller(MyClass, scope); + + expect(ctrl.$scope).toBe(scope); + }); +}); |
