using NUnit.Framework.Interfaces; using NUnit.Framework.Internal; using NUnit.Framework.Internal.Commands; using Unity.Profiling; using UnityEngine.TestRunner.NUnitExtensions.Runner; using UnityEngine.TestTools.TestRunner; namespace UnityEngine.TestTools { internal class UnityTestMethodCommand : TestMethodCommand { public UnityTestMethodCommand(TestMethod testMethod) : base(testMethod) {} public override TestResult Execute(ITestExecutionContext context) { using (new ProfilerMarker(Test.FullName).Auto()) { var result = base.Execute(context); if (((UnityTestExecutionContext) context).HasTimedOut()) { context.CurrentResult.RecordException(new UnityTestTimeoutException(context.TestCaseTimeout)); } return result; } } } }