В настоящее время я работаю с sfPhpUnitPlugin над проектом sf 1.4, и у меня возникла проблема с тестированием плагинов.
У меня есть плагин, который можно использовать в нескольких приложениях, и я хотел бы иметь набор тестов для каждого приложения. Как я могу организовать свои тесты, чтобы я мог легко сопоставлять приборы и тесты с конкретным приложением?
Мои наборы являются копиями этого шаблона, который поставляется с sfPhunitPlugin:
<?php
class {className} extends sfBasePhpunitTestSuite
implements sfPhpunitContextInitilizerInterface
{
/**
* Dev hook for custom "setUp" stuff
*/
protected function _start()
{
$this->_initFilters();
}
/**
* Dev hook for custom "tearDown" stuff
*/
protected function _end()
{
}
protected function _initFilters()
{
$filters = sfConfig::get('app_sfPhpunitPlugin_filter', array());
foreach ($filters as $filter) {
PHPUnit_Util_Filter::addDirectoryToFilter($filter['path'], $filter['ext']);
}
}
public function getApplication()
{
return '{application}';
}
}
Я полагаю, мне нужно добавить что-то вроде этого в app.yml каждого приложения:
testunit:
sfPhpunitPlugin:
filter:
- {path: 'backend', ext: '.php'}
но мне трудно определить, как будет выглядеть ключ пути, у меня сложилось впечатление, что это должен быть полный путь, потому что include_path не содержит путь плагина, который я тестирую, когда вызывается addDirectoryToFilter()
. Какие-нибудь советы? Кто-нибудь сделал это еще?