Namespace Serenity.GameCamera.Tests.Editor.Builder
Classes
CreateGameCameraSettingsWindowAmbiguityAndCollisionTests
Proves CreateGameCameraSettingsWindow's target resolution, built on the shared
Serenity.Global.Infrastructure.Editor.SerenityWizardTargetAsset/SerenityWizardTargetAssetGui ambiguity gate. GameCamera
settings are a project-wide Serenity.Global.Infrastructure.Editor.SerenityWizardTargetCardinality.SingletonPerProject — the
runtime loads exactly one via UnitySingletonSettingsLoader (see
WiredOrDiscoveredSettings.Resolve in UnityGameCameraInstaller) — so:
- with two existing UnityGameCameraSettings assets, the Ambiguous gate blocks regardless of what Id is typed, with no create-new escape: the only way through is picking one of the two candidates to update;
- clearing "Edit existing" while the Id/output folder still resolve to an asset that already exists on disk blocks the write as a collision instead of silently updating that asset in place under a primary button that still reads "Create".
CreateGameCameraSettingsWindowReloadSafetyTests
EditMode tests proving CreateGameCameraSettingsWindow re-attaches to its surviving scratch
draft after a domain reload instead of rebuilding from disk and losing unsaved edits. A real script
recompile cannot be driven from this suite, so
Serenity.GameCamera.Infrastructure.Editor.Builder.CreateGameCameraSettingsWindow.SimulateDomainReloadForTests reproduces only what a reload
leaves behind — see that seam's own remarks for what stays unverified. Mirrors
CreateSystemConfigurationSettingsWindowReloadSafetyTests.
CreateGameCameraSettingsWindowUpdateInPlaceTests
Proves CreateGameCameraSettingsWindow against the shared
UpdateInPlaceRoundTripContract: reopening the wizard on an already-configured asset and
confirming with zero edits must leave every field untouched. Mirrors
CreateSystemConfigurationSettingsWindowUpdateInPlaceTests.
GameCameraSettingsCreatorTests
EditMode tests for GameCameraSettingsCreator. Every test targets a fixture asset path
under a private temp folder via Input.SettingsAssetPath — the real project's own
UnityGameCameraSettings asset(s), if any, are never touched, so these tests stay
hermetic regardless of what the project already has configured.