Bug #34: InvalidCastException is raised when using AssemblyRunner

1) Fix an issue by adding an AssemblyResolve to find a missing xunit libraries.
This commit is contained in:
Oleksii Zarubin
2023-11-14 15:39:52 +02:00
parent 087788f7a1
commit f50e45f564
@@ -30,6 +30,17 @@ namespace xUnitRevit
xUnitRevitButton.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, "https://speckle.systems"));
}
AppDomain.CurrentDomain.AssemblyResolve += delegate (object sender, ResolveEventArgs e)
{
String currentFolder = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
AssemblyName requestedName = new AssemblyName(e.Name);
if (requestedName.Name == "xunit.abstractions" || requestedName.Name == "xunit.runner.utility.net452")
{
var resolvedAssembly = Assembly.LoadFrom(Path.Combine(currentFolder, requestedName.Name + ".dll"));
return resolvedAssembly;
}
return null;
};
return Result.Succeeded;
}