Namespace Serenity.StructuredPersistence.Tests.Infrastructure.Contract
Classes
HttpStructuredStoreContractTests
Runs the shared StructuredStoreContractTests suite against HttpStructuredStore, backed by Serenity.StructuredPersistence.Tests.Infrastructure.Http.Fakes.StubStructuredServerHandler — an in-memory reference implementation of WireProtocol.md. Passing this suite proves the wire protocol itself round-trips the full behavior matrix, not just that requests are shaped correctly.
InMemoryStructuredStoreContractTests
Runs the shared StructuredStoreContractTests suite against the InMemoryStructuredStore test fake.
KeyValueStructuredStoreContractTests
Runs the shared StructuredStoreContractTests suite against KeyValueStructuredStore.
StructuredStoreContractTests
Shared behavior contract every IStructuredStore backend must satisfy identically: insert, upsert-if-better (both directions, including the equal-is-not-better rule), query filtering/distinct-collapsing/multi-field ordering/pagination, comparison + distinct counting, delete-by-query, trim-beyond (including the folded write-path trim), and health checks. Concrete subclasses provide a fresh store instance per test via CreateStoreAsync().