Spec-Zone.ru › CakePHP 2.9

Класс TestShell

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

CakeObject
Extended by Shell
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
    Для данного файла, к какой категории тестов он относится? Возвращает app, core или имя плагина.
  • _parseArgs() protected
    Разбирает опции командной строки в массив, который может использовать CakeTestDispatcher.
  • _run() protected
    Выполняет тестовый случай из $runnerArgs.
  • _runnerOptions() protected
    Преобразует опции, переданные в оболочку, в опции для запуска исполняемой программы PHPUnit.
  • available() public
    Отображает список доступных тестовых случаев и предоставляет возможность запустить один из них.
  • getOptionParser() public
    Получает экземпляр анализатора опций и настраивает его.
  • initialize() public
    Метод инициализации устанавливает PHPUnit и загружает все плагины.
  • main() public
    Главная точка входа в эту оболочку.

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

_mapFileToCase()source protected

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

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

Параметры

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

Возвращает

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

Исключения

Исключение
END_OF_DOCUMENT_MARKER

_mapFileToCategory()source protected

_mapFileToCategory( string $file )

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

Параметры

строка $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 и загружает все плагины

Изначает исключение

Exception

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

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/ru/console-and-shells.html#Shell

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

CakeObject::__construct()

__get()source public

__get( string $name )

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

Параметры

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

Возвращает

Shell
Объект Task

__isset()source public

__isset( string $name )

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

Параметры

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

_checkUnitTest()source protected

_checkUnitTest( )

Действие по созданию тестового примера

Возвращает

boolean
Успех

_configureStdErrLogger()source protected

_configureStdErrLogger( )

Настройка логгера стандартного потока ошибок

_configureStdOutLogger()source protected

_configureStdOutLogger( )

Настройка логгера стандартного вывода

_controllerName()source protected

_controllerName( string $name )

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

Параметры

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

Возвращает

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

_controllerPath()source protected

_controllerPath( string $name )

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

Параметры

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

Возвращает

строка
Путь к контроллеру

_displayHelp()source protected

_displayHelp( string $command )

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

Параметры

строка $command
Команда, для которой требуется справка.

_getInput()source protected

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

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

Параметры

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

Возвращает

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

_loadModels()source protected

_loadModels( )

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

Возвращает

логическое значение

_loggerIsConfigured()source protected

_loggerIsConfigured( string $logger )

Проверяет, настроен ли указанный логгер

Параметры

строка $logger
Имя логгера для проверки

Возвращает

логическое значение

_modelKey()source protected

_modelKey( string $name )

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

Параметры

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

Возвращает

строка
Единичное имя модели

_modelName()source protected

_modelName( string $name )

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

Параметры

строка $name
Имя

Возвращает

строка
Имя модели с использованием CamelCase и в единственном числе

_modelNameFromKey()source protected

_modelNameFromKey( string $key )

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

Параметры

строка $key
Внешний ключ

Возвращает

строка
Имя модели

_pluginPath()source protected

_pluginPath( string $pluginName )

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

Параметры

строка $pluginName
Имя плагина, например, DebugKit

Возвращает

строка
Путь к плагину.

_pluralHumanName()source protected

_pluralHumanName( string $name )

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

Параметры

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

Возвращает

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

_pluralName()source protected

_pluralName( string $name )

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

Параметры

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

Возвращает

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

_singularHumanName()source protected

_singularHumanName( string $name )

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

Параметры

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

Возвращает

строка
Единственное человекочитаемое имя

_singularName()source protected

_singularName( string $name )

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

Параметры

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

Возвращает

строка
Имя

_useLogger()source protected

_useLogger( boolean $enable true )

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

Параметры

логическое значение $enable необязательно 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 )

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

Параметры

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

Возвращает

логическое значение
Успех

Ссылка

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

dispatchShell()source public

dispatchShell( )

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

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

С помощью строковой команды:

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

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

С помощью массива команд:

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

Возвращает

смешанный тип
Результат работы другой оболочки.

Ссылка

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. Если параметры не указаны, выводит только новую строку.

Параметры

строка|массив $message необязательно null
Строка или массив строк для вывода
целое число $newlines необязательно 1
Количество добавляемых новых строк

Ссылка

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

error()source public

error( string $title , string $message null )

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

Параметры

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

Ссылка

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

hasMethod()source public

hasMethod( string $name )

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

Параметры

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

Возвращает

boolean

Ссылка

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

hasTask()source public

hasTask( string $task )

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

Параметры

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

Возвращает

boolean
Успех

Ссылка

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

helper()source public

helper( string $name )

Загрузить данный помощник командного интерпретатора.

Параметры

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

Возвращает

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

Исключения

RuntimeException
Если предоставлено неверное имя класса

hr()source public

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

Выводит на стандартный вывод серию символов минус, выполняя функцию визуального разделителя.

Параметры

целое число $newlines необязательно 0
Количество новых строк для предварительного и последующего добавления
целое число $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 )

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

Параметры

строка $prompt
Текст запроса.
строка|массив $options необязательно null
Массив или строка опций.
строка $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 )

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

Параметры

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

Возвращает

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

Исключения

MissingModelException
Если класс модели не найден.

loadTasks()source public

loadTasks( )

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

Возвращает

boolean

nl()source public

nl( integer $multiplier 1 )

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

Параметры

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

Возвращает

строка

Ссылка

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 )

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

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

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

Параметры

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

Возвращает

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

Ссылка

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 )

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

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

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

Параметры

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

Возвращает

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

param()source public

param( string $name )

Безопасно получить значения из $this->params.

Параметры

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

Возвращает

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

runCommand()source public

runCommand( string $command , array $argv )

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

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

  • Метод в командном интерпретаторе.
  • Совпадающее имя задачи.
  • main() метод.

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

Параметры

строка $command

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

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

Ссылка

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

shortPath()source public

shortPath( string $file )

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

Параметры

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

Возвращает

строка
короткое имя пути

Ссылка

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

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

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

_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() для получения дополнительной информации о областям ведения журналов.

Возвращает

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

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 при успешном/неудачном выполнении или содержимое отрисованного действия, если в $extra установлен ключ 'return'.


toString()source public

toString( )

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

Возвращает

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

Подробности свойств

$_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.
https://api.cakephp.org/2.9/class-TestShell.html

Spec-Zone.ru

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