logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class AchievementAuthoringJudgeTests

    EditMode tests for what the Studio and the project validator do when the authoring rules throw.

    Inheritance
    object
    AchievementAuthoringJudgeTests
    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 AchievementAuthoringJudgeTests
    Remarks

    This is the whole reason the seam exists. The rules walk an authored [SerializeReference] graph, so the data that makes them throw is a corrupted asset — which cannot be written to disk from a test without becoming a corrupted asset in the repository. Injecting a rules delegate that throws tests the isolation for what it is: a decision about what to do when a call fails.

    Constructors

    AchievementAuthoringJudgeTests()

    Declaration
    public AchievementAuthoringJudgeTests()

    Methods

    DescribeFailure_NamesTheTypeAndTheMessage()

    Declaration
    public void DescribeFailure_NamesTheTypeAndTheMessage()

    DescribeFailure_StillSaysSomethingAboutAFailureWithNoMessage()

    Declaration
    public void DescribeFailure_StillSaysSomethingAboutAFailureWithNoMessage()

    DestroyCreatedDefinitions()

    Declaration
    public void DestroyCreatedDefinitions()

    JudgeAll_AnswersOncePerAchievementInTheOrderGiven()

    Declaration
    public void JudgeAll_AnswersOncePerAchievementInTheOrderGiven()

    JudgeAll_AnswersWithNothingWhenThereIsNothingToJudge()

    Declaration
    public void JudgeAll_AnswersWithNothingWhenThereIsNothingToJudge()

    JudgeAll_HandsEachAchievementTheFindingsStampedWithItsOwnPosition()

    Declaration
    public void JudgeAll_HandsEachAchievementTheFindingsStampedWithItsOwnPosition()

    JudgeAll_IgnoresFindingsStampedWithAPositionThatIsNotInTheList()

    Declaration
    public void JudgeAll_IgnoresFindingsStampedWithAPositionThatIsNotInTheList()

    JudgeAll_IsolatesTheOneAchievementThatThrowsAndStillJudgesTheRest()

    The failure this whole type exists for: one achievement that throws must not leave its caller reporting a project on which nothing is wrong.

    Declaration
    public void JudgeAll_IsolatesTheOneAchievementThatThrowsAndStillJudgesTheRest()

    JudgeAll_KeepsEveryRowJudgedWhenOnlyTheWholeProjectPassThrows()

    When nothing reproduces on its own, what broke was the pass. Marking every row failed would be a louder lie than the console line the judge writes instead — the findings just computed are real.

    Declaration
    public void JudgeAll_KeepsEveryRowJudgedWhenOnlyTheWholeProjectPassThrows()

    JudgeAll_KeepsTheFindingsOfTheAchievementsThatSurvivedTheFallback()

    Declaration
    public void JudgeAll_KeepsTheFindingsOfTheAchievementsThatSurvivedTheFallback()

    Of_HoldsNoFindingsRatherThanNothingAtAll()

    Declaration
    public void Of_HoldsNoFindingsRatherThanNothingAtAll()

    Refused_NamesAReasonEvenWhenItWasGivenNone()

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