Class TestFixture
Cake TestFixture is responsible for building and destroying tables to be used during testing.
Property Summary
- 
        $_schema protected
Cake\Database\Schema\TableSchemaInterface&Cake\Database\Schema\SqlGeneratorInterfaceThe schema for this fixture.
 - 
        $_tableLocator protected
Cake\ORM\Locator\LocatorInterface|nullTable locator instance
 - 
        $connection public
stringFixture Datasource
 - 
        $defaultTable protected
string|nullThis object's default table alias.
 - 
        $records public
arrayFixture records to be inserted.
 - 
        $table public
stringFull Table Name
 
Method Summary
- 
          
__construct() public
Instantiate the fixture.
 - 
          
_getRecords() protected
Converts the internal records into data used to generate a query.
 - 
          
_schemaFromReflection() protected
Build fixture schema directly from the datasource
 - 
          
_tableFromClass() protected
Returns the table name using the fixture class
 - 
          
connection() public
Get the connection name this fixture should be inserted into.
 - 
          
fetchTable() public
Convenience method to get a table instance.
 - 
          
getTableLocator() public
Gets the table locator.
 - 
          
getTableSchema() public
Returns the table schema for this fixture.
 - 
          
init() public
Initialize the fixture.
 - 
          
insert() public
Run before each test is executed.
 - 
          
setTableLocator() public
Sets the table locator.
 - 
          
sourceName() public
Get the table/collection name for this fixture.
 - 
          
truncate() public
Truncates the current fixture.
 
Method Detail
__construct() ¶ public
__construct()
      Instantiate the fixture.
Throws
Cake\Core\Exception\CakeExceptionon invalid datasource usage.
_getRecords() ¶ protected
_getRecords(): array
      Converts the internal records into data used to generate a query.
Returns
array_schemaFromReflection() ¶ protected
_schemaFromReflection(): void
      Build fixture schema directly from the datasource
Returns
voidThrows
Cake\Core\Exception\CakeExceptionwhen trying to reflect a table that does not exist
_tableFromClass() ¶ protected
_tableFromClass(): string
      Returns the table name using the fixture class
Returns
stringconnection() ¶ public
connection(): string
      Get the connection name this fixture should be inserted into.
Returns
stringfetchTable() ¶ public
fetchTable(string|null $alias = null, array<string, mixed> $options = []): Cake\ORM\Table
      Convenience method to get a table instance.
Parameters
- 
                
string|null$alias optional The alias name you want to get. Should be in CamelCase format. If
nullthen the value of $defaultTable property is used.- 
                
array<string, mixed>$options optional The options you want to build the table with. If a table has already been loaded the registry options will be ignored.
Returns
Cake\ORM\TableThrows
Cake\Core\Exception\CakeExceptionIf `$alias` argument and `$defaultTable` property both are `null`.
See Also
getTableLocator() ¶ public
getTableLocator(): Cake\ORM\Locator\LocatorInterface
      Gets the table locator.
Returns
Cake\ORM\Locator\LocatorInterfacegetTableSchema() ¶ public
getTableSchema(): Cake\Database\Schema\TableSchemaInterface&Cake\Database\Schema\SqlGeneratorInterface
      Returns the table schema for this fixture.
Returns
Cake\Database\Schema\TableSchemaInterface&Cake\Database\Schema\SqlGeneratorInterfaceinit() ¶ public
init(): void
      Initialize the fixture.
Returns
voidThrows
Cake\ORM\Exception\MissingTableClassExceptionWhen importing from a table that does not exist.
insert() ¶ public
insert(Cake\Datasource\ConnectionInterface $connection): bool
      Run before each test is executed.
Should insert all the records into the test database.
Parameters
- 
                
Cake\Datasource\ConnectionInterface$connection 
Returns
boolsetTableLocator() ¶ public
setTableLocator(Cake\ORM\Locator\LocatorInterface $tableLocator): $this
      Sets the table locator.
Parameters
- 
                
Cake\ORM\Locator\LocatorInterface$tableLocator LocatorInterface instance.
Returns
$thissourceName() ¶ public
sourceName(): string
      Get the table/collection name for this fixture.
Returns
stringtruncate() ¶ public
truncate(Cake\Datasource\ConnectionInterface $connection): bool
      Truncates the current fixture.
Parameters
- 
                
Cake\Datasource\ConnectionInterface$connection 
Returns
boolProperty Detail
$_schema ¶ protected
The schema for this fixture.
Type
Cake\Database\Schema\TableSchemaInterface&Cake\Database\Schema\SqlGeneratorInterface