mirror of
https://github.com/zhigang1992/angular.js.git
synced 2026-04-24 03:55:49 +08:00
fix(modules): stop leaking global variables in tests
The routeUtils.js file was declaring a number of functions that were leaking into other modules such as ngMocks causing tests to pass incorrectly. Closes #4360
This commit is contained in:
committed by
Igor Minar
parent
b019a48bb1
commit
07272608d8
@@ -74,11 +74,11 @@ beforeEach(function() {
|
||||
this.message = function() {
|
||||
var expected;
|
||||
if (this.actual.message && this.actual.name == 'Error') {
|
||||
expected = toJson(this.actual.message);
|
||||
expected = angular.toJson(this.actual.message);
|
||||
} else {
|
||||
expected = toJson(this.actual);
|
||||
expected = angular.toJson(this.actual);
|
||||
}
|
||||
return "Expected " + expected + " to be an Error with message " + toJson(message);
|
||||
return "Expected " + expected + " to be an Error with message " + angular.toJson(message);
|
||||
};
|
||||
return this.actual.name == 'Error' && this.actual.message == message;
|
||||
},
|
||||
@@ -187,9 +187,9 @@ beforeEach(function() {
|
||||
codeRegex = new RegExp('^\\[' + escapeRegexp(namespace) + ':' + escapeRegexp(code) + '\\]'),
|
||||
not = this.isNot ? "not " : "",
|
||||
regex = jasmine.isA_("RegExp", content) ? content :
|
||||
isDefined(content) ? new RegExp(escapeRegexp(content)) : undefined;
|
||||
angular.isDefined(content) ? new RegExp(escapeRegexp(content)) : undefined;
|
||||
|
||||
if(!isFunction(this.actual)) {
|
||||
if(!angular.isFunction(this.actual)) {
|
||||
throw new Error('Actual is not a function');
|
||||
}
|
||||
|
||||
@@ -215,7 +215,7 @@ beforeEach(function() {
|
||||
return result;
|
||||
}
|
||||
|
||||
if (isDefined(regex)) {
|
||||
if (angular.isDefined(regex)) {
|
||||
return regex.test(exceptionMessage);
|
||||
}
|
||||
return result;
|
||||
|
||||
@@ -9,7 +9,7 @@ describe('private mocks', function() {
|
||||
var stylesheet = createMockStyleSheet($document, $window);
|
||||
expect(doc.styleSheets.length).toBe(count + 1);
|
||||
|
||||
jqLite(doc.body).append($rootElement);
|
||||
angular.element(doc.body).append($rootElement);
|
||||
|
||||
var elm = $compile('<div class="padded">...</div>')($rootScope);
|
||||
$rootElement.append(elm);
|
||||
|
||||
2
test/ngMock/angular-mocksSpec.js
vendored
2
test/ngMock/angular-mocksSpec.js
vendored
@@ -160,7 +160,7 @@ describe('ngMock', function() {
|
||||
|
||||
|
||||
describe('$log', function() {
|
||||
forEach([true, false], function(debugEnabled) {
|
||||
angular.forEach([true, false], function(debugEnabled) {
|
||||
describe('debug ' + debugEnabled, function() {
|
||||
beforeEach(module(function($logProvider) {
|
||||
$logProvider.debugEnabled(debugEnabled);
|
||||
|
||||
@@ -279,7 +279,7 @@ describe('ngView', function() {
|
||||
|
||||
it('should be async even if served from cache', function() {
|
||||
module(function($routeProvider) {
|
||||
$routeProvider.when('/foo', {controller: noop, templateUrl: 'myUrl1'});
|
||||
$routeProvider.when('/foo', {controller: angular.noop, templateUrl: 'myUrl1'});
|
||||
});
|
||||
|
||||
inject(function($route, $rootScope, $location, $templateCache) {
|
||||
@@ -498,16 +498,16 @@ describe('ngView', function() {
|
||||
$location.url('/foo');
|
||||
$rootScope.$digest();
|
||||
|
||||
forEach(element.contents(), function(node) {
|
||||
angular.forEach(element.contents(), function(node) {
|
||||
if(node.nodeType == 3 /* text node */) {
|
||||
expect(jqLite(node).scope()).not.toBe($route.current.scope);
|
||||
expect(jqLite(node).controller()).not.toBeDefined();
|
||||
expect(angular.element(node).scope()).not.toBe($route.current.scope);
|
||||
expect(angular.element(node).controller()).not.toBeDefined();
|
||||
} else if(node.nodeType == 8 /* comment node */) {
|
||||
expect(jqLite(node).scope()).toBe(element.scope());
|
||||
expect(jqLite(node).controller()).toBe(element.controller());
|
||||
expect(angular.element(node).scope()).toBe(element.scope());
|
||||
expect(angular.element(node).controller()).toBe(element.controller());
|
||||
} else {
|
||||
expect(jqLite(node).scope()).toBe($route.current.scope);
|
||||
expect(jqLite(node).controller()).toBeDefined();
|
||||
expect(angular.element(node).scope()).toBe($route.current.scope);
|
||||
expect(angular.element(node).controller()).toBeDefined();
|
||||
}
|
||||
});
|
||||
});
|
||||
@@ -530,7 +530,7 @@ describe('ngView animations', function() {
|
||||
// we need to run animation on attached elements;
|
||||
return function(_$rootElement_) {
|
||||
$rootElement = _$rootElement_;
|
||||
body = jqLite(document.body);
|
||||
body = angular.element(document.body);
|
||||
};
|
||||
}));
|
||||
|
||||
@@ -541,8 +541,8 @@ describe('ngView animations', function() {
|
||||
|
||||
|
||||
beforeEach(module(function($provide, $routeProvider) {
|
||||
$routeProvider.when('/foo', {controller: noop, templateUrl: '/foo.html'});
|
||||
$routeProvider.when('/bar', {controller: noop, templateUrl: '/bar.html'});
|
||||
$routeProvider.when('/foo', {controller: angular.noop, templateUrl: '/foo.html'});
|
||||
$routeProvider.when('/bar', {controller: angular.noop, templateUrl: '/bar.html'});
|
||||
return function($templateCache) {
|
||||
$templateCache.put('/foo.html', [200, '<div>data</div>', {}]);
|
||||
$templateCache.put('/bar.html', [200, '<div>data2</div>', {}]);
|
||||
|
||||
@@ -25,7 +25,7 @@ describe('$route', function() {
|
||||
|
||||
module(function($routeProvider) {
|
||||
$routeProvider.when('/Book/:book/Chapter/:chapter',
|
||||
{controller: noop, templateUrl: 'Chapter.html'});
|
||||
{controller: angular.noop, templateUrl: 'Chapter.html'});
|
||||
$routeProvider.when('/Blank', {});
|
||||
});
|
||||
inject(function($route, $location, $rootScope) {
|
||||
@@ -69,9 +69,9 @@ describe('$route', function() {
|
||||
|
||||
module(function($routeProvider) {
|
||||
$routeProvider.when('/Book1/:book/Chapter/:chapter/:highlight*/edit',
|
||||
{controller: noop, templateUrl: 'Chapter.html'});
|
||||
{controller: angular.noop, templateUrl: 'Chapter.html'});
|
||||
$routeProvider.when('/Book2/:book/:highlight*/Chapter/:chapter',
|
||||
{controller: noop, templateUrl: 'Chapter.html'});
|
||||
{controller: angular.noop, templateUrl: 'Chapter.html'});
|
||||
$routeProvider.when('/Blank', {});
|
||||
});
|
||||
inject(function($route, $location, $rootScope) {
|
||||
@@ -128,9 +128,9 @@ describe('$route', function() {
|
||||
|
||||
module(function($routeProvider) {
|
||||
$routeProvider.when('/Book1/:book/Chapter/:chapter/:highlight*/edit',
|
||||
{controller: noop, templateUrl: 'Chapter.html', caseInsensitiveMatch: true});
|
||||
{controller: angular.noop, templateUrl: 'Chapter.html', caseInsensitiveMatch: true});
|
||||
$routeProvider.when('/Book2/:book/:highlight*/Chapter/:chapter',
|
||||
{controller: noop, templateUrl: 'Chapter.html'});
|
||||
{controller: angular.noop, templateUrl: 'Chapter.html'});
|
||||
$routeProvider.when('/Blank', {});
|
||||
});
|
||||
inject(function($route, $location, $rootScope) {
|
||||
@@ -618,8 +618,8 @@ describe('$route', function() {
|
||||
|
||||
inject(function($route, $httpBackend, $location, $rootScope, $routeParams) {
|
||||
var log = '';
|
||||
$rootScope.$on('$routeChangeStart', function(e, next) { log += '$before' + toJson($routeParams) + ';'});
|
||||
$rootScope.$on('$routeChangeSuccess', function(e, next) { log += '$after' + toJson($routeParams) + ';'});
|
||||
$rootScope.$on('$routeChangeStart', function(e, next) { log += '$before' + angular.toJson($routeParams) + ';'});
|
||||
$rootScope.$on('$routeChangeSuccess', function(e, next) { log += '$after' + angular.toJson($routeParams) + ';'});
|
||||
|
||||
$httpBackend.whenGET('r1.html').respond('R1');
|
||||
$httpBackend.whenGET('r2.html').respond('R2');
|
||||
@@ -876,7 +876,7 @@ describe('$route', function() {
|
||||
var reloaded = jasmine.createSpy('route reload');
|
||||
|
||||
module(function($routeProvider) {
|
||||
$routeProvider.when('/foo', {controller: noop});
|
||||
$routeProvider.when('/foo', {controller: angular.noop});
|
||||
});
|
||||
|
||||
inject(function($route, $location, $rootScope, $routeParams) {
|
||||
@@ -901,7 +901,7 @@ describe('$route', function() {
|
||||
routeUpdate = jasmine.createSpy('route update');
|
||||
|
||||
module(function($routeProvider) {
|
||||
$routeProvider.when('/foo', {controller: noop, reloadOnSearch: false});
|
||||
$routeProvider.when('/foo', {controller: angular.noop, reloadOnSearch: false});
|
||||
});
|
||||
|
||||
inject(function($route, $location, $rootScope) {
|
||||
@@ -931,7 +931,7 @@ describe('$route', function() {
|
||||
var routeChange = jasmine.createSpy('route change');
|
||||
|
||||
module(function($routeProvider) {
|
||||
$routeProvider.when('/foo/:fooId', {controller: noop, reloadOnSearch: false});
|
||||
$routeProvider.when('/foo/:fooId', {controller: angular.noop, reloadOnSearch: false});
|
||||
});
|
||||
|
||||
inject(function($route, $location, $rootScope) {
|
||||
@@ -963,8 +963,8 @@ describe('$route', function() {
|
||||
var routeParamsWatcher = jasmine.createSpy('routeParamsWatcher');
|
||||
|
||||
module(function($routeProvider) {
|
||||
$routeProvider.when('/foo', {controller: noop});
|
||||
$routeProvider.when('/bar/:barId', {controller: noop, reloadOnSearch: false});
|
||||
$routeProvider.when('/foo', {controller: angular.noop});
|
||||
$routeProvider.when('/bar/:barId', {controller: angular.noop, reloadOnSearch: false});
|
||||
});
|
||||
|
||||
inject(function($route, $location, $rootScope, $routeParams) {
|
||||
|
||||
Reference in New Issue
Block a user