classMultiUpdateMutation
final class MultiUpdateMutation
implements DataMutation
Applies multi-table UPDATE operation to the shadow store. This mutation handles UPDATE 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 3
Calls 4
- new MultiTableMutationRow line 40
- method-call MultiTableMutationRow::values() line 44
- method-call MultiTableMutationRow::identity() line 45
- method-call ShadowStore::updateIdentified() 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 73 - method-call MultiTableMutationTarget::tableName() line 74
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 6
MultiUpdateMutationTest::testApplySkipsRowsWithIncompleteValuesOrIdentitycallsMultiUpdateMutationTest::testApplyUpdatesMultipleRowscallsMultiUpdateMutationTest::testApplyUpdatesMultipleTablescallsMultiUpdateMutationTest::testApplyWithEmptyTablesReturnsEmptyPrimaryTablecallsMultiUpdateMutationTest::testTableNameReturnsPrimaryTablecallsMultiUpdateMutationTest::testTableNamesReturnsAllTableNamescalls
Other tests reaching this symbol 5
RewritePlanConsistencyChecker::checkPlancallsDataMutationTest::providerRowChangingMutationcallsMySqlMutationResolverTest::testMultiTableUpdateEnsuresTablesInStorecallsMySqlMutationResolverTest::testResolveMultiUpdateReturnsPrimaryKeysFromDefinitioncallsMySqlMutationResolverTest::testResolveUpdateMultiTableReturnsMultiUpdateMutationcalls