logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Namespace Serenity.UnityValidation.Tests.Editor

    Classes

    SerenityAddressableKeyValidatorTests

    Tests for Serenity.Global.Infrastructure.Editor.Validation.SerenityAddressableKeyValidator: an AssetPathFieldAttribute-annotated string field that stores a raw Assets/... path to an Addressable-eligible target must be flagged as an error, a key already matching a registered address must not, an unresolvable non-path key must be a warning rather than an error, and the fix API must resolve the raw-path case.

    SerenityAddressableTagValidatorTests

    Tests for Serenity.Global.Infrastructure.Editor.Validation.SerenityAddressableTagValidator: a Serenity asset that should be Addressable per UnityAddressablesLabeler's own rules but isn't must be flagged, and the fix API must resolve it.

    SerenityAssetReferenceFinderTests

    Tests for Serenity.Global.Infrastructure.Editor.Validation.References.SerenityAssetReferenceFinder: finding ScriptableObject references to a target asset, and nulling them out once that target asset has been deleted.

    SerenityAudioRegistrationValidatorTests

    Tests for Serenity.Global.Infrastructure.Editor.Validation.SerenityAudioRegistrationValidator: an audio clip definition that exists as an asset but is absent from its selectable game-settings registry must be flagged, and the fix API must resolve it. Builds a throwaway registry via ScriptableObject.CreateInstance(string) because UnityGameSettingsDefinition has no assembly definition of its own — see Serenity.Global.Infrastructure.Editor.Validation.SerenityAudioRegistrationValidator's class remarks — and targets it explicitly through the two-registry FixByRegistering overload so the test never touches the project's real Audio_SoundToTrigger asset.

    SerenityBrandingValidatorTests

    Tests for Serenity.Global.Infrastructure.Editor.Validation.SerenityBrandingValidator. The scan is pure System.IO (mirrors production), so fixtures are raw files written directly under Assets and removed with Directory.Delete — never through AssetDatabase — so Unity never imports or compiles them during the test.

    SerenityProjectValidationRunnerTests

    Smoke tests for RunAll(string) against the real project. Exact issue counts depend on project state, so these assert structure (validators ran, JSON parses) rather than counts.

    SerenityValidationReportTests

    Tests for Serenity.Global.Infrastructure.Editor.Validation.SerenityValidationReport.ToJson — the machine-readable validation result an agent reads to confirm a project is wired correctly. The report's JSON DTOs are private, so these tests parse the JSON into local mirror types and assert on content.

    In this article
    © 2026 Serenity. All Rights Reserved