summaryrefslogtreecommitdiff
path: root/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages
diff options
context:
space:
mode:
authorAndrew Lee <alee14498@protonmail.com>2020-04-19 17:19:32 -0400
committerAndrew Lee <alee14498@protonmail.com>2020-04-19 17:19:32 -0400
commitc55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78 (patch)
treeee4d51c7c1d633e11f46453ef1edd3c77c4ef9f7 /Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages
downloadProject-Sandbox-c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78.tar.gz
Project-Sandbox-c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78.tar.bz2
Project-Sandbox-c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78.zip
Inital commit
Diffstat (limited to 'Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages')
-rw-r--r--Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs39
-rw-r--r--Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs.meta11
-rw-r--r--Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs32
-rw-r--r--Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs.meta11
-rw-r--r--Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs63
-rw-r--r--Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs.meta11
-rw-r--r--Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs44
-rw-r--r--Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs.meta11
8 files changed, 222 insertions, 0 deletions
diff --git a/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs
new file mode 100644
index 0000000..e1ad8c7
--- /dev/null
+++ b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs
@@ -0,0 +1,39 @@
+using System;
+using System.Collections;
+using UnityEditor;
+
+namespace UnityEngine.TestTools
+{
+ public class EnterPlayMode : IEditModeTestYieldInstruction
+ {
+ public bool ExpectDomainReload { get; }
+ public bool ExpectedPlaymodeState { get; private set; }
+
+ public EnterPlayMode(bool expectDomainReload = true)
+ {
+ ExpectDomainReload = expectDomainReload;
+ }
+
+ public IEnumerator Perform()
+ {
+ if (EditorApplication.isPlaying)
+ {
+ throw new Exception("Editor is already in PlayMode");
+ }
+ if (EditorUtility.scriptCompilationFailed)
+ {
+ throw new Exception("Script compilation failed");
+ }
+ yield return null;
+ ExpectedPlaymodeState = true;
+
+ EditorApplication.UnlockReloadAssemblies();
+ EditorApplication.isPlaying = true;
+
+ while (!EditorApplication.isPlaying)
+ {
+ yield return null;
+ }
+ }
+ }
+}
diff --git a/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs.meta b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs.meta
new file mode 100644
index 0000000..f1775e7
--- /dev/null
+++ b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/EnterPlayMode.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 9bd5a110ed89025499ddee8c7e73778e
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs
new file mode 100644
index 0000000..85ef889
--- /dev/null
+++ b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs
@@ -0,0 +1,32 @@
+using System;
+using System.Collections;
+using UnityEditor;
+
+namespace UnityEngine.TestTools
+{
+ public class ExitPlayMode : IEditModeTestYieldInstruction
+ {
+ public bool ExpectDomainReload { get; }
+ public bool ExpectedPlaymodeState { get; private set; }
+
+ public ExitPlayMode()
+ {
+ ExpectDomainReload = false;
+ ExpectedPlaymodeState = false;
+ }
+
+ public IEnumerator Perform()
+ {
+ if (!EditorApplication.isPlayingOrWillChangePlaymode)
+ {
+ throw new Exception("Editor is already in EditMode");
+ }
+
+ EditorApplication.isPlaying = false;
+ while (EditorApplication.isPlaying)
+ {
+ yield return null;
+ }
+ }
+ }
+}
diff --git a/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs.meta b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs.meta
new file mode 100644
index 0000000..19c058a
--- /dev/null
+++ b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/ExitPlayMode.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 408674d91d506a54aac9a7f07951c018
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs
new file mode 100644
index 0000000..96dc8f3
--- /dev/null
+++ b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs
@@ -0,0 +1,63 @@
+using System;
+using System.Collections;
+using UnityEditor;
+
+namespace UnityEngine.TestTools
+{
+ public class RecompileScripts : IEditModeTestYieldInstruction
+ {
+ public RecompileScripts() : this(true)
+ {
+ }
+
+ public RecompileScripts(bool expectScriptCompilation) : this(expectScriptCompilation, true)
+ {
+ }
+
+ public RecompileScripts(bool expectScriptCompilation, bool expectScriptCompilationSuccess)
+ {
+ ExpectScriptCompilation = expectScriptCompilation;
+ ExpectScriptCompilationSuccess = expectScriptCompilationSuccess;
+ ExpectDomainReload = true;
+ }
+
+ public bool ExpectDomainReload { get; private set; }
+ public bool ExpectedPlaymodeState { get; }
+ public bool ExpectScriptCompilation { get; private set; }
+ public bool ExpectScriptCompilationSuccess { get; private set; }
+ public static RecompileScripts Current { get; private set; }
+
+ public IEnumerator Perform()
+ {
+ Current = this;
+
+ // We need to yield, to give the test runner a chance to prepare for the domain reload
+ // If the script compilation happens very fast, then EditModeRunner.MoveNextAndUpdateYieldObject will not have a chance to set m_CurrentYieldObject
+ // This really should be fixed in EditModeRunner.MoveNextAndUpdateYieldObject
+ yield return null;
+
+ AssetDatabase.Refresh();
+
+ if (ExpectScriptCompilation && !EditorApplication.isCompiling)
+ {
+ Current = null;
+ throw new Exception("Editor does not need to recompile scripts");
+ }
+
+ EditorApplication.UnlockReloadAssemblies();
+
+ while (EditorApplication.isCompiling)
+ {
+ yield return null;
+ }
+
+ Current = null;
+
+ if (ExpectScriptCompilationSuccess && EditorUtility.scriptCompilationFailed)
+ {
+ EditorApplication.LockReloadAssemblies();
+ throw new Exception("Script compilation failed");
+ }
+ }
+ }
+}
diff --git a/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs.meta b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs.meta
new file mode 100644
index 0000000..07895f3
--- /dev/null
+++ b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/RecompileScripts.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 9202fbba95ea8294cb5e718f028f21b0
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs
new file mode 100644
index 0000000..19920a1
--- /dev/null
+++ b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs
@@ -0,0 +1,44 @@
+using System;
+using System.Collections;
+using UnityEditor;
+
+namespace UnityEngine.TestTools
+{
+ public class WaitForDomainReload : IEditModeTestYieldInstruction
+ {
+ public WaitForDomainReload()
+ {
+ ExpectDomainReload = true;
+ }
+
+ public bool ExpectDomainReload { get;  }
+ public bool ExpectedPlaymodeState { get; }
+
+ public IEnumerator Perform()
+ {
+ EditorApplication.UnlockReloadAssemblies();
+
+ // Detect if AssetDatabase.Refresh was called (true) or if it will be called on next tick
+ bool isAsync = EditorApplication.isCompiling;
+
+ yield return null;
+
+ if (!isAsync)
+ {
+ EditorApplication.LockReloadAssemblies();
+ throw new Exception("Expected domain reload, but it did not occur");
+ }
+
+ while (EditorApplication.isCompiling)
+ {
+ yield return null;
+ }
+
+ if (EditorUtility.scriptCompilationFailed)
+ {
+ EditorApplication.LockReloadAssemblies();
+ throw new Exception("Script compilation failed");
+ }
+ }
+ }
+}
diff --git a/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs.meta b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs.meta
new file mode 100644
index 0000000..b827ea8
--- /dev/null
+++ b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEditor.TestRunner/TestRunner/Messages/WaitForDomainReload.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 5df3c21c5237c994db89660fbdfee07d
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant: