Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJérémie Laval <jeremie.laval@gmail.com>2018-10-12 17:09:01 +0300
committerJérémie Laval <jeremie.laval@gmail.com>2018-10-15 18:15:52 +0300
commit01d1cce4a30139bde41c951d2b100283494ac96f (patch)
tree848bfcd2b996aff2e88e991d34b128404d14d605 /main/src/addins/MonoDevelop.UnitTesting.NUnit
parent5d638b629bac996f02c4a3190e0d50ab6438574b (diff)
[NUnit] Allow setting working directory of remote process and do so for unit-tests execution
Test suite usually expects the working directory to be the path of the test assembly.
Diffstat (limited to 'main/src/addins/MonoDevelop.UnitTesting.NUnit')
-rw-r--r--main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/ExternalTestRunner.cs6
-rw-r--r--main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/NUnitAssemblyTestSuite.cs4
2 files changed, 6 insertions, 4 deletions
diff --git a/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/ExternalTestRunner.cs b/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/ExternalTestRunner.cs
index 2d635ee4da..605c9175b6 100644
--- a/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/ExternalTestRunner.cs
+++ b/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/ExternalTestRunner.cs
@@ -46,15 +46,17 @@ namespace MonoDevelop.UnitTesting.NUnit.External
{
RemoteProcessConnection connection;
IRemoteEventListener listener;
+ readonly string assemblyDirectory;
- public ExternalTestRunner ()
+ public ExternalTestRunner (string assemblyDirectory = null)
{
+ this.assemblyDirectory = assemblyDirectory;
}
public Task Connect (NUnitVersion version, IExecutionHandler executionHandler = null, OperationConsole console = null)
{
var exePath = Path.Combine (Path.GetDirectoryName (GetType ().Assembly.Location), version.ToString (), "NUnitRunner.exe");
- connection = new RemoteProcessConnection (exePath, executionHandler, console, Runtime.MainSynchronizationContext);
+ connection = new RemoteProcessConnection (exePath, assemblyDirectory, executionHandler, console, Runtime.MainSynchronizationContext);
connection.AddListener (this);
return connection.Connect ();
}
diff --git a/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/NUnitAssemblyTestSuite.cs b/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/NUnitAssemblyTestSuite.cs
index 918627278a..b75a993743 100644
--- a/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/NUnitAssemblyTestSuite.cs
+++ b/main/src/addins/MonoDevelop.UnitTesting.NUnit/MonoDevelop.UnitTesting.NUnit/NUnitAssemblyTestSuite.cs
@@ -332,7 +332,7 @@ namespace MonoDevelop.UnitTesting.NUnit
try {
if (File.Exists (ld.Path)) {
- runner = new ExternalTestRunner ();
+ runner = new ExternalTestRunner (Path.GetDirectoryName (ld.Path));
runner.Connect (ld.NUnitVersion).Wait ();
var supportAssemblies = new List<string> (ld.SupportAssemblies.Result);
ld.Info = runner.GetTestInfo (ld.Path, supportAssemblies).Result;
@@ -397,7 +397,7 @@ namespace MonoDevelop.UnitTesting.NUnit
var console = testContext.ExecutionContext.ConsoleFactory.CreateConsole (
OperationConsoleFactory.CreateConsoleOptions.Default.WithTitle (GettextCatalog.GetString ("Unit Tests")));
- ExternalTestRunner runner = new ExternalTestRunner ();
+ ExternalTestRunner runner = new ExternalTestRunner (Path.GetDirectoryName (AssemblyPath));
runner.Connect (NUnitVersion, testContext.ExecutionContext.ExecutionHandler, console).Wait ();
LocalTestMonitor localMonitor = new LocalTestMonitor (testContext, test, suiteName, testName != null);