Класс TestTask
Класс задач для создания и обновления тестовых файлов.
- AppShell
-
BakeTask -
TestTask
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Console/Command/Task/TestTask.php
Краткое описание свойств
-
$_fixturesprotectedВнутренний список фикстур, которые были добавлены до сих пор.array -
$baseTypespublicarrayСопоставление между пакетами и их базовыми классами + пакетами. Это используется для генерации вызова App::uses() для автоматической загрузки базовых классов, если разработчик забыл это сделать.
-
$classTypespublicТипы классов, для которых могут быть сгенерированы методы.array -
$pathpublicПуть к каталогу TESTS.string -
$taskspublicИспользуемые задачи.array
Унаследованные свойства
Краткое описание методов
- _addFixture() protected
Добавляет имя класса в список фикстур. Устанавливает префикс app. или plugin.plugin_name.
- _interactive() protectedОбрабатывает интерактивное создание
- _processController() protected
Обрабатывает все модели, связанные с контроллером, и генерирует список фикстур.
- _processModel() protected
Обрабатывает модель рекурсивно и извлекает все имена моделей, преобразуя их в имена фикстур.
- bake() publicЗавершает окончательные шаги по генерации данных для создания тестового случая.
- buildTestSubject() public
Создает экземпляр класса, который будет тестироваться. Так что фикстуры могут быть обнаружены
- execute() publicМетод выполнения, всегда используется для задач
- generateConstructor() publicГенерирует фрагмент кода конструктора для типа и имени класса
- generateFixtureList() public
Генерирует список фикстур, которые понадобятся для запуска этого теста на основе загруженных моделей.
- generateUses() publicГенерирует вызовы uses() для типа и имени класса
- getBaseType() publicПолучает базовый класс и имя пакета для данного типа.
- getClassName() publicПолучает выбранное пользователем имя класса для выбранного типа
- getObjectType() publicВзаимодействует с пользователем и получает выбранный тип. Может завершить сценарий.
- getOptionParser() publicПолучает экземпляр анализатора опций и настраивает его.
- getRealClassName() public
Получает фактическое имя класса из сокращенного обозначения Cake. Если имя класса уже имеет суффикс типа, тип не будет дублироваться.
- getTestableMethods() public
Получает методы, объявленные в данном классе. Методы родительских классов не будут возвращены
- getUserFixtures() publicВзаимодействует с пользователем, чтобы получить дополнительные фикстуры, которые он хочет использовать.
- hasMockClass() public
Требуется ли класс-модель для этого типа теста? Для контроллеров требуется класс-модель.
- isLoadableClass() publicПроверяет, загружен ли класс с указанным пакетом или может быть загружен.
- mapType() publicПреобразует типы, используемые TestTask, в конкретные типы, которые может использовать App::uses.
- testCaseFileName() public
Создает имя файла для тестового случая. Распознает суффиксы для контроллеров и получает путь к плагину, если необходимо.
- typeCanDetectFixtures() public
Проверяет, может ли выбранный тип найти собственные фикстуры. В настоящее время поддерживаются только модели и контроллеры
Подробное описание методов
_addFixture()source protected
_addFixture( string $name )
Добавляет имя класса в список фикстур. Устанавливает префикс app. или plugin.plugin_name.
Параметры
- строка
$name - Имя класса модели, для которой может потребоваться фикстура.
_interactive()source protected
_interactive( string $type null )
Обрабатывает интерактивное создание
Параметры
- строка
$typeнеобязательный null - Тип объекта, для которого создавать тестовый случай.
Возвращает
строка|логическое значение_processController()source protected
_processController( Controller $subject )
Обрабатывает все модели, связанные с контроллером, и генерирует список фикстур.
Параметры
-
Controller$subject - Контроллер, из которого извлекаются имена моделей.
_processModel()source protected
_processModel( Model $subject )
Обрабатывает модель рекурсивно и извлекает все имена моделей, преобразуя их в имена фикстур.
Параметры
-
Model$subject - Класс модели, для сканирования ассоциаций и извлечения фикстур.
bake()source public
bake( string $type , string $className )
Завершает окончательные шаги по генерации данных для создания тестового случая.
Параметры
- строка
$type - Тип объекта, для которого создавать тестовый случай, например, Model, Controller
- строка
$className - «Имя Cake» для класса, например, Posts для PostsController
Возвращает
строка|логическое значениеbuildTestSubject()source public
buildTestSubject( string $type , string $class )
Создает экземпляр класса, который будет тестироваться. Так что фикстуры могут быть обнаружены
Параметры
- строка
$type - Тип объекта, для которого генерируются тесты, например, контроллер
- строка
$class - Имя класса, для которого генерируется тест.
Возвращает
объектЭкземпляр класса, который будет тестироваться.
execute()source public
execute( )
Метод выполнения, всегда используется для задач
Переопределяет
BakeTask::execute() generateConstructor()source public
generateConstructor( string $type , string $fullClassName , string $plugin )
Генерирует фрагмент кода конструктора для типа и имени класса
Параметры
- строка
$type - Тип объекта, для которого генерируются тесты, например, контроллер
- строка
$fullClassName - Имя класса, для которого генерируется тест.
- строка
$plugin - Имя плагина.
Возвращает
массивФрагменты кода конструктора для создаваемого объекта.
generateFixtureList()source public
generateFixtureList( CakeObject $subject )
Генерирует список фикстур, необходимых для запуска этого теста, на основе загруженных моделей.
Параметры
-
CakeObject$subject - Объект, для которого нужно сгенерировать фикстуры.
Возвращает
массивМассив фикстур, которые следует включить в тест.
generateUses()source public
generateUses( string $type , string $realType , string $className )
Генерирует вызовы uses() для типа и имени класса
Параметры
- строка
$type - Тип объекта, для которого генерируются тесты, например, контроллер
- строка
$realType - Имя пакета для класса.
- строка
$className - Имя класса, для которого генерируется тест.
Возвращает
массивМассив, содержащий используемые классы
getBaseType()source public
getBaseType( string $type )
Получает базовый класс и имя пакета для заданного типа.
Параметры
- строка
$type Тип, в котором находится класс, для которого генерируется тест.
Возвращает
массивМассив (класс, тип)
Выбрасывает
CakeExceptionпри неверных типах.
getClassName()source public
getClassName( string $objectType )
Получает выбранное пользователем имя класса для выбранного типа
Параметры
- строка
$objectType - Тип объекта для отображения классов, например, модель, контроллер.
Возвращает
строкаИмя класса, выбранное пользователем.
getObjectType()source public
getObjectType( )
Взаимодействует с пользователем и получает выбранный им тип. Может завершить выполнение сценария.
Возвращает
строкаВыбранный пользователем тип.
getOptionParser()source public
getOptionParser( )
Получает экземпляр анализатора параметров и настраивает его.
Возвращает
ConsoleOptionParsergetRealClassName()source public
getRealClassName( string $type , string $class )
Получает фактическое имя класса из сокращенной формы Cake. Если имя класса уже имеет суффикс типа, тип не будет дублироваться.
Параметры
- строка
$type - Тип объекта, для которого генерируются тесты, например, контроллер
- строка
$class - имя класса, для которого генерируется тест.
Возвращает
строкаФактическое имя класса
getTestableMethods()source public
getTestableMethods( string $className )
Получает методы, объявленные в заданном классе. Методы родительских классов не будут возвращены.
Параметры
- строка
$className - Имя класса для анализа.
Возвращает
массивМассив имён методов.
getUserFixtures()source public
getUserFixtures( )
Взаимодействует с пользователем, чтобы получить дополнительные фикстуры, которые он хочет использовать.
Возвращает
массивМассив фикстур, которые пользователь хочет добавить.
hasMockClass()source public
hasMockClass( string $type )
Требуется ли класс-мока для этого типа теста? Для контроллеров требуется класс-мока.
Параметры
- строка
$type - Тип объекта, для которого генерируются тесты, например, контроллер.
Возвращает
булево значениеisLoadableClass()source public
isLoadableClass( string $package , string $class )
Проверяет, загружен ли класс с указанным пакетом или его можно загрузить.
Параметры
- строка
$package - Пакет объекта, для которого генерируются тесты, например, контроллер
- строка
$class - имя класса, для которого генерируется тест.
Возвращает
булево значениеmapType()source public
mapType( string $type , string $plugin )
Преобразует типы, используемые TestTask, в конкретные типы, которые может использовать App::uses.
Параметры
- строка
$type - Тип объекта, для которого генерируется тест.
- строка
$plugin - Имя плагина.
Возвращает
строкаВыбрасывает
CakeExceptionПри запросе неверных типов объектов.
testCaseFileName()source public
testCaseFileName( string $type , string $className )
Создаёт имя файла для тестового случая. Разрешает суффиксы для контроллеров и получает путь к плагину, если необходимо.
Параметры
- строка
$type - Тип объекта, для которого генерируются тесты, например, контроллер
- строка
$className - имя класса, для которого генерируется тест.
Возвращает
строкаИмя файла, в котором должен быть создан тест.
typeCanDetectFixtures()source public
typeCanDetectFixtures( string $type )
Проверяет, может ли выбранный тип найти собственные фикстуры. В настоящее время поддерживаются только модели и контроллеры
Параметры
- строка
$type - Тип объекта, для которого генерируются тесты, например, контроллер
Возвращает
булево значениеМетоды, унаследованные от BakeTask
getPath()source public
getPath( )
Получает путь для вывода. Проверяет свойство плагина и возвращает правильный путь.
Возвращает
строкаПуть к выводу.
startup()source public
startup( )
Отключает кеширование и включает отладку для выпечки. Это принудительно использует самую последнюю схему базы данных.
Подробное описание свойств
$_fixturessource
protected массив
Внутренний список фикстур, которые были добавлены до сих пор.
array()
$baseTypessource
public массив
Сопоставление между пакетами и их базовым классом + пакетом. Это используется для генерации вызова App::uses() для автоматической загрузки базовых классов, если разработчик забыл это сделать.
array(
'Model' => array('Model', 'Model'),
'Behavior' => array('ModelBehavior', 'Model'),
'Controller' => array('Controller', 'Controller'),
'Component' => array('Component', 'Controller'),
'Helper' => array('Helper', 'View')
) $classTypessource
public массив
Типы классов, для которых могут генерироваться методы.
array(
'Model' => 'Model',
'Controller' => 'Controller',
'Component' => 'Controller/Component',
'Behavior' => 'Model/Behavior',
'Helper' => 'View/Helper'
)
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/2.9/class-TestTask.html