classTableMutationResolver
final class TableMutationResolver
Restricted visibility: declared "@visibility ZtdQuery\Platform\Sqlite". Code outside that scope must not name this declaration.
Resolves table lifecycle and ALTER operations.
Methods§
public function __construct(
private SqliteParser $parser,
private TableDefinitionRegistry $registry,
private SchemaParser $schemaParser,
)Binds the collaborators used by this operation.
Parameters
$parser | SqliteParser | |
$registry | TableDefinitionRegistry | |
$schemaParser | SchemaParser |
public function resolveCreateTable(string $sql): ShadowMutationResolves table lifecycle and ALTER operations.
Parameters
$sql | string |
Returns
Throws
Test cases 13
TableMutationResolverTest::testResolveCreateTablecallsTableMutationResolverTest::testResolveCreateTableAlreadyExistsNoIfNotExistsThrowscallsTableMutationResolverTest::testResolveCreateTableAlreadyExistsThrowscallsTableMutationResolverTest::testResolveCreateTableCaseInsensitiveIfNotExistscallsTableMutationResolverTest::testResolveCreateTableIfNotExistscallsTableMutationResolverTest::testResolveCreateTableIfNotExistsExistingTableLowercasecallsTableMutationResolverTest::testResolveCreateTableIfNotExistsExistingTableNoErrorcallsTableMutationResolverTest::testResolveCreateTableIfNotExistsLowercasecallsTableMutationResolverTest::testResolveCreateTableIfNotExistsLowercaseDoesNotThrowcallsTableMutationResolverTest::testResolveCreateTableIfNotExistsWithoutExistingTablecallsTableMutationResolverTest::testResolveCreateTableTableNamecallsTableMutationResolverTest::testResolveCreateTableWithoutIfNotExistsAlreadyExistsThrowscallsTableMutationResolverTest::testResolveCreateTableWithoutTargetThrowscalls
Called from 1
Calls 6
- method-call SqliteParser::extractTargetTable() line 39
- new UnsupportedSqlException line 41
- function-call
preg_matchline 44 - method-call TableDefinitionRegistry::has() line 46
- method-call SchemaParser::parse() line 50
- new CreateTableMutation line 52
public function resolveDropTable(string $sql): ShadowMutationResolves table lifecycle and ALTER operations.
Parameters
$sql | string |
Returns
Test cases 11
TableMutationResolverTest::testResolveDropTablecallsTableMutationResolverTest::testResolveDropTableCaseInsensitiveIfExistscallsTableMutationResolverTest::testResolveDropTableExistingReturnsDropMutationcallsTableMutationResolverTest::testResolveDropTableIfExistscallsTableMutationResolverTest::testResolveDropTableIfExistsLowercasecallsTableMutationResolverTest::testResolveDropTableIfExistsLowercaseRegexcallsTableMutationResolverTest::testResolveDropTableIfExistsOnNonExistentTableDoesNotThrowcallsTableMutationResolverTest::testResolveDropTableNonExistentWithoutIfExistsThrowscallsTableMutationResolverTest::testResolveDropTableTableNamecallsTableMutationResolverTest::testResolveDropTableUnknownThrowscallsTableMutationResolverTest::testResolveDropTableWithoutTargetThrowscalls
Called from 1
Calls 7
- method-call SqliteParser::extractTargetTable() line 62
- new UnsupportedSqlException line 64
- function-call
preg_matchline 67 - method-call TableDefinitionRegistry::isRemoved() line 69
- new DropTableMutation line 71
- method-call TableDefinitionRegistry::has() line 76
- new UnknownSchemaException line 77
public function resolveAlterTable(string $sql): ShadowMutationParameters
$sql | string |
Returns
Test cases 50
TableMutationResolverTest::testResolveAlterTableAddColumncallsTableMutationResolverTest::testResolveAlterTableAddColumnAppliesNewColumnToDefinitioncallsTableMutationResolverTest::testResolveAlterTableAddColumnAppliesParenthesizedTypecallsTableMutationResolverTest::testResolveAlterTableAddColumnLowercasecallsTableMutationResolverTest::testResolveAlterTableAddColumnNoKeywordcallsTableMutationResolverTest::testResolveAlterTableAddColumnUnknownTableThrowscallsTableMutationResolverTest::testResolveAlterTableAddColumnVerifyNewColumnscallsTableMutationResolverTest::testResolveAlterTableAddColumnVerifyParenthesizedTypecallsTableMutationResolverTest::testResolveAlterTableAddColumnWithoutColumnKeywordcallsTableMutationResolverTest::testResolveAlterTableAddColumnWithoutTypecallsTableMutationResolverTest::testResolveAlterTableAddColumnWithParenthesizedTypecallsTableMutationResolverTest::testResolveAlterTableAddColumnWithPrimaryKeywordcallsTableMutationResolverTest::testResolveAlterTableAddColumnWithTypecallsTableMutationResolverTest::testResolveAlterTableAddColumnWithTypedColumnscallsTableMutationResolverTest::testResolveAlterTableAddWithoutColumnKeywordcallsTableMutationResolverTest::testResolveAlterTableCaseInsensitiveAddColumncallsTableMutationResolverTest::testResolveAlterTableCaseInsensitiveDropColumncallsTableMutationResolverTest::testResolveAlterTableCaseInsensitiveRenameColumncallsTableMutationResolverTest::testResolveAlterTableCaseInsensitiveRenameTocallsTableMutationResolverTest::testResolveAlterTableDropColumncallsTableMutationResolverTest::testResolveAlterTableDropColumnLowercasecallsTableMutationResolverTest::testResolveAlterTableDropColumnNotNullUpdatedcallsTableMutationResolverTest::testResolveAlterTableDropColumnPreservesPartialUniqueConstraintcallsTableMutationResolverTest::testResolveAlterTableDropColumnPreservesPrimaryKeyscallsTableMutationResolverTest::testResolveAlterTableDropColumnRemovesPrimaryKeyIfDroppedcallsTableMutationResolverTest::testResolveAlterTableDropColumnRemovesUniqueConstraintIfEmptycallsTableMutationResolverTest::testResolveAlterTableDropColumnTypedColumnsUpdatedcallsTableMutationResolverTest::testResolveAlterTableDropColumnUnknownThrowscallsTableMutationResolverTest::testResolveAlterTableDropColumnUpdatesSchemacallsTableMutationResolverTest::testResolveAlterTableDropColumnVerifyRemovedFromAllListscallsTableMutationResolverTest::testResolveAlterTableOnNonExistentTableThrowscallsTableMutationResolverTest::testResolveAlterTableRenameColumncallsTableMutationResolverTest::testResolveAlterTableRenameColumnLowercasecallsTableMutationResolverTest::testResolveAlterTableRenameColumnNotNullUpdatedcallsTableMutationResolverTest::testResolveAlterTableRenameColumnPrimaryKeysUpdatedcallsTableMutationResolverTest::testResolveAlterTableRenameColumnTypedColumnsUpdatedcallsTableMutationResolverTest::testResolveAlterTableRenameColumnUniqueConstraintsUpdatedcallsTableMutationResolverTest::testResolveAlterTableRenameColumnUnknownThrowscallsTableMutationResolverTest::testResolveAlterTableRenameColumnUpdatesSchemacallsTableMutationResolverTest::testResolveAlterTableRenameColumnVerifyAllUpdatedcallsTableMutationResolverTest::testResolveAlterTableRenameColumnWithoutColumnKeywordcallsTableMutationResolverTest::testResolveAlterTableRenameTablecallsTableMutationResolverTest::testResolveAlterTableRenameToDropsOldTablecallsTableMutationResolverTest::testResolveAlterTableRenameToLowercasecallsTableMutationResolverTest::testResolveAlterTableRenameWithoutColumnKeywordcallsTableMutationResolverTest::testResolveAlterTableUnknownThrowscallsTableMutationResolverTest::testResolveAlterTableUnsupportedOperationThrowscallsTableMutationResolverTest::testResolveAlterTableUnsupportedOperationThrowsForUnknownActioncallsTableMutationResolverTest::testResolveAlterTableWithAddWithoutColumnKeywordDetectedcallsTableMutationResolverTest::testResolveAlterTableWithoutTargetThrowscalls
Called from 1
Calls 15
- method-call SqliteParser::extractTargetTable() line 89
- new UnsupportedSqlException line 91
- method-call MutationTableLookup::assertTableWasNotRemoved() line 94
- new MutationTableLookup line 94
- method-call TableDefinitionRegistry::has() line 96
- new UnknownSchemaException line 97
- method-call AlterOperationParser::alterOperation() line 100
- new AlterOperationParser line 100
- method-call AddColumnResolver::resolveAlterAddColumn() line 106
- new AddColumnResolver line 106
- method-call DropColumnResolver::resolveAlterDropColumn() line 107
- new DropColumnResolver line 107
- method-call RenameResolver::resolveAlterRenameTable() line 108
- new RenameResolver line 108
- method-call RenameResolver::resolveAlterRenameColumn() line 109
Private surface 3§
Implementation details, listed for orientation only.
private SqliteParser $parserprivate TableDefinitionRegistry $registryprivate SchemaParser $schemaParserTest cases 78§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 74
TableMutationResolverTest::testResolveAlterTableAddColumncallsTableMutationResolverTest::testResolveAlterTableAddColumnAppliesNewColumnToDefinitioncallsTableMutationResolverTest::testResolveAlterTableAddColumnAppliesParenthesizedTypecallsTableMutationResolverTest::testResolveAlterTableAddColumnLowercasecallsTableMutationResolverTest::testResolveAlterTableAddColumnNoKeywordcallsTableMutationResolverTest::testResolveAlterTableAddColumnUnknownTableThrowscallsTableMutationResolverTest::testResolveAlterTableAddColumnVerifyNewColumnscallsTableMutationResolverTest::testResolveAlterTableAddColumnVerifyParenthesizedTypecallsTableMutationResolverTest::testResolveAlterTableAddColumnWithoutColumnKeywordcallsTableMutationResolverTest::testResolveAlterTableAddColumnWithoutTypecallsTableMutationResolverTest::testResolveAlterTableAddColumnWithParenthesizedTypecallsTableMutationResolverTest::testResolveAlterTableAddColumnWithPrimaryKeywordcallsTableMutationResolverTest::testResolveAlterTableAddColumnWithTypecallsTableMutationResolverTest::testResolveAlterTableAddColumnWithTypedColumnscallsTableMutationResolverTest::testResolveAlterTableAddWithoutColumnKeywordcallsTableMutationResolverTest::testResolveAlterTableCaseInsensitiveAddColumncallsTableMutationResolverTest::testResolveAlterTableCaseInsensitiveDropColumncallsTableMutationResolverTest::testResolveAlterTableCaseInsensitiveRenameColumncallsTableMutationResolverTest::testResolveAlterTableCaseInsensitiveRenameTocallsTableMutationResolverTest::testResolveAlterTableDropColumncallsTableMutationResolverTest::testResolveAlterTableDropColumnLowercasecallsTableMutationResolverTest::testResolveAlterTableDropColumnNotNullUpdatedcallsTableMutationResolverTest::testResolveAlterTableDropColumnPreservesPartialUniqueConstraintcallsTableMutationResolverTest::testResolveAlterTableDropColumnPreservesPrimaryKeyscallsTableMutationResolverTest::testResolveAlterTableDropColumnRemovesPrimaryKeyIfDroppedcallsTableMutationResolverTest::testResolveAlterTableDropColumnRemovesUniqueConstraintIfEmptycallsTableMutationResolverTest::testResolveAlterTableDropColumnTypedColumnsUpdatedcallsTableMutationResolverTest::testResolveAlterTableDropColumnUnknownThrowscallsTableMutationResolverTest::testResolveAlterTableDropColumnUpdatesSchemacallsTableMutationResolverTest::testResolveAlterTableDropColumnVerifyRemovedFromAllListscallsTableMutationResolverTest::testResolveAlterTableOnNonExistentTableThrowscallsTableMutationResolverTest::testResolveAlterTableRenameColumncallsTableMutationResolverTest::testResolveAlterTableRenameColumnLowercasecallsTableMutationResolverTest::testResolveAlterTableRenameColumnNotNullUpdatedcallsTableMutationResolverTest::testResolveAlterTableRenameColumnPrimaryKeysUpdatedcallsTableMutationResolverTest::testResolveAlterTableRenameColumnTypedColumnsUpdatedcallsTableMutationResolverTest::testResolveAlterTableRenameColumnUniqueConstraintsUpdatedcallsTableMutationResolverTest::testResolveAlterTableRenameColumnUnknownThrowscallsTableMutationResolverTest::testResolveAlterTableRenameColumnUpdatesSchemacallsTableMutationResolverTest::testResolveAlterTableRenameColumnVerifyAllUpdatedcallsTableMutationResolverTest::testResolveAlterTableRenameColumnWithoutColumnKeywordcallsTableMutationResolverTest::testResolveAlterTableRenameTablecallsTableMutationResolverTest::testResolveAlterTableRenameToDropsOldTablecallsTableMutationResolverTest::testResolveAlterTableRenameToLowercasecallsTableMutationResolverTest::testResolveAlterTableRenameWithoutColumnKeywordcallsTableMutationResolverTest::testResolveAlterTableUnknownThrowscallsTableMutationResolverTest::testResolveAlterTableUnsupportedOperationThrowscallsTableMutationResolverTest::testResolveAlterTableUnsupportedOperationThrowsForUnknownActioncallsTableMutationResolverTest::testResolveAlterTableWithAddWithoutColumnKeywordDetectedcallsTableMutationResolverTest::testResolveAlterTableWithoutTargetThrowscallsTableMutationResolverTest::testResolveCreateTablecallsTableMutationResolverTest::testResolveCreateTableAlreadyExistsNoIfNotExistsThrowscallsTableMutationResolverTest::testResolveCreateTableAlreadyExistsThrowscallsTableMutationResolverTest::testResolveCreateTableCaseInsensitiveIfNotExistscallsTableMutationResolverTest::testResolveCreateTableIfNotExistscallsTableMutationResolverTest::testResolveCreateTableIfNotExistsExistingTableLowercasecallsTableMutationResolverTest::testResolveCreateTableIfNotExistsExistingTableNoErrorcallsTableMutationResolverTest::testResolveCreateTableIfNotExistsLowercasecallsTableMutationResolverTest::testResolveCreateTableIfNotExistsLowercaseDoesNotThrowcallsTableMutationResolverTest::testResolveCreateTableIfNotExistsWithoutExistingTablecallsTableMutationResolverTest::testResolveCreateTableTableNamecallsTableMutationResolverTest::testResolveCreateTableWithoutIfNotExistsAlreadyExistsThrowscallsTableMutationResolverTest::testResolveCreateTableWithoutTargetThrowscallsTableMutationResolverTest::testResolveDropTablecallsTableMutationResolverTest::testResolveDropTableCaseInsensitiveIfExistscallsTableMutationResolverTest::testResolveDropTableExistingReturnsDropMutationcallsTableMutationResolverTest::testResolveDropTableIfExistscallsTableMutationResolverTest::testResolveDropTableIfExistsLowercasecallsTableMutationResolverTest::testResolveDropTableIfExistsLowercaseRegexcallsTableMutationResolverTest::testResolveDropTableIfExistsOnNonExistentTableDoesNotThrowcallsTableMutationResolverTest::testResolveDropTableNonExistentWithoutIfExistsThrowscallsTableMutationResolverTest::testResolveDropTableTableNamecallsTableMutationResolverTest::testResolveDropTableUnknownThrowscallsTableMutationResolverTest::testResolveDropTableWithoutTargetThrowscalls
Other tests reaching this symbol 4
SqliteRewriterTestcallsStatementRewriterTestcallsSqliteMutationResolverTestcallsSqliteSessionFactoryTestcalls
Relations§
Instantiated in 3
- new ZtdQuery\Platform\Sqlite\Shadow\SqliteMutationResolver::resolve() packages/ztd-query-sqlite/src/Shadow/SqliteMutationResolver.php:57
- new ZtdQuery\Platform\Sqlite\Shadow\SqliteMutationResolver::resolve() packages/ztd-query-sqlite/src/Shadow/SqliteMutationResolver.php:58
- new ZtdQuery\Platform\Sqlite\Shadow\SqliteMutationResolver::resolve() packages/ztd-query-sqlite/src/Shadow/SqliteMutationResolver.php:59
Method calls 3
- method-call ZtdQuery\Platform\Sqlite\Shadow\SqliteMutationResolver::resolve() packages/ztd-query-sqlite/src/Shadow/SqliteMutationResolver.php:57
- method-call ZtdQuery\Platform\Sqlite\Shadow\SqliteMutationResolver::resolve() packages/ztd-query-sqlite/src/Shadow/SqliteMutationResolver.php:58
- method-call ZtdQuery\Platform\Sqlite\Shadow\SqliteMutationResolver::resolve() packages/ztd-query-sqlite/src/Shadow/SqliteMutationResolver.php:59