logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class AchievementsStudioSelectionTests

    EditMode tests for the Achievements Studio's selection rules: which achievement stays selected when the list is narrowed, rebuilt or emptied, and where the arrow keys go.

    Inheritance
    object
    AchievementsStudioSelectionTests
    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.Editor
    Assembly: Tests.Editor.dll
    Syntax
    public class AchievementsStudioSelectionTests
    Remarks

    The reason these are worth asserting is that every one of them is invisible until it is wrong: a selection that quietly resets to the first row on every repaint, or a delete that leaves the pane pointing at an asset that is gone, both look like the window "sometimes jumping".

    Constructors

    AchievementsStudioSelectionTests()

    Declaration
    public AchievementsStudioSelectionTests()

    Methods

    AfterRemoving_SelectsNothingWhenTheDeletedRowWasNotListed()

    Declaration
    public void AfterRemoving_SelectsNothingWhenTheDeletedRowWasNotListed()

    AfterRemoving_SelectsNothingWhenTheLastAchievementWasDeleted()

    Declaration
    public void AfterRemoving_SelectsNothingWhenTheLastAchievementWasDeleted()

    AfterRemoving_StepsBackwardsWhenTheLastRowWasDeleted()

    Declaration
    public void AfterRemoving_StepsBackwardsWhenTheLastRowWasDeleted()

    AfterRemoving_TakesTheRowThatMovesUpIntoTheDeletedOnesPlace()

    Deleting several achievements in a row has to be a repeated press, not a click-then-press cycle.

    Declaration
    public void AfterRemoving_TakesTheRowThatMovesUpIntoTheDeletedOnesPlace()

    IndexOf_FindsTheRowCarryingTheGuid()

    Declaration
    public void IndexOf_FindsTheRowCarryingTheGuid()

    IndexOf_SaysSoWhenNoRowCarriesIt()

    Declaration
    public void IndexOf_SaysSoWhenNoRowCarriesIt()

    MoveDown_StartsAtTheTopWhenNothingIsSelected()

    Declaration
    public void MoveDown_StartsAtTheTopWhenNothingIsSelected()

    MoveDown_StaysOnTheLastRow()

    Declaration
    public void MoveDown_StaysOnTheLastRow()

    MoveDown_StepsToTheNextRow()

    Declaration
    public void MoveDown_StepsToTheNextRow()

    MoveEitherWay_SelectsNothingInAnEmptyList()

    Declaration
    public void MoveEitherWay_SelectsNothingInAnEmptyList()

    MoveUp_StartsAtTheBottomWhenNothingIsSelected()

    Declaration
    public void MoveUp_StartsAtTheBottomWhenNothingIsSelected()

    MoveUp_StaysOnTheFirstRow()

    Declaration
    public void MoveUp_StaysOnTheFirstRow()

    MoveUp_StepsToThePreviousRow()

    Declaration
    public void MoveUp_StepsToThePreviousRow()

    Resolve_FallsBackToTheFirstRowWhenTheFilterHidThePreviousSelection()

    Declaration
    public void Resolve_FallsBackToTheFirstRowWhenTheFilterHidThePreviousSelection()

    Resolve_KeepsTheSameAchievementSelectedAcrossARebuild()

    The whole point of tracking selection by GUID: a rebuilt list is still the same list.

    Declaration
    public void Resolve_KeepsTheSameAchievementSelectedAcrossARebuild()

    Resolve_SelectsNothingWhenThereIsNothingToSelect()

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