Spec-Zone.ru › CakePHP 2.8

Класс TestShell

Предоставляет обёртку CakePHP вокруг PHPUnit. Добавляет фикстуры CakePHP и предоставляет доступ к тестовым случаям плагинов, приложений и ядра.

Объект
Extended by Оболочка
Extended by TestShell

Прямые подклассы

  • TestsuiteShell
Пакет: Cake\Console\Command
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Console/Command/TestShell.php

Унаследованные константы

  • CODE_ERROR, NORMAL, QUIET, VERBOSE

Краткое описание свойств

  • $_dispatcher protected
    CakeTestDispatcher
    Объект диспетчера для выполнения.

Унаследованные свойства

  • OptionParser, Tasks, _helpers, _lastWritten, _taskMap, args, command, interactive, modelClass, name, params, plugin, stderr, stdin, stdout, taskNames, tasks, uses

Краткое описание методов

  • _mapFileToCase() protected
    Находит тестовый случай для переданного файла. Файл сам может быть тестом.
  • _mapFileToCategory() protected
    Для данного файла, к какой категории тестов он относится? Возвращает приложение, ядро или имя плагина.
  • _parseArgs() protected
    Парсит параметры командной строки в массив, который может использовать CakeTestDispatcher.
  • _run() protected
    Выполняет тестовый случай из $runnerArgs.
  • _runnerOptions() protected
    Преобразует параметры, переданные оболочке, в параметры для исполнителя PHPUnit CLI.
  • available() public
    Отображает список доступных тестовых случаев и предоставляет возможность выполнить один из них.
  • getOptionParser() public
    Получает экземпляр парсера параметров и настраивает его.
  • initialize() public
    Метод инициализации устанавливает PHPUnit и загружает все плагины.
  • main() public
    Главная точка входа в эту оболочку.

Подробное описание методов

_mapFileToCase()source protected

_mapFileToCase( string $file , string $category , boolean $throwOnMissingFile true )

Находит тестовый случай для переданного файла. Файл сам может быть тестом.

Параметры

строка $file
Файл для сопоставления.
строка $category
Категория файла теста.
булево $throwOnMissingFile необязательно true
Выбрасывать ли исключение.

Возвращает

массив
массив(тип, случай)

Исключения

Исключение

_mapFileToCategory()source protected

_mapFileToCategory( string $file )

Для данного файла, к какой категории тестов он относится? Возвращает приложение, ядро или имя плагина.

Параметры

строка $file
Файл для сопоставления.

Возвращает

строка

_parseArgs()source protected

_parseArgs( )

Парсит параметры командной строки в массив, который может использовать CakeTestDispatcher.

Возвращает

массив|null
Массив параметров для CakeTestDispatcher или null.

_run()source protected

_run( array $runnerArgs , array $options array() )

Выполняет тестовый случай из $runnerArgs

Параметры

массив $runnerArgs
список аргументов, полученных из _parseArgs()
массив $options необязательно массив()
список опций, построенный _runnerOptions()

_runnerOptions()source protected

_runnerOptions( )

Преобразует параметры, переданные оболочке, в параметры для исполнителя PHPUnit CLI.

Возвращает

массив
Массив параметров для CakeTestDispatcher

available()source public

available( )

Отображает список доступных тестовых случаев и предоставляет возможность выполнить один из них

getOptionParser()source public

getOptionParser( )

Получает экземпляр парсера параметров и настраивает его.

Возвращает

ConsoleOptionParser

Переопределяет

Shell::getOptionParser()

initialize()source public

initialize( )

Метод инициализации устанавливает PHPUnit и загружает все плагины

Исключения

Исключение

Переопределяет

Shell::initialize()

main()source public

main( )

Главная точка входа в эту оболочку

Методы, унаследованные от Shell

__construct()source public

__construct( ConsoleOutput $stdout null , ConsoleOutput $stderr null , ConsoleInput $stdin null )

Создаёт экземпляр этой оболочки.

Параметры

ConsoleOutput $stdout необязательно null
Объект ConsoleOutput для вывода на стандартный поток вывода.
ConsoleOutput $stderr необязательно null
Объект ConsoleOutput для вывода на стандартный поток ошибок.
ConsoleInput $stdin необязательно null
Объект ConsoleInput для стандартного ввода.

Ссылка

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell

Переопределяет

Object::__construct()

__get()source public

__get( string $name )

Перегрузка get для ленивого создания задач

Параметры

строка $name
Имя свойства для доступа.

Возвращает

Shell
Объект задачи

__isset()source public

__isset( string $name )

Лениво загружает модели с помощью метода loadModel() если объявлены в $uses

Параметры

строка $name
Имя модели для поиска.

_checkUnitTest()source protected

_checkUnitTest( )

Действие по созданию Unit Test

Возвращает

булево
Успех

_controllerName()source protected

_controllerName( string $name )

Создаёт правильное множественное имя контроллера для указанного имени класса контроллера

Параметры

строка $name
Имя класса контроллера

Возвращает

строка
Множественное имя контроллера
END_OF_DOCUMENT_MARKER ```

_controllerPath()source protected

_controllerPath( string $name )

Создаёт правильный путь к контроллеру для указанного имени класса контроллера

Параметры

string $name
Имя класса контроллера

Возвращает

string
Путь к контроллеру

_displayHelp()source protected

_displayHelp( string $command )

Отображает справку в правильном формате

Параметры

string $command
Команда для получения справки.

_getInput()source protected

_getInput( string $prompt , string|array $options , string $default )

Запрашивает у пользователя ввод и возвращает его.

Параметры

string $prompt
Текст запроса.
string|array $options
Массив или строка опций.
string $default
Значение ввода по умолчанию.

Возвращает

Либо
значение по умолчанию, либо введенное пользователем значение.

_loadModels()source protected

_loadModels( )

Если $uses является массивом, загружает каждый из моделей в массиве

Возвращает

boolean

_modelKey()source protected

_modelKey( string $name )

Создаёт правильный подчеркнутый ключ модели для ассоциаций

Параметры

string $name
Имя класса модели

Возвращает

string
Единственный ключ модели

_modelName()source protected

_modelName( string $name )

Создаёт правильное имя модели с использованием camelCase (единственное число) для указанного имени

Параметры

string $name
Имя

Возвращает

string
Имя модели с camelCase и единственным числом

_modelNameFromKey()source protected

_modelNameFromKey( string $key )

Создаёт правильное имя модели из внешнего ключа

Параметры

string $key
Внешний ключ

Возвращает

string
Имя модели

_pluginPath()source protected

_pluginPath( string $pluginName )

Находит правильный путь к плагину. Проверяет $pluginPaths для нужного плагина.

Параметры

string $pluginName
Имя плагина (например, DebugKit)

Возвращает

string
Путь к плагину.

_pluralHumanName()source protected

_pluralHumanName( string $name )

Создаёт множественное человекопонятное имя, используемое в представлениях

Параметры

string $name
Имя контроллера

Возвращает

string
Множественное человекопонятное имя

_pluralName()source protected

_pluralName( string $name )

Создаёт множественное имя для представлений

Параметры

string $name
Имя для использования

Возвращает

string
Множественное имя для представлений

_singularHumanName()source protected

_singularHumanName( string $name )

Создаёт единственное человекопонятное имя, используемое в представлениях

Параметры

string $name
Имя контроллера

Возвращает

string
Единственное человекопонятное имя

_singularName()source protected

_singularName( string $name )

создаёт единственное имя для использования в представлениях.

Параметры

string $name
Значение множественного числа с нижним подчеркиванием.

Возвращает

string
Имя

_useLogger()source protected

_useLogger( boolean $enable true )

Используется для включения или выключения вывода потока логов в stdout и stderr. Если вы не хотите видеть в stdout или stderr всё, что регистрируется через CakeLog, вызовите эту функцию с первым параметром false.

Параметры

boolean $enable optional true
Включить вывод CakeLog или нет

_welcome()source protected

_welcome( )

Отображает заголовок для оболочки

clear()source public

clear( )

Очистить консоль

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::clear

createFile()source public

createFile( string $path , string $contents )

Создаёт файл по заданному пути

Параметры

string $path
Куда поместить файл.
string $contents
Содержимое файла.

Возвращает

boolean
Успех

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::createFile

dispatchShell()source public

dispatchShell( )

Передать команду другой оболочке. Похоже на Object::requestAction(), но предназначено для запуска оболочек из других оболочек.

Использование:

С командной строкой:

return $this->dispatchShell('schema create DbAcl');

Избегайте этого формата, если у вас есть строковые аргументы с пробелами. Запущенная оболочка будет вызвана неправильно. Используйте этот формат только для простого перенаправления команд.

С массивом команд:

return $this->dispatchShell('schema', 'create', 'i18n', '--dry');

Возвращает

mixed
Результат работы другой оболочки.

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::dispatchShell

err()source public

err( string|array $message null , integer $newlines 1 )

Выводит одно или несколько сообщений об ошибках в stderr. Если параметров нет, выводит только новую строку.

Параметры

string|array $message optional null
Строка или массив строк для вывода
integer $newlines optional 1
Количество добавляемых новых строк

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::err

error()source public

error( string $title , string $message null )

Отображает отформатированное сообщение об ошибке и завершает приложение со статусом 1

Параметры

string $title
Заголовок ошибки
string $message optional null
Необязательное сообщение об ошибке

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::error

hasMethod()source public

hasMethod( string $name )

Проверка наличия вызываемого метода с заданным именем в данном шелле.

Параметры

string $name
Имя метода для проверки.

Возвращаемое значение

boolean

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hasMethod

hasTask()source public

hasTask( string $task )

Проверка наличия задачи с заданным именем в данном шелле.

Параметры

string $task
Имя задачи для проверки.

Возвращаемое значение

boolean
Успех

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hasTask

helper()source public

helper( string $name )

Загрузка заданного класса помощника шелла

Параметры

string $name
Имя класса помощника. Поддерживается синтаксис плагинов.

Возвращаемое значение

BaseShellHelper
Экземпляр класса помощника

Исключения

RuntimeException
Если указано недопустимое имя класса

hr()source public

hr( integer $newlines 0 , integer $width 63 )

Выводит последовательность символов тире в стандартный вывод, служит визуальным разделителем.

Параметры

integer $newlines необязательно 0
Количество новых строк для добавления в начале и конце
integer $width необязательно 63
Ширина строки, по умолчанию 63

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hr

in()source public

in( string $prompt , string|array $options null , string $default null )

Запрашивает у пользователя ввод и возвращает его.

Параметры

string $prompt
Текст запроса.
string|array $options необязательно null
Массив или строка опций.
string $default необязательно null
Значение ввода по умолчанию.

Возвращаемое значение

mixed
Либо значение по умолчанию, либо введенное пользователем значение.

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::in

loadModel()source public

loadModel( string $modelClass null , mixed $id null )

Загружает и создает экземпляры моделей, необходимых для данного шелла.

Параметры

string $modelClass необязательно null
Имя класса модели для загрузки
mixed $id необязательно null
Изначальный ID, который должен иметь созданный экземпляр модели.

Возвращаемое значение

mixed
true, если модель найдена и экземпляр создан, возвращает ошибку, если модель не найдена.

Исключения

MissingModelException
если класс модели не может быть найден.

loadTasks()source public

loadTasks( )

Загружает задачи, определенные в public $tasks

Возвращаемое значение

boolean

nl()source public

nl( integer $multiplier 1 )

Возвращает последовательность символов новой строки или нескольких новых строк.

Параметры

integer $multiplier необязательно 1
Количество повторений последовательности символов новой строки

Возвращаемое значение

string

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::nl

out()source public

out( string|array $message null , integer $newlines 1 , integer $level Shell::NORMAL )

Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводит только новую строку.

Уровни вывода

Существует 3 встроенных уровня вывода. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют переключателям вывода verbose и quiet в большинстве шеллов. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. Использование Shell::VERBOSE означает, что оно будет отображаться только при включенном verbose выводе.

Параметры

string|array $message необязательно null
Строка или массив строк для вывода
integer $newlines необязательно 1
Количество добавляемых новых строк
integer $level необязательно Shell::NORMAL
Уровень вывода сообщения, см. выше.

Возвращаемое значение

integer|boolean
Возвращает количество байтов, возвращенных при записи в стандартный вывод.

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::out

overwrite()source public

overwrite( array|string $message , integer $newlines 1 , integer $size null )

Перезапись уже выведенного текста.

Полезно для создания прогресс-баров или когда нужно заменить текст, уже выведенный на экран, новым текстом.

Предупреждение Нельзя перезаписывать текст, содержащий новые строки.

Параметры

array|string $message
Сообщение для вывода.
integer $newlines необязательно 1
Количество добавляемых новых строк.
integer $newlines необязательно null
Количество байтов для перезаписи. По умолчанию равно длине последнего выведенного сообщения.

Возвращаемое значение

integer|boolean
Возвращает количество байтов, возвращенных при записи в стандартный вывод.

param()source public

param( string $name )

Безопасный доступ к значениям в $this->params.

Параметры

string $name
Имя параметра для получения.

Возвращаемое значение

string|boolean|null
Значение. Вернет null, если параметр не существует.

runCommand()source public

runCommand( string $command , array $argv )

Выполняет шелл с предоставленным argv.

Делегирует вызовы задачам и разрешает методы внутри класса. Команды ищутся в следующем порядке:

  • Метод в шелле.
  • Соответствующее имя задачи.
  • main() метод.

Если шелл реализует метод main(), все отсутствующие вызовы методов будут отправлены в main() с исходным именем метода в argv.

Параметры

string $command

Имя команды для выполнения в этом шелле. Если этот аргумент пуст, и у шелла есть метод main(), этот метод будет вызван вместо него.

array $argv
Массив аргументов для запуска шелла. Этот массив должен быть без имени шелла.

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::runCommand

shortPath()source public

shortPath( string $file )

Делает абсолютный путь к файлу более читаемым

Параметры

string $file
Абсолютный путь к файлу

Возвращаемое значение

string
короткое имя пути

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::shortPath

startup()source public

startup( )

Запускает шелл и отображает приветственное сообщение. Позволяет проверять и настраивать параметры перед выполнением команды или основного кода.

Переопределите этот метод, если хотите удалить приветственную информацию или изменить поток перед выполнением команды.

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::startup
END_OF_DOCUMENT_MARKER

wrapText()source public

wrapText( string $text , string|integer|array $options array() )

Обёртывание блока текста. Позволяет задать ширину и отступы для блока текста.

Параметры

  • width Ширина обёртывания. По умолчанию 72
  • wordWrap Обёртывание только по пробелам. По умолчанию true.
  • indent Отступ текста с помощью заданной строки. По умолчанию null.

Параметры

строка $text
Текст, подлежащий форматированию.
строка|целое число|массив $options необязательно массив()
Массив параметров или целое число для ширины обёртывания.

Возвращает

строка
Обёрнутый/отступленный текст

См. также

CakeText::wrap()

Ссылка

http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::wrapText

Методы, унаследованные от Object

_mergeVars()source protected

_mergeVars( array $properties , string $class , boolean $normalize true )

Объединяет свойства объекта $property со свойствами в определении $class. Значение свойства этого класса будет объединённо поверх значения $class.

Это обеспечивает некоторую DRY-магию CakePHP. Если вы хотите её отключить, переопределите этот метод как пустую функцию.

Параметры

массив $properties
Название свойств для объединения.
строка $class
Класс для объединения свойства с.
логическое значение $normalize необязательно true
Установите в значение true, чтобы запустить свойства через Hash::normalize() перед объединением.

_set()source protected

_set( array $properties array() )

Позволяет задавать несколько свойств объекта в одной строке кода. Будут установлены только свойства, которые являются частью объявления класса.

Параметры

массив $properties необязательно массив()
Ассоциативный массив, содержащий свойства и соответствующие значения.

_stop()source protected

_stop( integer|string $status 0 )

Остановить выполнение текущего скрипта. Оборачивает exit(), что упрощает тестирование.

Параметры

целое число|строка $status необязательно 0
см. http://php.net/exit для значений

dispatchMethod()source public

dispatchMethod( string $method , array $params array() )

Вызывает метод этого объекта с заданными параметрами. Предоставляет объектно-ориентированную оболочку для call_user_func_array

Параметры

строка $method
Имя вызываемого метода
массив $params необязательно массив()
Список параметров для использования при вызове $method

Возвращает

смешанное
Возвращает результат вызова метода

log()source public

log( string $msg , integer $type LOG_ERR , null|string|array $scope null )

Удобный метод для записи сообщения в CakeLog. Для получения дополнительной информации о записи в журналы, см. CakeLog::write().

Параметры

строка $msg
Сообщение для журнала
целое число $type необязательно LOG_ERR
Константа типа ошибки. Определено в app/Config/core.php.
null|строка|массив $scope необязательно null

Область(и), в которой создаётся сообщение для журнала. Для получения дополнительной информации о сферах ведения журнала, см. CakeLog::config().

Возвращает

boolean
Успешность записи в журнал

requestAction()source public

requestAction( string|array $url , array $extra array() )

Вызывает метод контроллера из любого места. Может использоваться для связи контроллеров или подключения плагинов к основному приложению. requestAction может быть использован для возврата рендеренных представлений или извлечения возвращаемого значения из действий контроллера.

Под капотом этот метод использует Router::reverse() для преобразования параметра $url в строковый URL. Вы должны использовать форматы URL, совместимые с Router::reverse().

Передача данных POST и GET

Данные POST и GET могут быть смоделированы в requestAction. Используйте $extra['url'] для данных GET. Параметр $extra['data'] позволяет смоделировать данные POST.

Параметры

строка|массив $url

URL на основе строки или массива. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные и именованные аргументы в параметре $url.

массив $extra необязательно массив()

если массив включает ключ "return", он устанавливает AutoRender в значение true. Также может быть использован для отправки данных GET/POST и именованных/переданных аргументов.

Возвращает

смешанное

Булевое значение true или false при успехе/неудачи или содержимое рендеренного действия, если 'return' установлен в $extra.


toString()source public

toString( )

Преобразование объекта в строку. Каждый класс может переопределить этот метод по мере необходимости.

Возвращает

строка
Имя этого класса

Подробное описание свойств

$_dispatchersource

protected CakeTestDispatcher

Объект диспетчера для выполнения.

null

© 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.
http://api.cakephp.org/2.8/class-TestShell.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API