logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class AchievementPlatformTableModelTests

    EditMode tests for what the Studio's Platform Ids table shows and exports. The grid itself is not under test — IMGUI is not a unit; the decisions worth getting wrong are which columns are live in this project, which blank cell is a defect, and which achievement is too broken to publish, plus the mapping that hands each of them to the manifest exporter.

    Inheritance
    object
    AchievementPlatformTableModelTests
    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 AchievementPlatformTableModelTests

    Constructors

    AchievementPlatformTableModelTests()

    Declaration
    public AchievementPlatformTableModelTests()

    Methods

    Columns_AlwaysCarryEveryStorefrontInReadingOrder()

    Declaration
    public void Columns_AlwaysCarryEveryStorefrontInReadingOrder()

    Columns_CarryADistinctNonBlankHeadingEach()

    Declaration
    public void Columns_CarryADistinctNonBlankHeadingEach()

    Columns_MarkOnlyTheStorefrontsTheProjectShipsOn()

    Declaration
    public void Columns_MarkOnlyTheStorefrontsTheProjectShipsOn()

    Columns_NameASerializedFieldThatTheAchievementActuallyHas()

    Declaration
    public void Columns_NameASerializedFieldThatTheAchievementActuallyHas()

    Columns_OfALocalOnlyProjectAreAllDimmed()

    Declaration
    public void Columns_OfALocalOnlyProjectAreAllDimmed()

    DestroyCreatedDefinitions()

    Declaration
    public void DestroyCreatedDefinitions()

    HasAuthoringErrors_IsFalseForAWarningOrAnInfoOrNothingAtAll()

    Declaration
    public void HasAuthoringErrors_IsFalseForAWarningOrAnInfoOrNothingAtAll()

    HasAuthoringErrors_IsTrueForARowNothingCouldBeReadOff()

    Declaration
    public void HasAuthoringErrors_IsTrueForARowNothingCouldBeReadOff()

    HasAuthoringErrors_IsTrueForAnErrorFinding()

    Declaration
    public void HasAuthoringErrors_IsTrueForAnErrorFinding()

    IsMissingIdentifier_IsFalseForAStrayIdOnAStorefrontTheProjectDropped()

    Declaration
    public void IsMissingIdentifier_IsFalseForAStrayIdOnAStorefrontTheProjectDropped()

    IsMissingIdentifier_IsFalseWhenTheCellHoldsSomething()

    Declaration
    public void IsMissingIdentifier_IsFalseWhenTheCellHoldsSomething()

    IsMissingIdentifier_IsTrueOnlyWhenTheProjectShipsOnThatStorefront()

    Declaration
    public void IsMissingIdentifier_IsTrueOnlyWhenTheProjectShipsOnThatStorefront()

    IsMissingIdentifier_TreatsWhitespaceAsBlank()

    Declaration
    public void IsMissingIdentifier_TreatsWhitespaceAsBlank()

    TitleOf_FallsBackToTheSamePlaceholderTheListRowsUse()

    Declaration
    public void TitleOf_FallsBackToTheSamePlaceholderTheListRowsUse()

    TitleOf_IsTheAchievementsId()

    Declaration
    public void TitleOf_IsTheAchievementsId()

    ToManifestRow_CarriesEveryFieldTheManifestNeeds()

    Declaration
    public void ToManifestRow_CarriesEveryFieldTheManifestNeeds()

    ToManifestRow_CarriesTheAuthoringVerdictItWasGiven()

    Declaration
    public void ToManifestRow_CarriesTheAuthoringVerdictItWasGiven()

    ToManifestRow_OfNothingIsNothing()

    Declaration
    public void ToManifestRow_OfNothingIsNothing()

    ToManifestRows_FeedTheExporterEverythingItWrites()

    The end-to-end promise the tab makes: what the table shows is what the manifest carries. Asserted here rather than only in the exporter's own tests, because the mapping is the seam between the two and a field dropped in it would pass both suites separately.

    Declaration
    public void ToManifestRows_FeedTheExporterEverythingItWrites()

    ToManifestRows_KeepARejectedAchievementOutOfTheExportedManifest()

    And the same seam in its refusing direction: an achievement the Studio's rules reject reaches no manifest, and the report says which one and why.

    Declaration
    public void ToManifestRows_KeepARejectedAchievementOutOfTheExportedManifest()

    ToManifestRows_MatchPositionsAfterTheHolesAreSkipped()

    The holes are skipped before the positions are matched, so a null in the middle of the project listing does not shift every verdict after it onto the wrong achievement.

    Declaration
    public void ToManifestRows_MatchPositionsAfterTheHolesAreSkipped()

    ToManifestRows_OfNullIsEmpty()

    Declaration
    public void ToManifestRows_OfNullIsEmpty()

    ToManifestRows_SkipsTheHolesInAProjectListing()

    Declaration
    public void ToManifestRows_SkipsTheHolesInAProjectListing()

    ToManifestRows_TakeTheAuthoringVerdictFromTheRowAtTheSamePosition()

    Declaration
    public void ToManifestRows_TakeTheAuthoringVerdictFromTheRowAtTheSamePosition()

    ToManifestRows_TrustNoVerdictWhenTheTwoListsDisagreeOnLength()

    Two lists of different lengths did not come from one catalog read. Attributing one achievement's defect to another would silently drop the wrong one from the manifest, so nothing is attributed.

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