AppSurface Search
API Reference

Testing

Type

ConfigProviderContractAssertionException

Source

Value-safe assertion failure identifying a canonical case without exposing configuration values.

Property

CaseId

string CaseId { get; } Source

Gets the canonical contract case identifier.

Type

ConfigProviderContractAssert

Source

Framework-neutral checks using only the public application and provider contract.

Method

All

IReadOnlyList<string> All(IConfigProviderContractHarness harness)

Runs every canonical case, returning only case identifiers after successful verification.

Parameters

  • harness
    The provider-specific isolated source factory.

Returns

Passed case identifiers; no values or raw provider exceptions.

Exceptions

  • ConfigProviderContractAssertionException
    A canonical case fails.
Method

Case

void Case(IConfigProviderContractHarness harness, ConfigProviderContractCase contractCase)

Runs one case without exposing actual or expected values in an assertion failure.

Parameters

  • harness
    The provider-specific isolated source factory.
  • contractCase
    A canonical case with its arrangement and expected outcome.

Exceptions

  • ConfigProviderContractAssertionException
    Resolution violates the case contract.
Type

ConfigProviderContractCase

Source

One immutable canonical contract case for an isolated provider fixture.

Property

Id

string Id { get; } Source

Gets the stable evidence identifier.

Property

Scenario

ConfigProviderContractScenario Scenario { get; } Source

Gets the required isolated source arrangement.

Property

Key

AppSurfaceConfigKey Key { get; } Source

Gets the primary strict logical key.

Property

TerminalCode

string? TerminalCode { get; } Source

Gets the expected terminal code, or null for a non-terminal case.

Type

ConfigProviderContractCases

Source

Canonical provider cases independent of any test framework or credentialed service.

Property

All

IReadOnlyList<ConfigProviderContractCase> All { get; } Source

Gets immutable canonical cases. Each fixture must create fresh isolated sources per case.

Type

IConfigProviderContractHarness

Source

Creates isolated provider-native sources and mappings for a canonical contract arrangement.

Method

Create

ConfigProviderContractSession Create(ConfigProviderContractCase contractCase)

Builds one case without reusing source values, claims, caches, or environment snapshots from another.

Parameters

  • contractCase
    The case whose documented arrangement must be supplied.

Returns

A disposable public-API session; fixtures retain ownership of source cleanup.

Remarks

Static collisions may throw ConfigurationResolutionException during creation with the expected code. Native options exceptions should be asserted separately by the provider-specific suite.

Type

ConfigProviderContractSession

Source

Public-API resolution session for one provider fixture with value-safe assertion markers.

Method

Dispose

void Dispose()

Releases fixture resources exactly once, including after a contract assertion fails.

Property

Manager

IConfigManager Manager { get; } Source

Gets the public application manager exercised by the conformance runner.

Property

Environment

string Environment { get; } Source

Gets the isolated environment name.

Property

UnrepresentableKey

AppSurfaceConfigKey? UnrepresentableKey { get; } Source

Gets the fixture's optional native-codec counterexample. The runner rejects its use in other scenarios.

Enum

ConfigProviderContractScenario

Source

A provider-independent source arrangement required by the logical-key contract.

Remarks

Fixtures create isolated sources for each case and may use explicit native mappings where required.