Ho una configurazione come questa:
angular.module('myModule', ['ui.router'])
.config(['$stateProvider', function($stateProvider) {
$stateProvider
.state('app.home', {
abstract: true,
url: '/home',
template: '<div>Foo Bar</div>'
});
}]);
e una prova di unità utilizzando il gelsomino in questo modo:
'use strict';
describe('Module: myModule', function() {
var $rootScope, $state;
beforeEach(module('ui.router'));
beforeEach(module('myModule'));
beforeEach(inject(function(_$rootScope_, _$state_) {
$state = _$state_;
$rootScope = _$rootScope_;
}));
it('must have a route state for home', function(){
console.log($state.get('app.home')); // this returns null
});
});
Comunque io impossibile ottenere lo stato nella configurazione per visualizzare l'array restituito da $state.get()
Ho anche controllato e il file contenente la configurazione è caricato ed è lì. Qualcuno può dire cosa sto facendo di sbagliato? Fondamentalmente voglio solo verificare se gli stati Mi aspetto sono esistenti nella configurazione di "MyModule"
Sì, l'aggiunta di uno stato di genitore "app" sembra per risolvere il problema. Tuttavia aggiungere l'altro modulo come dipendenza non funzionerebbe sulla mia parte. Come potrei essere in grado di prendere in giro lo stato genitore solo sul test dell'unità, se è possibile? – reikyoushin
Bello, grazie mille! – reikyoushin