From c55fba8ab2a1c9d3df65eda4a5a1e957f4aa1f78 Mon Sep 17 00:00:00 2001 From: Andrew Lee Date: Sun, 19 Apr 2020 17:19:32 -0400 Subject: Inital commit --- .../NUnitExtensions/Attributes/TestEnumerator.cs | 52 ++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs (limited to 'Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs') diff --git a/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs new file mode 100644 index 0000000..18bb46c --- /dev/null +++ b/Library/PackageCache/com.unity.test-framework@1.1.11/UnityEngine.TestRunner/NUnitExtensions/Attributes/TestEnumerator.cs @@ -0,0 +1,52 @@ +using System; +using System.Collections; +using NUnit.Framework; +using NUnit.Framework.Interfaces; +using NUnit.Framework.Internal; + +namespace UnityEngine.TestTools +{ + internal class TestEnumerator + { + private readonly ITestExecutionContext m_Context; + private static IEnumerator m_TestEnumerator; + + public static IEnumerator Enumerator { get { return m_TestEnumerator; } } + + public TestEnumerator(ITestExecutionContext context, IEnumerator testEnumerator) + { + m_Context = context; + m_TestEnumerator = testEnumerator; + } + + public IEnumerator Execute() + { + m_Context.CurrentResult.SetResult(ResultState.Success); + + while (true) + { + object current = null; + try + { + if (!m_TestEnumerator.MoveNext()) + { + yield break; + } + + if (!m_Context.CurrentResult.ResultState.Equals(ResultState.Success)) + { + yield break; + } + + current = m_TestEnumerator.Current; + } + catch (Exception exception) + { + m_Context.CurrentResult.RecordException(exception); + yield break; + } + yield return current; + } + } + } +} -- cgit v1.2.3