describe('Testing Angular JS Test Suite', function() {
//before each test, use this module
beforeEach(module('Testing'));
describe('Test Controller', function() {
//just think what should the controller do
//used to inject angular components into test
var scope,ctrl;
//creates an isolate scope
scope={};
beforeEach(function(){
inject(function($controller,$rootScope){
//$rootScope.$new creates a new instance of $rootScope.Scope that inherits from $rootScope.
//In other words, it creates a new child scope of $rootScope.
//new child scope of $rootScope
//alternative is to use $rootScope itself.
//Doing so might create a mess since it might be used all over the place
//assign ctrl to angular controller
//if an object is placed in the scope then it returns the scope
//like saying
/*
$scope {
title:''
}
put in an object and it gives back the isolate scope
*/
//passing in an isolate scope, and it returns the scope
ctrl=$controller('TestingAngularControl',{$scope:scope});
console.log(ctrl);
});
});
afterEach(function(){
//cleanup code goes here
});
it('should initialize the title in the scope', function() {
//this is from angular-mocks and it include the module we created in our app
//the value to check with the value to check against
expect(scope.title).toBeDefined();
expect(scope.title).toBe('Testing Angular Controller');
});
});
});
В комментариях я просто пытаюсь понять, что делает область, когда она передается как объект.Я предполагаю, что объект переходит в объект emtpy и angularjs возвращает изолированную область видимости от rootScope из этого?Я просто хочу убедиться, что мое понимание верно.Это angularjs, я знаю, что он устарел, но все еще заинтересован.