angular.js/test/ngScenario/ScenarioSpec.js
Andreas Marek 3fdbe81a33 feat(scenario): expose jQuery for usage outside of angular scenario
The global jQuery reference is removed by angular scenario and only a local scoped reference is kept. To make jQuery available for other code, a new reference angular.scenario.jQuery is added.
2013-07-31 15:50:12 -07:00

44 lines
1.4 KiB
JavaScript

'use strict';
describe("ScenarioSpec: Compilation", function() {
var element;
afterEach(function() {
dealoc(element);
});
describe('compilation', function() {
it("should compile dom node and return scope", inject(function($rootScope, $compile) {
var node = jqLite('<div ng-init="a=1">{{b=a+1}}</div>')[0];
element = $compile(node)($rootScope);
$rootScope.$digest();
expect($rootScope.a).toEqual(1);
expect($rootScope.b).toEqual(2);
}));
it("should compile jQuery node and return scope", inject(function($rootScope, $compile) {
element = $compile(jqLite('<div>{{a=123}}</div>'))($rootScope);
$rootScope.$digest();
expect(jqLite(element).text()).toEqual('123');
}));
it("should compile text node and return scope", inject(function($rootScope, $compile) {
element = $compile('<div>{{a=123}}</div>')($rootScope);
$rootScope.$digest();
expect(jqLite(element).text()).toEqual('123');
}));
});
describe('jQuery', function () {
it('should exist on the angular.scenario object', function () {
expect(angular.scenario.jQuery).toBeDefined();
});
it('should have common jQuery methods', function () {
var jQuery = angular.scenario.jQuery;
expect(typeof jQuery).toEqual('function');
expect(typeof jQuery('<div></div>').html).toEqual('function');
})
});
});