classMultiDeleteMutation
final class MultiDeleteMutation
implements DataMutation
Applies multi-table DELETE operation to the shadow store. This mutation handles DELETE statements that target multiple tables.
Methods§
public function __construct(list<MultiTableMutationTarget> $targets)Parameters
$targets | list<MultiTableMutationTarget> |
public function apply(ShadowStore $store, array $rows): void{@inheritDoc}
Parameters
$store | ShadowStore | |
$rows | array |
Test cases 2
Calls 3
- new MultiTableMutationRow line 40
- method-call MultiTableMutationRow::values() line 45
- method-call ShadowStore::delete() line 50
public function tableName(): string{@inheritDoc}
Returns
stringpublic function tableNames(): array<int, string>Get all target table names.
Returns
array<int, string>Test cases 1
Calls 2
- function-call
array_mapline 69 - method-call MultiTableMutationTarget::tableName() line 70
Private surface 2§
Implementation details, listed for orientation only.
private list<MultiTableMutationTarget> $targetsprivate string $primaryTableTest cases 11§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 5
MultiDeleteMutationTest::testApplyDeletesFromMultipleTablescallsMultiDeleteMutationTest::testApplyDeletesMultipleRowsFromMultipleTablescallsMultiDeleteMutationTest::testApplyWithEmptyTablesReturnsEmptyPrimaryTablecallsMultiDeleteMutationTest::testTableNameReturnsPrimaryTablecallsMultiDeleteMutationTest::testTableNamesReturnsAllTableNamescalls
Other tests reaching this symbol 6
RewritePlanConsistencyChecker::checkPlancallsDataMutationTest::providerRowChangingMutationcallsMySqlMutationResolverTest::testMultiDeleteEnsuresTablesInStorecallsMySqlMutationResolverTest::testResolveDeleteMultiTableReturnsMultiDeleteMutationcallsMySqlMutationResolverTest::testResolveMultiDeleteEnsuresAllTablesInStorecallsMySqlMutationResolverTest::testResolveMultiDeleteReturnsPrimaryKeysFromDefinitioncalls