classStaticSchemaResolver
final class StaticSchemaResolver
implements SchemaResolverInterface
Resolves schemas from an in-memory, case-insensitive registry.
Methods§
public function __construct(iterable<TableSchema> $schemas = [])Parameters
$schemas | iterable<TableSchema> |
Calls 1
- method-call StaticSchemaResolver::register() line 23
public function register(TableSchema $schema): voidRegisters the table schema under its normalized name.
Parameters
$schema | TableSchema |
Test cases 2
Called from 1
Calls 2
- method-call TableIdentifier::normalize() line 32
- new TableIdentifier line 32
public function resolve(string $tableName): TableSchemaReturns the schema registered for the table, or reports that it is missing.
Parameters
$tableName | string |
Returns
Throws
Test cases 7
RowMaterializerTest::testMaterializeRowPreservesExplicitKeyscallsEndpointValidatorTest::testCheckEndpointAcceptsDeclaredLinkColumnscallsSchemaResolverInterfaceTest::testResolveReturnsTheRegisteredSchemacallsStaticSchemaResolverTest::testRegisterReplacesASchemaOfTheSameNamecallsStaticSchemaResolverTest::testResolvesARegisteredSchemacallsStaticSchemaResolverTest::testResolvesIgnoringCaseQuotingAndSchemaQualifiercallsStaticSchemaResolverTest::testResolveThrowsListingWhatIsKnowncalls
Calls 4
- method-call TableIdentifier::normalize() line 41
- new TableIdentifier line 41
- new SchemaNotFoundException line 43
- method-call StaticSchemaResolver::tableNames() line 43
public function has(string $tableName): boolReports whether the named table is registered.
Parameters
$tableName | string |
Returns
boolTest cases 3
Calls 2
- method-call TableIdentifier::normalize() line 54
- new TableIdentifier line 54
public function tableNames(): list<string>Private surface 1§
Implementation details, listed for orientation only.
private array<string, TableSchema> $schemas = []Test cases 58§
Test cases that cover or call this symbol, from the coverage report and from the analyzed test sources.
Dedicated tests 7
StaticSchemaResolverTest::testHasReportsAnUnknownTablecallsStaticSchemaResolverTest::testRegisterAddsAfterConstructioncallsStaticSchemaResolverTest::testRegisterReplacesASchemaOfTheSameNamecallsStaticSchemaResolverTest::testResolvesARegisteredSchemacallsStaticSchemaResolverTest::testResolvesIgnoringCaseQuotingAndSchemaQualifiercallsStaticSchemaResolverTest::testResolveThrowsListingWhatIsKnowncallsStaticSchemaResolverTest::testTableNamesAreLowerCasedcalls
Other tests reaching this symbol 51
PostgreSqlEndToEndTestcallsSqliteIntegrationTestcallsRowMaterializerTest::testMaterializeLinksEveryChildToTheGeneratedParentcallsRowMaterializerTest::testMaterializeParentDoesNotWalkBackAlongTheArrivalRelationcallsRowMaterializerTest::testMaterializeRowPreservesExplicitKeyscallsRowMaterializerTest::testToChildrenCopiesTheExistingParentKeycallsRowMaterializerTest::testToParentProjectsGeneratedKeyscallsPlanGeneratorTest::testACompositeRelationCarriesEveryColumncallsPlanGeneratorTest::testACountOfZeroGeneratesNoRowscallsPlanGeneratorTest::testAListGivesOneRowPerEntrycallsPlanGeneratorTest::testAnOptionalChildMayGenerateNoneAtAllcallsPlanGeneratorTest::testAnOptionalOneToOneAskedForNoneIsNullcallsPlanGeneratorTest::testAnOptionalParentIsGeneratedWhenTheCallerAsksForItcallsPlanGeneratorTest::testAnOptionalParentNobodyAskedForIsLeftOutcallsPlanGeneratorTest::testAnUnboundedChildCountCanExceedItsMinimumcallsPlanGeneratorTest::testAnUnknownTableIsReportedcallsPlanGeneratorTest::testAnUnmentionedChildIsStillGeneratedcallsPlanGeneratorTest::testAOneToOneChildIsASingleRowcallsPlanGeneratorTest::testAOneToOneChildIsGeneratedExactlyOncecallsPlanGeneratorTest::testAOneToOneChildIsNeverGeneratedMoreThanOncecallsPlanGeneratorTest::testAParentIsGeneratedAndLinkedTocallsPlanGeneratorTest::testAPlanNamingAColumnTheTableLacksIsRejectedBeforeGeneratingcallsPlanGeneratorTest::testARequiredChildNeverGeneratesNonecallsPlanGeneratorTest::testARequiredParentIsGeneratedWhetherOrNotItWasAskedForcallsPlanGeneratorTest::testARowCarriesBothItsInheritedKeyAndItsOwnParentKeycallsPlanGeneratorTest::testATableReachableOnlyBackwardsAlongARelationIsStillPartOfTheWalkcallsPlanGeneratorTest::testChildRowsCarryTheParentKeycallsPlanGeneratorTest::testEntriesComeBackInTheOrderThePlanNamesThemcallsPlanGeneratorTest::testEveryChildOfAListGetsItsOwnParentcallsPlanGeneratorTest::testEveryOtherRelationOfAParentIsStillFollowedcallsPlanGeneratorTest::testFixingTheLinkingColumnLeavesTheParentAlonecallsPlanGeneratorTest::testGenerateTheTableThePlanIsAboutGetsOneRowcallsPlanGeneratorTest::testKeysAreStoodInForEveryColumnARelationReadscallsPlanGeneratorTest::testOneSetOfValuesAppliesToEveryGeneratedRowcallsPlanGeneratorTest::testOverridesMayBeGivenAsTableOverridescallsPlanGeneratorTest::testTablesThatStandAloneAreGeneratedToocallsPlanGeneratorTest::testTheSubjectHonoursACountItWasGivencallsPlanGeneratorTest::testTheSubjectIsOneRowEvenWhenSomethingReferencesItcallsPlanSchemaValidatorTest::aColumnTheTableDoesNotHaveIsRejectedcallsPlanSchemaValidatorTest::testAGeneratedColumnCannotBeLinkedcallsPlanSchemaValidatorTest::testAGeneratedColumnCannotBeWrittenIntoEithercallsPlanSchemaValidatorTest::testATableNamedWithoutAnyRelationIsCheckedToocallsPlanSchemaValidatorTest::testATableTheResolverDoesNotKnowIsRejectedcallsPlanSchemaValidatorTest::testValidateAPlanMatchingTheSchemaPassescallsEndpointValidatorTest::testCheckEndpointAcceptsDeclaredLinkColumnscallsFixtureProviderTestcallsConstructorHydrationTestcallsPropertyHydrationTestcallsSqlSchemaProviderTestcallsSchemaResolverInterfaceTest::testHasReportsAvailabilityBeforeResolutioncallsSchemaResolverInterfaceTest::testResolveReturnsTheRegisteredSchemacalls