logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class AchievementPlatformDefinitionTests

    PlayMode tests for the four shipped storefront definition assets and the gateways they build.

    Inheritance
    object
    AchievementPlatformDefinitionTests
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: Serenity.UnityAchievements.Tests.Infrastructure
    Assembly: Tests.dll
    Syntax
    public class AchievementPlatformDefinitionTests
    Remarks

    None of the four SDKs is installed in this repository, so every gateway compiles as its inert template — which is exactly the shape these tests pin down, because it is the shape every project sees until it installs an SDK. What must hold is that an absent SDK costs a project nothing: the asset still names its platform, the gateway still answers every call, nothing throws, and the reader is told once rather than once per retry.

    Constructors

    AchievementPlatformDefinitionTests()

    Declaration
    public AchievementPlatformDefinitionTests()

    Methods

    ARegisteredGatewayThatThrows_DoesNotSilenceTheConfiguredStorefronts()

    The composite's whole job under failure: one broken storefront must not take the others with it. A registered gateway that throws on every call is the worst realistic case, because it is the seam a licensee owns and Serenity cannot test.

    Declaration
    public Task ARegisteredGatewayThatThrows_DoesNotSilenceTheConfiguredStorefronts()
    Returns
    Type Description
    Task

    AnInertGateway_ExplainsItselfOnceHoweverOftenItIsRetried()

    Declaration
    public Task AnInertGateway_ExplainsItselfOnceHoweverOftenItIsRetried()
    Returns
    Type Description
    Task

    AnInertGateway_NamesTheDoctorSoTheReaderKnowsWhereToLook()

    Declaration
    public Task AnInertGateway_NamesTheDoctorSoTheReaderKnowsWhereToLook()
    Returns
    Type Description
    Task

    AnInertGateway_RefusesToClaimItClearedTheAccount()

    Pinned on its own because clearing is the one call whose false answer is load-bearing: AchievementPlatformSyncPass.ClearAsync reports it to the caller, and an inert gateway that answered true would tell a project its storefront account was wiped.

    Declaration
    public Task AnInertGateway_RefusesToClaimItClearedTheAccount()
    Returns
    Type Description
    Task

    Create_ARegisteredFactoryBesideAShippedDefinition_KeepsBoth()

    Declaration
    public void Create_ARegisteredFactoryBesideAShippedDefinition_KeepsBoth()

    Create_EveryShippedDefinition_ProducesOneCompositeCarryingAllFour()

    Declaration
    public void Create_EveryShippedDefinition_ProducesOneCompositeCarryingAllFour()

    Create_EveryShippedDefinition_ReportsTheCompositeUnavailableWhileNoSdkIsInstalled()

    Declaration
    public void Create_EveryShippedDefinition_ReportsTheCompositeUnavailableWhileNoSdkIsInstalled()

    EpicDefinition_DeclaresItsPlatformKind()

    Declaration
    public void EpicDefinition_DeclaresItsPlatformKind()

    EveryShippedDefinition_BuildsAGatewayThatNamesItsPlatform()

    Declaration
    public void EveryShippedDefinition_BuildsAGatewayThatNamesItsPlatform()

    EveryShippedDefinition_BuildsAGatewayWithoutAContext()

    Declaration
    public void EveryShippedDefinition_BuildsAGatewayWithoutAContext()

    EveryShippedDefinition_CarriesAGeneratedGuid()

    Declaration
    public void EveryShippedDefinition_CarriesAGeneratedGuid()

    EveryShippedGateway_RefusesEveryCallWithoutThrowing()

    Declaration
    public Task EveryShippedGateway_RefusesEveryCallWithoutThrowing()
    Returns
    Type Description
    Task

    EveryShippedGateway_ReportsItselfUnavailableWithNoSdkInstalled()

    Declaration
    public void EveryShippedGateway_ReportsItselfUnavailableWithNoSdkInstalled()

    PlayStationDefinition_DeclaresItsPlatformKind()

    Declaration
    public void PlayStationDefinition_DeclaresItsPlatformKind()

    Registry_ContextOverload_ReceivesTheAchievementsTheProjectDeclares()

    Declaration
    public void Registry_ContextOverload_ReceivesTheAchievementsTheProjectDeclares()

    SteamDefinition_DeclaresItsPlatformKind()

    Declaration
    public void SteamDefinition_DeclaresItsPlatformKind()

    SteamDefinition_DoesNotRelaunchThroughSteamUnlessAskedTo()

    Declaration
    public void SteamDefinition_DoesNotRelaunchThroughSteamUnlessAskedTo()

    TearDown()

    Declaration
    public void TearDown()

    TwoInertGateways_EachExplainThemselvesOnce()

    Warning once is a per-gateway promise, not a per-process one: a project shipping on two storefronts has to hear about both, and a latch shared across instances would silence whichever one happened to be initialized second.

    Declaration
    public Task TwoInertGateways_EachExplainThemselvesOnce()
    Returns
    Type Description
    Task

    XboxDefinition_DeclaresItsPlatformKind()

    Declaration
    public void XboxDefinition_DeclaresItsPlatformKind()
    In this article
    © 2026 Serenity. All Rights Reserved