logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    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().

    In this article
    © 2026 Serenity. All Rights Reserved