logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class AchievementServiceDegradationTests

    Tests for what the service does when its collaborators misbehave: a store that throws, a platform that cannot answer, a storefront SDK that never returns, and a reset that lands while a screenshot capture is still in flight. Nothing here may surface as an exception to the gameplay code that triggered the unlock.

    Inheritance
    object
    AchievementServiceDegradationTests
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: Serenity.Achievements.Tests.Application
    Assembly: Tests.dll
    Syntax
    public class AchievementServiceDegradationTests

    Constructors

    AchievementServiceDegradationTests()

    Declaration
    public AchievementServiceDegradationTests()

    Methods

    CaptureCompletingNormally_StillWritesWhenNoResetHappened()

    Declaration
    public Task CaptureCompletingNormally_StillWritesWhenNoResetHappened()
    Returns
    Type Description
    Task

    LoadAsync_PlatformQueryThrows_SkipsBothHalvesOfReconciliation()

    Declaration
    public Task LoadAsync_PlatformQueryThrows_SkipsBothHalvesOfReconciliation()
    Returns
    Type Description
    Task

    LoadAsync_PlatformQueryThrows_StillDrainsTheOfflineQueue()

    Declaration
    public Task LoadAsync_PlatformQueryThrows_StillDrainsTheOfflineQueue()
    Returns
    Type Description
    Task

    LoadAsync_PlatformThatNeverAnswers_GivesUpAfterTheTimeout()

    Declaration
    public Task LoadAsync_PlatformThatNeverAnswers_GivesUpAfterTheTimeout()
    Returns
    Type Description
    Task

    LoadAsync_ReadThrowsAfterSchema_DoesNotKeepStalePartialState()

    Declaration
    public Task LoadAsync_ReadThrowsAfterSchema_DoesNotKeepStalePartialState()
    Returns
    Type Description
    Task

    LoadAsync_StoreThrows_LeavesTheServiceEmptyAndNotLoaded()

    Declaration
    public void LoadAsync_StoreThrows_LeavesTheServiceEmptyAndNotLoaded()

    QueryUnlockedAsync_Answering_ReportsSuccess()

    Declaration
    public Task QueryUnlockedAsync_Answering_ReportsSuccess()
    Returns
    Type Description
    Task

    QueryUnlockedAsync_Throwing_ReportsUnreachableRatherThanEmpty()

    Declaration
    public Task QueryUnlockedAsync_Throwing_ReportsUnreachableRatherThanEmpty()
    Returns
    Type Description
    Task

    ResetAllAsync_StoreThrows_StillClearsTheCache()

    Declaration
    public Task ResetAllAsync_StoreThrows_StillClearsTheCache()
    Returns
    Type Description
    Task

    ResetWhileACaptureIsPending_DiscardsTheCaptureInsteadOfResurrectingTheRecord()

    Declaration
    public Task ResetWhileACaptureIsPending_DiscardsTheCaptureInsteadOfResurrectingTheRecord()
    Returns
    Type Description
    Task

    ScreenshotWriteThrows_LeavesTheUnlockWithoutAKey()

    Declaration
    public Task ScreenshotWriteThrows_LeavesTheUnlockWithoutAKey()
    Returns
    Type Description
    Task

    SetProgressAsync_StoreWriteThrows_StillAdvancesInMemory()

    Declaration
    public Task SetProgressAsync_StoreWriteThrows_StillAdvancesInMemory()
    Returns
    Type Description
    Task

    UnlockAsync_PlatformThatNeverAnswers_StillUnlocksLocally()

    Declaration
    public Task UnlockAsync_PlatformThatNeverAnswers_StillUnlocksLocally()
    Returns
    Type Description
    Task

    UnlockAsync_StoreWriteThrows_StillUnlocksInMemoryAndSignals()

    Declaration
    public Task UnlockAsync_StoreWriteThrows_StillUnlocksInMemoryAndSignals()
    Returns
    Type Description
    Task
    In this article
    © 2026 Serenity. All Rights Reserved