示例#1
0
 public PlayerLauncher(PlaymodeTestsControllerSettings settings, BuildTarget?targetPlatform, ITestRunSettings overloadTestRunSettings, int heartbeatTimeout)
 {
     m_Settings                = settings;
     m_TargetPlatform          = targetPlatform ?? EditorUserBuildSettings.activeBuildTarget;
     m_OverloadTestRunSettings = overloadTestRunSettings;
     m_HeartbeatTimeout        = heartbeatTimeout;
 }
 static TestLauncherBase GetPlayerLauncher(PlaymodeTestsControllerSettings settings, ExecutionSettings executionSettings)
 {
     return(new PlayerLauncher(
                settings,
                executionSettings.targetPlatform.Value,
                executionSettings.overloadTestRunSettings));
 }
 public BuildConfigurationPlayerLauncher(PlaymodeTestsControllerSettings settings, TestJobData jobData)
 {
     m_Settings                   = settings;
     m_JobData                    = jobData;
     m_TargetPlatform             = ExecutionSettings.targetPlatform ?? EditorUserBuildSettings.activeBuildTarget;
     m_BuildConfigurationPlatform = m_TargetPlatform.GetPlatform() ?? throw new Exception($"Cannot resolve platform for {m_TargetPlatform}");
 }
示例#4
0
        protected void RunTestsInPlayer(TestRunnerFilter filter)
        {
            var settings     = PlaymodeTestsControllerSettings.CreateRunnerSettings(filter);
            var testExecutor = new PlayerLauncher(settings, null, null);

            testExecutor.Run();
            GUIUtility.ExitGUI();
        }
        public override IEnumerator Execute(TestJobData testJobData)
        {
            var executionSettings = testJobData.executionSettings;
            var settings          = PlaymodeTestsControllerSettings.CreateRunnerSettings(executionSettings.filters.Select(filter => filter.ToRuntimeTestRunnerFilter(executionSettings.runSynchronously)).ToArray());
            var launcher          = new PlayerLauncher(settings, executionSettings.targetPlatform, executionSettings.overloadTestRunSettings, executionSettings.playerHeartbeatTimeout, executionSettings.playerSavePath);

            launcher.Run();
            yield return(null);
        }
示例#6
0
        public override IEnumerator Execute(TestJobData testJobData)
        {
            var settings = PlaymodeTestsControllerSettings.CreateRunnerSettings(testJobData.executionSettings.filters.Select(filter => filter.ToTestRunnerFilter()).ToArray());
            var launcher = new PlaymodeLauncher(settings);

            launcher.Run();

            while (PlaymodeLauncher.IsRunning)
            {
                yield return(null);
            }
        }
 internal TestLauncherBase GetLauncher(ExecutionSettings executionSettings)
 {
     if (executionSettings.filter.testMode == TestMode.EditMode)
     {
         return(GetEditModeLauncher(executionSettings.filter));
     }
     else
     {
         var settings = PlaymodeTestsControllerSettings.CreateRunnerSettings(executionSettings.filter.ToTestRunnerFilter());
         return(GetPlayModeLauncher(settings, executionSettings));
     }
 }
示例#8
0
            public override IEnumerator Execute(TestJobData testJobData)
            {
                var settings = PlaymodeTestsControllerSettings.CreateRunnerSettings(testJobData.executionSettings.filters.Select(filter => filter.ToTestRunnerFilter()).ToArray());
                var launcher = new BuildConfigurationPlayerLauncher(settings, testJobData);

                launcher.Run();
                yield return(null);

                while (!RemoteTestRunController.instance.RunHasFinished)
                {
                    yield return(null);
                }
            }
        internal TestLauncherBase GetLauncher(ExecutionSettings executionSettings)
        {
            var filters = GetFilters(executionSettings);

            if (filters[0].testMode == TestMode.EditMode)
            {
                return(GetEditModeLauncher(GetFilters(executionSettings)));
            }
            else
            {
                var settings = PlaymodeTestsControllerSettings.CreateRunnerSettings(filters.Select(filter => filter.ToTestRunnerFilter()).ToArray());
                return(GetPlayModeLauncher(settings, executionSettings));
            }
        }
        static TestLauncherBase GetPlayModeLauncher(PlaymodeTestsControllerSettings settings, ExecutionSettings executionSettings)
        {
            if (executionSettings.targetPlatform != null)
            {
                return(GetPlayerLauncher(settings, executionSettings));
            }

            if (PlayerSettings.runPlayModeTestAsEditModeTest)
            {
                return(GetEditModeLauncherForProvidedAssemblies(executionSettings.filters, TestPlatform.PlayMode, false));
            }

            return(GetPlayModeLauncher(settings));
        }
        protected override void RunTests(TestRunnerFilter filter)
        {
            foreach (TestResult result in base.newResultList)
            {
                if (filter.Matches(result))
                {
                    result.resultType = TestResult.ResultType.NotRun;
                }
            }
            PlaymodeTestsControllerSettings settings = PlaymodeTestsControllerSettings.CreateRunnerSettings(filter);

            settings.bootstrapScene = SceneManager.GetActiveScene().path;
            settings.originalScene  = SceneManager.GetActiveScene().path;
            new PlaymodeLauncher(settings).Run();
            GUIUtility.ExitGUI();
        }
        public BuildConfigurationPlayerLauncher(PlaymodeTestsControllerSettings settings, TestJobData jobData)
        {
            m_Settings       = settings;
            m_JobData        = jobData;
            m_TargetPlatform = ExecutionSettings.targetPlatform ?? EditorUserBuildSettings.activeBuildTarget;

            switch (m_TargetPlatform)
            {
            case BuildTarget.StandaloneWindows64:
                m_BuildConfigurationPlatform = new WindowsPlatform();
                break;

            case BuildTarget.StandaloneOSX:
                m_BuildConfigurationPlatform = new MacOSXPlatform();
                break;

            case BuildTarget.StandaloneLinux64:
                m_BuildConfigurationPlatform = new LinuxPlatform();
                break;

            case BuildTarget.Android:
                m_BuildConfigurationPlatform = new AndroidPlatform();
                break;

            case BuildTarget.iOS:
                m_BuildConfigurationPlatform = new IosPlatform();
                break;

            case BuildTarget.XboxOne:
                m_BuildConfigurationPlatform = new XboxOnePlatform();
                break;

            case BuildTarget.PS4:
                m_BuildConfigurationPlatform = new PS4Platform();
                break;

            case BuildTarget.WSAPlayer:
                m_BuildConfigurationPlatform = new UniversalWindowsPlatform();
                break;

            default:
                throw new Exception($"Cannot resolve platform for {m_TargetPlatform}");
            }
        }
        public TestLauncherBase GetLauncher(ExecutionSettings executionSettings)
        {
            var filters = GetFilters(executionSettings);

            if (filters[0].testMode == TestMode.EditMode || filters[0].testMode == 0)
            {
                return(GetEditModeLauncher(GetFilters(executionSettings), executionSettings.runSynchronously));
            }
            else
            {
                if (executionSettings.runSynchronously)
                {
                    throw new NotSupportedException("Playmode tests cannot be run synchronously.");
                }

                var settings = PlaymodeTestsControllerSettings.CreateRunnerSettings(filters.Select(filter => filter.ToTestRunnerFilter()).ToArray());
                return(GetPlayModeLauncher(settings, executionSettings));
            }
        }
 static TestLauncherBase GetPlayerLauncher(PlaymodeTestsControllerSettings settings, BuildTarget targetPlatform, ITestRunSettings overloadTestRunSettings)
 {
     return(new PlayerLauncher(settings, targetPlatform, overloadTestRunSettings));
 }
 static TestLauncherBase GetPlayModeLauncher(PlaymodeTestsControllerSettings settings)
 {
     return(new PlaymodeLauncher(settings));
 }
 public PlaymodeLauncher(PlaymodeTestsControllerSettings settings)
 {
     this.m_Settings = settings;
 }
 protected void RunTestsInPlayer(TestRunnerFilter filter)
 {
     new PlayerLauncher(PlaymodeTestsControllerSettings.CreateRunnerSettings(filter)).Run();
     GUIUtility.ExitGUI();
 }