Я использую Метеор и пишу юнит-тесты для Коллекции. У меня есть методы Helper для коллекции в дополнение к обычным JS функциям.
Т.е.
Collection.helpers({
helperFn: function () {
return 'foo';
}
});
//And in the same file
function bar() {
return "bar";
}
Тогда в моем тестовом файле у меня есть что-то вроде
import { Collection } from '../collections'
//Use Factory or Stub to create test Document
//This then works just fine and I can assert, etc..
testDoc.helperFn
Мой вопрос связан с желанием протестировать только обычную функцию 'bar' JS. Использование классов ES6 не представляет особой проблемы, потому что тогда я могу просто экспортировать весь класс и вызвать любую функцию с его экземпляром. Но с помощью Meteor я нахожу единственный способ получить доступ к этой функции - использовать ключевое слово «export».
Итак, в моем файле Collection
export function bar ({ return bar; });
А теперь в моем тестовом файле Я бы сделал что-то вроде
import { bar } from '../collection'
Я бы не стал добавлять оператор экспорта при каждом тестировании новой функции. Есть ли способ обойти это или это не имеет большого значения?