Требуются ли стажеры для загрузки теста? Я использую этот подход для имитации зависимостей для модуля, который я хочу протестировать, поэтому мне интересно, будет ли это работать и с Intern.
Как имитировать зависимости в тестах Intern
Ответы (2)
Intern использует загрузчик AMD Dojo Toolkit. Чтобы смоделировать зависимости, вы должны просто использовать стандартную функцию AMD map
. В вашем файле конфигурации Intern что-то вроде этого должно делать то, что вам нужно:
define({
…,
loader: {
map: {
myPackage: {
'myPackage/foo': 'myPackage/mocks/foo',
'herp': 'myPackage/mocks/herp',
'derp': 'myPackage/mocks/derp'
}
}
}
});
См. https://github.com/amdjs/amdjs-api/wiki/Common-Config#map- для получения дополнительной информации о map
.
person
C Snover
schedule
01.05.2013
Как бы я тогда издевался над тестом? Я не знаком с реализацией Dojos AMD, поэтому можно ли создать собственный контекст для каждого теста, как описано в SO, который я упомянул в своем вопросе?
- person Andreas Köberle; 02.05.2013
В настоящее время загрузчик Dojo не поддерживает точно такие же вещи, как RequireJS, в отношении создания
require
с независимыми конфигурациями. Это функция, которую я хотел бы добавить, чтобы лучше поддерживать этот вариант использования. Вы можете сделать что-то подобное сегодня, объединив функцию undef
с map
, но это не так изящно, поэтому я бы не рекомендовал делать это напрямую. Тем временем вы сможете просто заменить загрузку dojo/dojo.js
на require.js
(в client.html
, client.js
и runner.js
), и все должно работать. Пожалуйста, введите запрос функции.
- person C Snover; 02.05.2013
Intern 1.5 будет включать в себя
require.undef
API, поэтому вы можете удалить модули из кеша, если вам нужно изменить конфигурацию, чтобы имитировать зависимость AMD для теста.
- person C Snover; 25.02.2014
Не уверен, что это будет полезно. Я создал модуль для имитации зависимостей модулей с помощью загрузчика Dojo: https://github.com/stdavis/StubModule< /а>
Хорошо работает для моих нужд. Я не вижу причин, по которым это не сработает в стажере, но еще не пробовал.
person
Scott
schedule
07.05.2013