Класс TestFixture
Cake TestFixture отвечает за создание и удаление таблиц, используемых во время тестирования.
- Cake\TestSuite\Fixture\TestFixture реализует Cake\Datasource\FixtureInterface, Cake\Datasource\TableSchemaInterface, Cake\Database\Schema\TableSchemaAwareInterface
Краткое описание свойств
-
$_constraintsprotectedОграничения фикстуры, которые нужно создать.array - Схема для этой фикстуры.
$_schemaprotected -
$connectionpublicИсточник данных фикстурыstring -
$fieldspublicПоля/Схема для фикстуры.array -
$importpublicНастройка для импорта схемы фикстурыarray|null -
$recordspublicЗаписи фикстуры для вставки.array -
$tablepublicПолное имя таблицыstring
Краткое описание методов
- __construct() publicИнициализация фикстуры.
- _getRecords() protectedПреобразование внутренних записей в данные, используемые для генерации запроса.
- _schemaFromFields() protectedСоздание схемы таблицы фикстуры из свойства fields.
- _schemaFromImport() protectedСоздание схемы фикстуры из таблицы в другом источнике данных.
- _schemaFromReflection() protectedСоздание схемы фикстуры напрямую из источника данных.
- _tableFromClass() protectedВозвращает имя таблицы, используя класс фикстуры.
- connection() publicПолучение имени подключения, в которое должна быть вставлена эта фикстура.
- create() publicСоздание схемы/отображения/определения фикстуры.
- createConstraints() public
Создание и выполнение SQL-запросов, необходимых для создания ограничений для фикстуры
- drop() publicВыполняется после выполнения всех тестов, должно удалить таблицу/коллекцию из подключения.
- dropConstraints() public
Создание и выполнение SQL-запросов, необходимых для удаления ограничений фикстуры
- getTableSchema() publicПолучение и установка схемы для этой фикстуры.
- init() publicИнициализация фикстуры.
- insert() publicВыполняется перед выполнением каждого теста.
- schema() publicПолучение/Установка экземпляра TableSchema, используемого этой фикстурой.
- setTableSchema() publicПолучение и установка схемы для этой фикстуры.
- sourceName() publicПолучение имени таблицы/коллекции для этой фикстуры.
- truncate() publicОбнуление текущей фикстуры.
Подробное описание методов
__construct()source public
__construct( )
Инициализация фикстуры.
Исключения
Cake\Core\Exception\Exceptionпри некорректном использовании источника данных.
_getRecords()source protected
_getRecords( )
Преобразует внутренние записи в данные, используемые для генерации запроса.
Возвращает
массив_schemaFromFields()source protected
_schemaFromFields( )
Создание схемы таблицы фикстуры из свойства fields.
_schemaFromImport()source protected
_schemaFromImport( )
Создание схемы фикстуры из таблицы в другом источнике данных.
Исключения
Cake\Core\Exception\Exceptionпри попытке импорта из пустой таблицы.
_schemaFromReflection()source protected
_schemaFromReflection( )
Создание схемы фикстуры напрямую из источника данных
Исключения
Cake\Core\Exception\Exceptionпри попытке отражения несуществующей таблицы
_tableFromClass()source protected
_tableFromClass( )
Возвращает имя таблицы, используя класс фикстуры
Возвращает
строкаconnection()source public
connection( )
Получение имени подключения, в которое должна быть вставлена эта фикстура.
Возвращает
строкаРеализация
Cake\Datasource\FixtureInterface::connection() create()source public
create( Cake\Datasource\ConnectionInterface $db )
Создание схемы/отображения/определения фикстуры
Параметры
-
Cake\Datasource\ConnectionInterface$db - Экземпляр подключения, на котором должна быть создана фикстура.
Возвращает
логическое значениеИстина при успехе, ложь при ошибке.
Реализация
Cake\Datasource\FixtureInterface::create() createConstraints()source public
createConstraints( Cake\Datasource\ConnectionInterface $db )
Создание и выполнение SQL-запросов, необходимых для создания ограничений для фикстуры
Параметры
-
Cake\Datasource\ConnectionInterface$db - Экземпляр базы данных, в которой будут созданы ограничения
Возвращает
логическое значениеистина при успехе или если ограничений нет, или ложь при ошибке
Реализация
Cake\Datasource\FixtureInterface::createConstraints() drop()source public
drop( Cake\Datasource\ConnectionInterface $db )
Выполняется после выполнения всех тестов, должно удалить таблицу/коллекцию из подключения.
Параметры
-
Cake\Datasource\ConnectionInterface$db - Экземпляр подключения, из которого должна быть удалена фикстура.
Возвращает
логическое значениеИстина при успехе, ложь при ошибке.
Реализация
Cake\Datasource\FixtureInterface::drop() dropConstraints()source public
dropConstraints( Cake\Datasource\ConnectionInterface $db )
Создать и выполнить SQL-запросы, необходимые для удаления ограничений для фикстуры
Параметры
-
Cake\Datasource\ConnectionInterface$db - Экземпляр базы данных, в которой будут удалены ограничения
Возвращает
booleanпри успехе или если ограничений для удаления нет, или false при ошибке
Реализация
Cake\Datasource\FixtureInterface::dropConstraints() getTableSchema()source public
getTableSchema( )
Получить и установить схему для этой фикстуры.
Возвращает
Cake\Database\Schema\TableSchemaInterface|nullРеализация
Cake\Database\Schema\TableSchemaAwareInterface::getTableSchema() init()source public
init( )
Инициализировать фикстуру.
Выбрасывает
Cake\ORM\Exception\MissingTableClassExceptionПри импорте из таблицы, которой нет.
insert()source public
insert( Cake\Datasource\ConnectionInterface $db )
Выполняется перед выполнением каждого теста.
Параметры
-
Cake\Datasource\ConnectionInterface$db - Экземпляр подключения, в который будут вставлены записи.
Возвращает
Cake\Database\StatementInterface|booleanпри успехе или если записей для вставки нет, или false при ошибке.
Реализация
Cake\Datasource\FixtureInterface::insert() schema()source public
schema( Cake\Database\Schema\TableSchema $schema null )
Получает/устанавливает экземпляр TableSchema, используемый этой фикстурой.
Устарело
3.5.0 Используйте getTableSchema/setTableSchema вместо этого.Параметры
-
Cake\Database\Schema\TableSchema$schemaнеобязательно null - Таблица для установки.
Возвращает
Cake\Database\Schema\TableSchema|nullРеализация
Cake\Datasource\TableSchemaInterface::schema() setTableSchema()source public
setTableSchema( Cake\Database\Schema\TableSchemaInterface $schema )
Получить и установить схему для этой фикстуры.
Параметры
-
Cake\Database\Schema\TableSchemaInterface$schema - Таблица для установки.
Возвращает
$this
Реализация
Cake\Database\Schema\TableSchemaAwareInterface::setTableSchema() sourceName()source public
sourceName( )
Получить имя таблицы/коллекции для этой фикстуры.
Возвращает
stringРеализация
Cake\Datasource\FixtureInterface::sourceName() truncate()source public
truncate( Cake\Datasource\ConnectionInterface $db )
Обнуляет текущую фикстуру.
Параметры
-
Cake\Datasource\ConnectionInterface$db - Ссылка на экземпляр db
Возвращает
booleanРеализация
Cake\Datasource\FixtureInterface::truncate() Подробное описание свойств
$fieldssource
public array
Поля/Схема для фикстуры.
Этот массив должен быть совместим с Cake\Database\Schema\Schema. Ключи _constraints, _options и _indexes зарезервированы для определения ограничений, параметров и индексов соответственно.
[]
$importsource
public array|null
Настройка для импорта схемы фикстуры
Принимает ключи connection и model или table, чтобы определить таблицу и соединение, содержащие импортируемую схему.
© 2005–2018 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/3.5/class-Cake.TestSuite.Fixture.TestFixture.html