refactor(srp): unify engine managed assembly discovery
This commit is contained in:
@@ -15,6 +15,7 @@
|
||||
#include <cstdint>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
#include <utility>
|
||||
|
||||
using namespace XCEngine::Components;
|
||||
using namespace XCEngine::Scripting;
|
||||
@@ -27,10 +28,6 @@ MonoScriptRuntime::Settings CreateMonoSettings() {
|
||||
settings.assemblyDirectory = XCENGINE_TEST_MANAGED_OUTPUT_DIR;
|
||||
settings.corlibDirectory = XCENGINE_TEST_MANAGED_OUTPUT_DIR;
|
||||
settings.coreAssemblyPath = XCENGINE_TEST_SCRIPT_CORE_DLL;
|
||||
settings.engineAssemblies.push_back(
|
||||
MonoScriptRuntime::ManagedAssemblyDescriptor{
|
||||
"XCEngine.RenderPipelines.Universal",
|
||||
XCENGINE_TEST_RENDER_PIPELINES_UNIVERSAL_DLL});
|
||||
settings.appAssemblyPath = XCENGINE_TEST_GAME_SCRIPTS_DLL;
|
||||
return settings;
|
||||
}
|
||||
@@ -163,7 +160,15 @@ protected:
|
||||
engine = &ScriptEngine::Get();
|
||||
engine->OnRuntimeStop();
|
||||
|
||||
runtime = std::make_unique<MonoScriptRuntime>(CreateMonoSettings());
|
||||
MonoScriptRuntime::Settings settings = CreateMonoSettings();
|
||||
std::string engineAssemblyError;
|
||||
ASSERT_TRUE(
|
||||
MonoScriptRuntime::DiscoverEngineAssemblies(
|
||||
settings,
|
||||
&engineAssemblyError))
|
||||
<< engineAssemblyError;
|
||||
|
||||
runtime = std::make_unique<MonoScriptRuntime>(std::move(settings));
|
||||
ASSERT_TRUE(runtime->Initialize()) << runtime->GetLastError();
|
||||
engine->SetRuntime(runtime.get());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user