Я использую Ionic framework для пользовательских приложений. В этом процессе я пытаюсь написать Unit test для factory datastoreServices
, который имеет зависимость от DomainService
и $http
. Я доволен тем, что тестировал тесты Jasmine Unit.
Мои заводы следующие.
app.factory("datastoreServices", ["$http", function($http) {
return {
getData: function(data, DomainService) {
return $http.post(DomainService.host + 'factor', data);
}
};
}]);
app.factory('DomainService', function() { //here
if (ionic.Platform.isAndroid()) {
return {
host: 'http://10.0.2.2:7001/'
}
}
return {
host: 'http://localhost:7001/'
}
})
И мой скелет Unit test выглядит следующим образом. Он имеет две зависимости, поэтому не мог понять, как действовать. Это то, что я получил до сих пор в файле Unit test.
describe(
'datastoreServices',
function() {
beforeEach(module('Myapp'));
describe('getData'),
function() {
it("Should return correct values", inject(function(datastoreServices, DomainService, $httpBackend) {
expect(datastoreServices.getData(httpBackend.. /***something here!**/ )
.toEqual("2.2");
}))
}
У меня очень мало знаний о насмешливости и материалах. Может кто-нибудь помочь мне проверить, что factory datastoreServices
. Следующие вещи должны быть протестированы:
- Является ли сообщение Http правильными вызовами?
- Возвращает ли функция правильное обещание?
Вот аналогичный сценарий приложения в plnkr.
Idk, если я слишком много спрашиваю. Заранее спасибо.