我得到所有的時間「遇到聲明異常」。我正在爲我的工廠寫第一個單元測試。似乎嘲笑並不真正奏效。單元測試+茉莉花+角狀態
做參考的路徑是這樣的:
///<reference path="~/App/js/jasmine/jasmine.js"/>
///<reference path="~/App/js/lib/40_Angular/angular.js"/>
///<reference path="~/App/js/jasmine/angular-mocks.js"/>
///<reference path="~/App/app.js"/>
///<reference path="~/App/services/userService.js"/>
我的抽樣檢驗是這樣的:
describe("userService", function() {
beforeEach(module("issApp"));
describe("userService", function() {
var userService;
beforeEach(inject(function() {
userService = $injector.get('userService');
}));
it('should be true', function() {
expect(true).toBeDefined();
});
it('should have a farbSchema', function() {
expect(userService.getParameter("ngFarbSchema")).toBeDefined();
});
});
我app.js聲明如下:
iss.app = angular.module("issApp", ["ng", "ui.router" ...]);
userService.js聲明如下:
iss.app.factory("userService", function ($q, $http) {
return {
getParameter: getParameter,
setParameter: setParameter,
...
};
function getParameter(parameterName) {
var deferred = $q.defer();
$http({
url: iss.urls.base + iss.urls.getuserparam,
method: "GET",
params: { parameterName: parameterName }
})
.success(function (data) {
deferred.resolve(data);
})
.error(function (error) {
console.log("Fehler beim Aufruf userService.getParameter(): " + JSON.stringify(error));
});
return deferred.promise;
}
...
});
這是我使用的工具的版本:
ReSharper的:8.2.1
角:1.5.8
的Visual Studio:2013
茉莉花:2.4.1
我認爲這將是更好的您發佈工廠的代碼... – happyZZR1400
好吧,我增加了一些代碼工廠。 –