From 60b2e598c8ecc63c5b77e1a77fc542f440620733 Mon Sep 17 00:00:00 2001 From: Jason Durand 01 Date: Tue, 12 Apr 2022 20:44:59 -0400 Subject: [PATCH] Added basic edit mode test --- Assets/Scripts/BlurFade.cs | 1 - Assets/Scripts/Ludum50.asmdef | 20 +++++++++++++++++ Assets/Scripts/Ludum50.asmdef.meta | 7 ++++++ Assets/Scripts/PlayerMovement.cs | 4 ++-- Assets/Tests/EditMode/EditMode.asmdef | 21 +++++++++++++++--- Assets/Tests/EditMode/EditMode.cs | 32 +++++++++------------------ 6 files changed, 58 insertions(+), 27 deletions(-) create mode 100644 Assets/Scripts/Ludum50.asmdef create mode 100644 Assets/Scripts/Ludum50.asmdef.meta diff --git a/Assets/Scripts/BlurFade.cs b/Assets/Scripts/BlurFade.cs index 085b772..a4fb942 100644 --- a/Assets/Scripts/BlurFade.cs +++ b/Assets/Scripts/BlurFade.cs @@ -1,6 +1,5 @@ #nullable enable using System.Collections; -using System.Collections.Generic; using UnityEngine; using UnityEngine.Rendering; diff --git a/Assets/Scripts/Ludum50.asmdef b/Assets/Scripts/Ludum50.asmdef new file mode 100644 index 0000000..9d7a07f --- /dev/null +++ b/Assets/Scripts/Ludum50.asmdef @@ -0,0 +1,20 @@ +{ + "name": "Ludum50", + "rootNamespace": "", + "references": [ + "GUID:776d03a35f1b52c4a9aed9f56d7b4229", + "GUID:75469ad4d38634e559750d17036d5f7c", + "GUID:6055be8ebefd69e48b49212b09b47b2f", + "GUID:4307f53044263cf4b835bd812fc161a4", + "GUID:df380645f10b7bc4b97d4f5eb6303d95" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Assets/Scripts/Ludum50.asmdef.meta b/Assets/Scripts/Ludum50.asmdef.meta new file mode 100644 index 0000000..73e3c62 --- /dev/null +++ b/Assets/Scripts/Ludum50.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ff1917848eda86b469287c353bf3cba7 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/PlayerMovement.cs b/Assets/Scripts/PlayerMovement.cs index 97868f0..6d0c7b9 100644 --- a/Assets/Scripts/PlayerMovement.cs +++ b/Assets/Scripts/PlayerMovement.cs @@ -161,8 +161,8 @@ public class PlayerMovement : MonoBehaviour { #region States - void SwitchState(BaseState newState) { - currentState.LeaveState(); + public void SwitchState(BaseState newState) { + currentState?.LeaveState(); currentState = newState; newState.EnterState(); } diff --git a/Assets/Tests/EditMode/EditMode.asmdef b/Assets/Tests/EditMode/EditMode.asmdef index a2df90a..ef3b3fa 100644 --- a/Assets/Tests/EditMode/EditMode.asmdef +++ b/Assets/Tests/EditMode/EditMode.asmdef @@ -1,9 +1,24 @@ { "name": "EditMode", - "optionalUnityReferences": [ - "TestAssemblies" + "rootNamespace": "", + "references": [ + "UnityEngine.TestRunner", + "UnityEditor.TestRunner", + "Ludum50" ], "includePlatforms": [ "Editor" - ] + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": true, + "precompiledReferences": [ + "nunit.framework.dll" + ], + "autoReferenced": false, + "defineConstraints": [ + "UNITY_INCLUDE_TESTS" + ], + "versionDefines": [], + "noEngineReferences": false } \ No newline at end of file diff --git a/Assets/Tests/EditMode/EditMode.cs b/Assets/Tests/EditMode/EditMode.cs index b736322..ffd4936 100644 --- a/Assets/Tests/EditMode/EditMode.cs +++ b/Assets/Tests/EditMode/EditMode.cs @@ -1,25 +1,15 @@ -using System.Collections; -using System.Collections.Generic; using NUnit.Framework; using UnityEngine; -using UnityEngine.TestTools; -public class EditMode -{ - // A Test behaves as an ordinary method - [Test] - public void EditModeSimplePasses() - { - // Use the Assert class to test conditions - } +public class EditMode { + [Test] + public void SwitchStateTest() { + var gameObject = new GameObject(); + var playerMovement = gameObject.AddComponent(); + + playerMovement.SwitchState(new TestState()); + Assert.True(playerMovement.currentState is TestState); + } - // A UnityTest behaves like a coroutine in Play Mode. In Edit Mode you can use - // `yield return null;` to skip a frame. - [UnityTest] - public IEnumerator EditModeWithEnumeratorPasses() - { - // Use the Assert class to test conditions. - // Use yield to skip a frame. - yield return null; - } -} + class TestState : BaseState {} +} \ No newline at end of file