logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class SerenityRecipeMenuOptionIdentityTests

    How a recipe's menu options meet the options an existing menu already owns, over a copy of the real shipped main menu: options are matched by their Guid (by their Id when the recipe carries none), an option the recipe leaves out is left untouched, a new one is appended with a Guid of its own, and nothing is blanked because a position moved. A recipe that lists every option in another order reorders the menu; one that lists only some keeps the menu's order. Every option the import writes leaves with a Guid — a blank one is filled on its first write — and every shipped option already carries one. Each shipped option's action binding (its bound value, id and guid) must survive every import.

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

    Constructors

    SerenityRecipeMenuOptionIdentityTests()

    Declaration
    public SerenityRecipeMenuOptionIdentityTests()

    Methods

    ARecipeWithoutOptionGuidsOrBindings_StillMatchesOptionsById_AndKeepsTheirBindings()

    Declaration
    public void ARecipeWithoutOptionGuidsOrBindings_StillMatchesOptionsById_AndKeepsTheirBindings()

    AnExportedOption_CarriesTheGuidTheShippedOptionOwns()

    Declaration
    public void AnExportedOption_CarriesTheGuidTheShippedOptionOwns()

    AnOptionMatchedByGuid_IsEditedInPlace_EvenWhenItsIdChanged()

    Declaration
    public void AnOptionMatchedByGuid_IsEditedInPlace_EvenWhenItsIdChanged()

    AnOptionNewInTheRecipe_IsAppended_AfterTheOptionsTheMenuAlreadyOwns()

    Declaration
    public void AnOptionNewInTheRecipe_IsAppended_AfterTheOptionsTheMenuAlreadyOwns()

    AnOptionTheRecipeLeavesOut_IsLeftUntouched_AndNothingShifts()

    Declaration
    public void AnOptionTheRecipeLeavesOut_IsLeftUntouched_AndNothingShifts()

    AnOptionWhoseBlankGuidWasFilled_IsUnchangedByTheNextRoundTrip()

    Declaration
    public void AnOptionWhoseBlankGuidWasFilled_IsUnchangedByTheNextRoundTrip()

    AnOptionWithABlankGuid_GetsOneOnItsFirstWrite_ReportedAsAFilledBlankIdentity()

    Declaration
    public void AnOptionWithABlankGuid_GetsOneOnItsFirstWrite_ReportedAsAFilledBlankIdentity()

    EveryOptionInADifferentOrder_IsAppliedInTheRecipeOrder_AndEachKeepsItsBinding()

    Declaration
    public void EveryOptionInADifferentOrder_IsAppliedInTheRecipeOrder_AndEachKeepsItsBinding()

    EveryShippedOption_CarriesAGuidUniqueWithinItsView()

    Declaration
    public void EveryShippedOption_CarriesAGuidUniqueWithinItsView()

    OneTimeSetUp()

    Declaration
    public void OneTimeSetUp()

    OneTimeTearDown()

    Declaration
    public void OneTimeTearDown()

    SetUp()

    Declaration
    public void SetUp()

    SomeOptionsInADifferentOrder_KeepTheMenusOwnOrder()

    Declaration
    public void SomeOptionsInADifferentOrder_KeepTheMenusOwnOrder()

    TearDown()

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