| using UnityEditor.TestTools.CodeCoverage.Analytics; |
| using UnityEditor.TestTools.CodeCoverage.Utils; |
| using UnityEngine.TestTools; |
|
|
| namespace UnityEditor.TestTools.CodeCoverage |
| { |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| public static class CodeCoverage |
| { |
| private static CoverageReporterManager s_CoverageReporterManager; |
|
|
| |
| |
| |
| |
| |
| |
| public static LogVerbosityLevel VerbosityLevel |
| { |
| set |
| { |
| ResultsLogger.VerbosityLevel = value; |
| } |
|
|
| get |
| { |
| return ResultsLogger.VerbosityLevel; |
| } |
| } |
|
|
| |
| |
| |
| public static void StartRecording() |
| { |
| CoverageAnalytics.instance.CurrentCoverageEvent.useAPI_StartRec = true; |
|
|
| StartRecordingInternal(); |
| } |
|
|
| internal static void StartRecordingInternal() |
| { |
| bool isRunning = CoverageRunData.instance.isRunning; |
|
|
| if (!isRunning) |
| { |
| Coverage.ResetAll(); |
|
|
| CoverageRunData.instance.StartRecording(); |
|
|
| if (s_CoverageReporterManager == null) |
| s_CoverageReporterManager = CoverageReporterStarter.CoverageReporterManager; |
| s_CoverageReporterManager.CreateCoverageReporter(); |
|
|
| ICoverageReporter coverageReporter = s_CoverageReporterManager.CoverageReporter; |
| if (coverageReporter != null) |
| coverageReporter.OnRunStarted(null); |
| } |
| } |
|
|
| |
| |
| |
| public static void PauseRecording() |
| { |
| CoverageAnalytics.instance.CurrentCoverageEvent.useAPI_PauseRec = true; |
|
|
| PauseRecordingInternal(); |
| } |
|
|
| internal static void PauseRecordingInternal() |
| { |
| bool isRunning = CoverageRunData.instance.isRunning; |
|
|
| if (isRunning) |
| { |
| if (CoverageRunData.instance.isRecording && !CoverageRunData.instance.isRecordingPaused) |
| { |
| if (s_CoverageReporterManager == null) |
| s_CoverageReporterManager = CoverageReporterStarter.CoverageReporterManager; |
|
|
| ICoverageReporter coverageReporter = s_CoverageReporterManager.CoverageReporter; |
| if (coverageReporter != null) |
| coverageReporter.OnCoverageRecordingPaused(); |
|
|
| CoverageRunData.instance.PauseRecording(); |
| } |
| } |
| } |
|
|
| |
| |
| |
| public static void UnpauseRecording() |
| { |
| CoverageAnalytics.instance.CurrentCoverageEvent.useAPI_UnpauseRec = true; |
|
|
| UnpauseRecordingInternal(); |
| } |
|
|
| internal static void UnpauseRecordingInternal() |
| { |
| bool isRunning = CoverageRunData.instance.isRunning; |
|
|
| if (isRunning) |
| { |
| if (CoverageRunData.instance.isRecording && CoverageRunData.instance.isRecordingPaused) |
| { |
| Coverage.ResetAll(); |
|
|
| CoverageRunData.instance.UnpauseRecording(); |
| } |
| } |
| } |
|
|
| |
| |
| |
| public static void StopRecording() |
| { |
| CoverageAnalytics.instance.CurrentCoverageEvent.useAPI_StopRec = true; |
|
|
| StopRecordingInternal(); |
| } |
|
|
| internal static void StopRecordingInternal() |
| { |
| bool isRunning = CoverageRunData.instance.isRunning; |
|
|
| if (isRunning) |
| { |
| if (CoverageRunData.instance.isRecording) |
| { |
| if (CoverageRunData.instance.isRecordingPaused) |
| Coverage.ResetAll(); |
|
|
| if (s_CoverageReporterManager == null) |
| s_CoverageReporterManager = CoverageReporterStarter.CoverageReporterManager; |
|
|
| ICoverageReporter coverageReporter = s_CoverageReporterManager.CoverageReporter; |
| if (coverageReporter != null) |
| coverageReporter.OnRunFinished(null); |
|
|
| CoverageRunData.instance.StopRecording(); |
|
|
| s_CoverageReporterManager.GenerateReport(); |
| } |
| } |
| } |
| } |
| } |
|
|