Класс 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 - Экземпляр подключения, на котором должна быть создана фикстура.
Возвращает
логическое значениеTrue при успехе, false при ошибке.
Реализация
Cake\Datasource\FixtureInterface::create() createConstraints()source public
createConstraints( Cake\Datasource\ConnectionInterface $db )
Создаёт и выполняет SQL-запросы, необходимые для создания ограничений для фикстуры
Параметры
-
Cake\Datasource\ConnectionInterface$db - Экземпляр базы данных, в которую будут созданы ограничения
Возвращает
логическое значениеTrue при успехе или если нет ограничений для создания, или false при ошибке
Реализация
Cake\Datasource\FixtureInterface::createConstraints() drop()source public
drop( Cake\Datasource\ConnectionInterface $db )
Выполняется после всех тестов, удаляет таблицу/коллекцию из подключения.
Параметры
-
Cake\Datasource\ConnectionInterface$db - Экземпляр подключения, из которого должна быть удалена фикстура.
Возвращает
логическое значениеTrue при успехе, false при ошибке.
Реализация
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 - Экземпляр соединения, в который будут вставлены записи.
Возвращает
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 массив
Поля/Схема для фикстуры.
Этот массив должен быть совместим с Cake\Database\Schema\Schema. Ключи _constraints, _options и _indexes зарезервированы для определения ограничений, параметров и индексов соответственно.
[]
$importsource
public массив|null
Настройка для импорта схемы фикстуры
Принимает ключ connection и model или table , чтобы определить, какая таблица и какое соединение содержат схему для импорта.
© 2005–2017 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.4/class-Cake.TestSuite.Fixture.TestFixture.html