我正在测试一个控制器 使用业力。
控制器的测试用例:
'use strict';
fdescribe('products', function() {
// load the controller's module
var ctrl, scope;
beforeEach(angular.mock.module('products'));
beforeEach(function() {
module('products', function($controllerProvider) {
$controllerProvider.register('productsController', function($scope) {
});
});
});
describe('controller', function() {
beforeEach(function() {
angular.mock.inject(function($controller, $rootScope) {
scope = $rootScope.$new();
ctrl = $controller('productsController', {
$scope: scope
});
})
});
it('controller is set', function() {
expect(ctrl.currentCategory).toBe("ALL_PRODUCTS");
});
});
});
我已经模拟了控制器所在的模块。 这里的预期代码给出错误,因为期望未定义为" ALL_PRODUCTS"。 controller.js:
(function() {
'use strict';
var productsController = function($rootScope, $scope) {
var vm = this;
vm.currentCategory = "ALL_PRODUCTS";
};
productsController.$inject = ['$rootScope', '$scope'];
module.exports = productsController;
})();
Module.js:
(function() {
'use strict';
module.exports = angular.module('products', ['common.services'])
.controller('productController', require('./controller.js'))
})();
任何帮助都将不胜感激。