Skip to content
This repository has been archived by the owner on Feb 16, 2024. It is now read-only.

Support unity 2019.2-2023.1 #542

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -449,7 +449,11 @@ public static void Initialize()

try
{
#if UNITY_2020_3_OR_NEWER
dispatcher = GameObject.FindAnyObjectByType<MainThreadDispatcher>();
#else
dispatcher = GameObject.FindObjectOfType<MainThreadDispatcher>();
#endif
}
catch
{
Expand Down Expand Up @@ -577,7 +581,11 @@ static void DestroyDispatcher(MainThreadDispatcher aDispatcher)

public static void CullAllExcessDispatchers()
{
#if UNITY_2020_3_OR_NEWER
var dispatchers = GameObject.FindObjectsByType<MainThreadDispatcher>(FindObjectsSortMode.None);
#else
var dispatchers = GameObject.FindObjectsOfType<MainThreadDispatcher>();
#endif
for (int i = 0; i < dispatchers.Length; i++)
{
DestroyDispatcher(dispatchers[i]);
Expand All @@ -588,7 +596,11 @@ void OnDestroy()
{
if (instance == this)
{
#if UNITY_2020_3_OR_NEWER
instance = GameObject.FindAnyObjectByType<MainThreadDispatcher>();
#else
instance = GameObject.FindObjectOfType<MainThreadDispatcher>();
#endif
initialized = instance != null;

/*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -169,6 +169,7 @@ static void BuildTargetStandaloneWindows64()
SaveSettings(settings);
}

#if !UNITY_2019_2_OR_NEWER
[MenuItem("Test/Settings/BuildTarget/StandaloneLinux", validate = true, priority = 3)]
static bool ValidateBuildTargetStandaloneLinux()
{
Expand All @@ -184,6 +185,7 @@ static void BuildTargetStandaloneLinux()
settings.BuildTarget = BuildTarget.StandaloneLinux;
SaveSettings(settings);
}
#endif

[MenuItem("Test/Settings/BuildTarget/StandaloneLinux64", validate = true, priority = 4)]
static bool ValidateBuildTargetStandaloneLinux64()
Expand Down
24 changes: 24 additions & 0 deletions Assets/RuntimeUnitTestToolkit/Editor/UnitTestBuilder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,11 @@ public static void BuildUnitTest()
}
if (settings.UseCurrentScriptBackend)
{
#if UNITY_2021_2_OR_NEWER
settings.ScriptBackend = PlayerSettings.GetScriptingBackend(UnityEditor.Build.NamedBuildTarget.FromBuildTargetGroup(ToBuildTargetGroup(settings.BuildTarget)));
#else
settings.ScriptBackend = PlayerSettings.GetScriptingBackend(ToBuildTargetGroup(settings.BuildTarget));
#endif
}

if (buildPath == null)
Expand Down Expand Up @@ -386,17 +390,27 @@ static void Build(string sceneName, string buildPath, RuntimeUnitTestSettings se
{
options |= BuildOptions.AutoRunPlayer;
}
#if !UNITY_2021_2_OR_NEWER
if (settings.Headless)
{
options |= BuildOptions.EnableHeadlessMode;
}
#endif

var targetGroup = ToBuildTargetGroup(settings.BuildTarget);
#if UNITY_2021_2_OR_NEWER
var currentBackend = PlayerSettings.GetScriptingBackend(UnityEditor.Build.NamedBuildTarget.FromBuildTargetGroup(targetGroup));
#else
var currentBackend = PlayerSettings.GetScriptingBackend(targetGroup);
#endif
if (currentBackend != settings.ScriptBackend)
{
UnityEngine.Debug.Log("Modify ScriptBackend to " + settings.ScriptBackend);
#if UNITY_2021_2_OR_NEWER
PlayerSettings.SetScriptingBackend(UnityEditor.Build.NamedBuildTarget.FromBuildTargetGroup(targetGroup), settings.ScriptBackend);
#else
PlayerSettings.SetScriptingBackend(targetGroup, settings.ScriptBackend);
#endif
}

var buildOptions = new BuildPlayerOptions
Expand All @@ -407,6 +421,12 @@ static void Build(string sceneName, string buildPath, RuntimeUnitTestSettings se
scenes = new[] { sceneName },
locationPathName = buildPath
};
#if UNITY_2021_2_OR_NEWER
if (settings.Headless)
{
buildOptions.subtarget = (int)StandaloneBuildSubtarget.Server;
}
#endif

UnityEngine.Debug.Log("UnitTest Build Start, " + settings.ToString());

Expand All @@ -415,7 +435,11 @@ static void Build(string sceneName, string buildPath, RuntimeUnitTestSettings se
if (currentBackend != settings.ScriptBackend)
{
UnityEngine.Debug.Log("Restore ScriptBackend to " + currentBackend);
#if UNITY_2021_2_OR_NEWER
PlayerSettings.SetScriptingBackend(UnityEditor.Build.NamedBuildTarget.FromBuildTargetGroup(targetGroup), currentBackend);
#else
PlayerSettings.SetScriptingBackend(targetGroup, currentBackend);
#endif
}

if (buildReport.summary.result != BuildResult.Succeeded)
Expand Down