classTableOverrides
final class TableOverrides<TValue>
Column values to use instead of generated ones, for one table.
Generated table classes build these through named arguments, so the column names and their types are checked where they are written rather than when the fixture runs. A null argument means "leave this column to the
- generator"; withNull() is how a column is deliberately set to NULL.
Methods§
public function __construct(
private array<string, TValue> $values,
private array<array-key, string> $nulls,
)Parameters
$values | array<string, TValue> | |
$nulls | array<array-key, string> | Columns to set to NULL rather than generate |
public static function of<TColumn>(array<string, TColumn> $values = []): self<TColumn>Keep only the arguments that were actually given.
Parameters
$values | array<string, TColumn> |
Returns
self<TColumn>Test cases 12
PlanGeneratorTest::testOverridesMayBeGivenAsTableOverridescallsRowSpecTest::testAListOfTableOverridesGivesOneEntryPerRowcallsRowSpecTest::testTableOverridesApplyToEveryRowcallsTableOverridesTest::testAnEmptySetOfOverridesIsEmptycallsTableOverridesTest::testKeepsFalseAndZeroWhichAreRealValuescallsTableOverridesTest::testOfKeepsTheValuesGivencallsTableOverridesTest::testToArrayDropsArgumentsLeftUnsetcallsTableOverridesTest::testWithNullKeepsEveryColumnAlreadyMarkedcallsTableOverridesTest::testWithNullReindexesColumnsSpreadFromAKeyedArraycallsTableOverridesTest::testWithNullReturnsANewInstancecallsTableOverridesTest::testWithNullSetsAColumnDeliberatelycallsTableOverridesTest::testWithNullTakesSeveralColumnscalls
Calls 1
- new
selfline 44
public function withNull(string ...$columns): self<TValue>Set a column to NULL rather than leaving it to the generator.
Parameters
$columns | string |
Returns
self<TValue>Calls 1
- new
selfline 54
public function toArray(): array<string, TValue|null>Returns
array<string, TValue|null>Private surface 2§
Implementation details, listed for orientation only.
private array<string, TValue> $valuesprivate array<array-key, string> $nullsTest cases 23§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 9
TableOverridesTest::testAnEmptySetOfOverridesIsEmptycallsTableOverridesTest::testKeepsFalseAndZeroWhichAreRealValuescallsTableOverridesTest::testOfKeepsTheValuesGivencallsTableOverridesTest::testToArrayDropsArgumentsLeftUnsetcallsTableOverridesTest::testWithNullKeepsEveryColumnAlreadyMarkedcallsTableOverridesTest::testWithNullReindexesColumnsSpreadFromAKeyedArraycallsTableOverridesTest::testWithNullReturnsANewInstancecallsTableOverridesTest::testWithNullSetsAColumnDeliberatelycallsTableOverridesTest::testWithNullTakesSeveralColumnscalls
Other tests reaching this symbol 14
PostgreSqlEndToEndTestcallsSqliteIntegrationTestcallsOverrideSpecsTestcallsRelationCountsTestcallsRowMaterializerTestcallsGenerationRunTestcallsOverrideRowsTestcallsPlanGeneratorTest::testOverridesMayBeGivenAsTableOverridescallsRowSpecTest::testAListOfTableOverridesGivesOneEntryPerRowcallsRowSpecTest::testTableOverridesApplyToEveryRowcallsFixtureProviderTestcallsConstructorHydrationTestcallsPropertyHydrationTestcallsSqlSchemaProviderTestcalls