angularJSのテストにジャスミンを使用しています。私の見解では、「Controller as」構文を使用しています。
<div ng-controller="configCtrl as config">
<div> {{ config.status }} </div>
</div>
ジャスミンでこれらの「スコープ」変数を使用するにはどうすればよいですか? 「Controller as」とは何を指しますか? 私のテストは次のようになります。
describe('ConfigCtrl', function(){
var scope;
beforeEach(angular.mock.module('busybee'));
beforeEach(angular.mock.inject(function($rootScope){
scope = $rootScope.$new();
$controller('configCtrl', {$scope: scope});
}));
it('should have text = "any"', function(){
expect(scope.status).toBe("any");
});
});
scope.status
確かに、呼び出しは次のエラーで終了します。
Expected undefined to be "any".
UPDATE : コントローラー (TypeScript からコンパイルされた JavaScript) は次のようになります。
var ConfigCtrl = (function () {
function ConfigCtrl($scope) {
this.status = "any";
}
ConfigCtrl.$inject = ['$scope'];
return ConfigCtrl;
})();