Я пытаюсь провести простой тест метода внутри файла - используя Жасмин с Кармой:
Тестовые спецификации
define([
"water/EventUtils",
"_Common"
], function(
EventUtils,
_Common
) {
describe("_Common", () => {
describe('getDatasourceConfigFromId', () => {
it("makes sure EventUtils method called correctly", () => {
const queryMethod = spyOn(EventUtils.DataSourceConfigStore, 'query');
_Common.getDatasourceConfigFromId('123');
expect(queryMethod).toHaveBeenCalledWith('123');
});
});
});
});
Это то, что я тестирую в _Common.js:
getDatasourceConfigFromId: function(ds_id) {
return EventUtils.DataSourceConfigStore.query({
id: ds_id
})[0];
}
Это мой издевательский EventUtils.js
define([], function() {
return {
DataSourceConfigStore: {
query: (data) => [data]
}
};
});
Каждый раз, когда я запускаю тест, я получаю:
TypeError: EventUtils.DataSourceConfigStore.query (...) не определен в http://path/to/_Common.js (строка 9)
У кого-нибудь есть идеи, почему это не определено?
если я
console.log(EventUtils.DataSourceConfigStore.query)
возвращает
(data) => [data]