logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class PersistenceBackendDefinitionCreatorTests

    EditMode tests for PersistenceBackendDefinitionCreator: the Persistence row's in-window Create action. UnityStructuredBackendDefinition subtypes are an unrelated structured-persistence concept — every asset this creator builds is a real UnityPersistenceBackendDefinition, the exact type both the row's own scan and UnitySerenityInstaller.PersistenceBackendDefinition read, so the row's own scan (ResolveSettingsContext(string, string, string)) actually finds what Create just built, in the same window, with no reopening required.

    Inheritance
    object
    PersistenceBackendDefinitionCreatorTests
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: Serenity.CreateGame.Tests.Editor
    Assembly: Serenity.CreateGame.Tests.Editor.dll
    Syntax
    public class PersistenceBackendDefinitionCreatorTests

    Constructors

    PersistenceBackendDefinitionCreatorTests()

    Declaration
    public PersistenceBackendDefinitionCreatorTests()

    Methods

    Create_FileKind_BuildsAUnityPersistenceBackendDefinitionNamingTheFileInstaller()

    Declaration
    public void Create_FileKind_BuildsAUnityPersistenceBackendDefinitionNamingTheFileInstaller()

    Create_LandsTheAssetUnderTheOutputRootsPersistenceFolder_NamedAfterTheDisplayName()

    Declaration
    public void Create_LandsTheAssetUnderTheOutputRootsPersistenceFolder_NamedAfterTheDisplayName()

    Create_PlayerPrefsKind_SetsTheCuratedConstructorArgs()

    Declaration
    public void Create_PlayerPrefsKind_SetsTheCuratedConstructorArgs()

    Create_SetsANonEmptySanitizedId()

    Declaration
    public void Create_SetsANonEmptySanitizedId()

    Create_ThenScanForTheRowsOwnSettingsType_ResolvesTheCreatedAssetInTheSameWindow()

    Proves the type the Create action builds is exactly the type the row's own scan (and ProjectWiringRunner.ResolveProjectOwnedSettingsPathOrNothing) reads for UnityPersistenceBackendDefinition — a UnityStructuredBackendDefinition subtype would never resolve there. Driving Create through its non-GUI entry point (no GenericMenu, no DisplayDialog anywhere on this path) and then re-running that exact scan proves the row resolves in the same window, without reopening it.

    Declaration
    public void Create_ThenScanForTheRowsOwnSettingsType_ResolvesTheCreatedAssetInTheSameWindow()

    DiscoverOptions_IncludesTheBuiltInFileAndPlayerPrefsKinds()

    Declaration
    public void DiscoverOptions_IncludesTheBuiltInFileAndPlayerPrefsKinds()

    DiscoverOptions_NeverListsTheAbstractPersistenceInstallerBaseTypeItself()

    Declaration
    public void DiscoverOptions_NeverListsTheAbstractPersistenceInstallerBaseTypeItself()

    FindLegacyStructuredBackendAssetPath_LegacyAssetInThePersistenceFolder_ReturnsItsPathAndTypeName()

    Reproduces the now-deleted PersistenceBackendCreationMenu's own output shape: a UnityStructuredBackendDefinition subtype under the exact same "<outputRoot>/Persistence/" folder Create(PersistenceBackendDefinitionOption, string, bool) still uses.

    Declaration
    public void FindLegacyStructuredBackendAssetPath_LegacyAssetInThePersistenceFolder_ReturnsItsPathAndTypeName()

    FindLegacyStructuredBackendAssetPath_NoOutputFolderYet_ReturnsNull()

    Declaration
    public void FindLegacyStructuredBackendAssetPath_NoOutputFolderYet_ReturnsNull()

    FindLegacyStructuredBackendAssetPath_NothingUnderThePersistenceFolder_ReturnsNull()

    Declaration
    public void FindLegacyStructuredBackendAssetPath_NothingUnderThePersistenceFolder_ReturnsNull()

    FindLegacyStructuredBackendAssetPath_StructuredBackendAssetOutsideThePersistenceFolder_IsNotDetected()

    A UnityStructuredBackendDefinition subtype elsewhere in the project (a Leaderboard/GameSave/etc. database connection — a legitimate, unrelated use of the same base type) must never be mistaken for a Persistence-row leftover: detection is scoped to the Persistence row's own output folder alone.

    Declaration
    public void FindLegacyStructuredBackendAssetPath_StructuredBackendAssetOutsideThePersistenceFolder_IsNotDetected()

    OneTimeSetUp()

    Declaration
    public static void OneTimeSetUp()

    OneTimeTearDown()

    Declaration
    public static void OneTimeTearDown()

    SetUp()

    Declaration
    public void SetUp()

    TearDown()

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