Class FixtureManager
Класс-фабрика для управления жизненным циклом тестовых фикстур
Краткое описание свойств
- $_debug protected
boolЗапущен ли тест-раннер с включенным
--debug. Если true, SQL фикстур также будет регистрироваться. - $_fixtureMap protected
arrayCake\Datasource\FixtureInterface>Хранит классы фикстур, которые были созданы, индексированные по имени класса
- $_initialized protected
boolБыл ли этот экземпляр уже инициализирован?
- $_insertionMap protected
array<string, arrayCake\Datasource\FixtureInterface>>Отображение имен подключений и текущей фикстуры в них.
- $_loaded protected
arrayCake\Datasource\FixtureInterface>Хранит классы фикстур, которые были созданы.
- $_processed protected
array<string, bool>Список имен классов TestCase, которые были обработаны.
Краткое описание методов
-
_aliasConnections() protected
Добавить псевдонимы для всех подключений, не начинающихся с префикса test.
-
_fixtureConnections() protected
Получить уникальный список подключений, содержащихся в наборе фикстур.
-
_initDb() protected
Инициализирует этот класс с объектом DataSource, используемым по умолчанию для всех фикстур.
-
_loadFixtures() protected
Ищет файлы фикстур и создает соответствующие классы.
-
_runOperation() protected
Выполнить функцию для каждого подключения и набора фикстур.
-
_setupTable() protected
Выполняет команды удаления и создания таблиц для фикстур, если необходимо.
-
fixturize() public
-
getInserted() public
-
isFixtureSetup() public
Проверить, была ли фикстура вставлена в заданное имя подключения.
-
load() public
-
loadSingle() public
-
loaded() public
-
setDebug() public
Изменить режим отладки.
-
shutDown() public
Удалить все таблицы фикстур, загруженные этим классом.
-
unload() public
Обнуляет таблицы фикстур.
Подробное описание методов
_aliasConnections() protected
_aliasConnections(): void
Добавить псевдонимы для всех подключений, не начинающихся с префикса test.
Это позволяет моделям использовать тестовые подключения без большого количества конфигурационных работ.
Возвращает
void_fixtureConnections() protected
_fixtureConnections(array<string> $fixtures): array
Получить уникальный список подключений, содержащихся в наборе фикстур.
Параметры
-
array<string>$fixtures Массив фикстур, для которого нужен список подключений.
Возвращает
array_initDb() protected
_initDb(): void
Инициализирует этот класс с объектом DataSource, используемым по умолчанию для всех фикстур.
Возвращает
void_loadFixtures() protected
_loadFixtures(Cake\TestSuite\TestCase $test): void
Ищет файлы фикстур и создает соответствующие классы.
Параметры
-
Cake\TestSuite\TestCase$test Набор тестов для загрузки фикстур.
Возвращает
voidИсключения
UnexpectedValueExceptionпри отсутствии указанной фикстуры.
_runOperation() protected
_runOperation(array<string> $fixtures, callable $operation): void
Выполнить функцию для каждого подключения и набора фикстур.
Параметры
-
array<string>$fixtures Список фикстур, на которых нужно выполнить операцию.
-
callable$operation Операция, выполняемая для каждого подключения и набора фикстур.
Возвращает
void_setupTable() protected
_setupTable(Cake\Datasource\FixtureInterface $fixture, Cake\Datasource\ConnectionInterface $db, array<string> $sources, bool $drop = true): void
Выполняет команды удаления и создания таблиц для фикстур, если необходимо.
Параметры
-
Cake\Datasource\FixtureInterface$fixture объект фикстуры для создания
-
Cake\Datasource\ConnectionInterface$db экземпляр объекта Connection, который нужно использовать
-
array<string>$sources существующие таблицы в источнике данных.
-
bool$drop опционально удалить фикстуру, если она уже создана
Возвращает
voidfixturize() public
fixturize(Cake\TestSuite\TestCase $test): void
Параметры
-
Cake\TestSuite\TestCase$test Тест-кейс
Возвращает
voidgetInserted() public
getInserted(): array<string>
Возвращает
array<string>isFixtureSetup() public
isFixtureSetup(string $connection, Cake\Datasource\FixtureInterface $fixture): bool
Проверить, была ли фикстура вставлена в заданное имя подключения.
Параметры
-
string$connection Имя подключения.
-
Cake\Datasource\FixtureInterface$fixture Фикстура для проверки.
Возвращает
boolload() public
load(Cake\TestSuite\TestCase $test): void
Параметры
-
Cake\TestSuite\TestCase$test Тест-кейс
Возвращает
voidИсключения
RuntimeExceptionloadSingle() public
loadSingle(string $name, Cake\Datasource\ConnectionInterface|null $connection = null, bool $dropTables = true): void
Параметры
-
string$name Имя
-
Cake\Datasource\ConnectionInterface|null$connection опционально Подключение
-
bool$dropTables опционально Удалить все таблицы перед загрузкой файлов схемы.
Возвращает
voidИсключения
UnexpectedValueExceptionloaded() public
loaded(): Cake\Datasource\FixtureInterface[]
Возвращает
Cake\Datasource\FixtureInterface[]setDebug() public
setDebug(bool $debug): void
Изменить режим отладки.
Параметры
-
bool$debug Включить/выключить режим отладки фикстур.
Возвращает
voidshutDown() public
shutDown(): void
Удалить все таблицы фикстур, загруженные этим классом.
Возвращает
voidunload() public
unload(Cake\TestSuite\TestCase $test): void
Обнуляет таблицы фикстур.
Параметры
-
Cake\TestSuite\TestCase$test Тест, для которого необходимо выполнить разгрузку фикстур.
Возвращает
voidПодробное описание свойств
$_debug protected
Выполняется ли запуск тестового исполнителя с включённым --debug. При значении true, фикстур SQL также будут регистрироваться.
Тип
bool$_fixtureMap protected
Содержит классы фикстур, которые были созданы, индексированные по имени класса.
Тип
arrayCake\Datasource\FixtureInterface>$_initialized protected
Был ли этот экземпляр уже инициализирован?
Тип
bool$_insertionMap protected
Словарь имён подключений и текущей фикстуры в них.
Тип
array<string, arrayCake\Datasource\FixtureInterface>>$_loaded protected
Содержит классы фикстур, которые были созданы.
Тип
arrayCake\Datasource\FixtureInterface>$_processed protected
Список имён классов TestCase, которые были обработаны.
Тип
array<string, bool>
© 2005–present 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/4.3/class-Cake.TestSuite.Fixture.FixtureManager.html