angular.mock.inject
ng
NOTE: This function is also published on window for easy access.
The inject function wraps a function into an injectable function. The inject() creates new
instance of $injector
per test, which is then used for
resolving references.
See also module
Example of what a typical jasmine tests looks like with the inject method.
angular.module('myApplicationModule', []) .value('mode', 'app') .value('version', 'v1.0.1'); describe('MyApp', function() { // You need to load modules that you want to test, // it loads only the "ng" module by default. beforeEach(module('myApplicationModule')); // inject() is used to inject arguments of all given functions it('should provide a version', inject(function(mode, version) { expect(version).toEqual('v1.0.1'); expect(mode).toEqual('app'); })); // The inject and module method can also be used inside of the it or beforeEach it('should override a version and test the new version is injected', function() { // module() takes functions or strings (module aliases) module(function($provide) { $provide.value('version', 'overridden'); // override version here }); inject(function(version) { expect(version).toEqual('overridden'); }); )); });
angular.mock.inject(fns);
Param | Type | Details |
---|---|---|
fns | ...Function | any number of functions which will be injected using the injector. |