AngularJS单元测试中缺少AngularUI路由器状态
我正在尝试测试为AngularJS应用程序的AngularUI路由器定义的路由。测试使用karma/jasmine设置。我在测试中注入$state服务,以检查是否定义了所有相关的状态。但是,$state服务只列出一个空状态。以下是模块设置和测试设置的外观: 模块定义: 测试定义:AngularJS单元测试中缺少AngularUI路由器状态,angularjs,unit-testing,jasmine,angular-ui-router,Angularjs,Unit Testing,Jasmine,Angular Ui Router,我正在尝试测试为AngularJS应用程序的AngularUI路由器定义的路由。测试使用karma/jasmine设置。我在测试中注入$state服务,以检查是否定义了所有相关的状态。但是,$state服务只列出一个空状态。以下是模块设置和测试设置的外观: 模块定义: 测试定义: 任何想法,为什么$state服务可能缺少路由器状态定义?你确定你有v0.3.0的ui路由器吗?我使用的是v0.2.15的ui.router。这不是最近的一个吗?请看API页面啊,我明白了。据我所知,get调用应该在v0
任何想法,为什么$state服务可能缺少路由器状态定义?你确定你有v0.3.0的ui路由器吗?我使用的是v0.2.15的ui.router。这不是最近的一个吗?请看API页面啊,我明白了。据我所知,get调用应该在v0.2.15中工作。另一种方法是什么?
angular.module('module', ['ui.router'])
.config(function($stateProvider) {
$stateProvider
.state('state01', {
url: '/state01'
})
.state('state02', {
url: '/state02'
});
});
describe('module', function() {
var $state;
beforeEach(module('module'));
beforeEach(inject(function (_$state_) {
$state = _$state_;
}));
describe('module config', function() {
it('should test stuff...', function() {
console.log($state.get());
// prints: [Object{name: '', url: '^', views: null, abstract: true}]
});
});
});