← Back to team overview

nunit-core team mailing list archive

[Bug 860558] Re: pnunit-agent can't run a tests from another folder

 

The upstream developers confirm that this bug exists and will work on
it. As a temporary measure, I'll add the two assemblies to those
supplied by AssemblyResolver.

However, the change you made won't do it because it merely includes .exe
files in the directory searched in addition to dlls. However, NUnit does
not use assemblyResolver on the directory containing pnunit-agent or the
one with pnunit.framework. It only adds the lib and addins directories
to AssemblyResolver.

However, these two assemblies can be handled specifically, using their
known locations.

I go into this detail in case you are using a non-standard layout of the
nunit files. If so, the fix won't work for you.

-- 
You received this bug notification because you are a member of NUnit
Developers, which is subscribed to NUnit V2.
https://bugs.launchpad.net/bugs/860558

Title:
  pnunit-agent can't run a tests from another folder

Status in NUnit V2 Test Framework:
  In Progress

Bug description:
  if the assembly `pnunit.tests.dll` located in another directory then
  the process `pnunit-agent.exe` can not download the file `pnunit-
  agent.exe` as a dll library.

  I recommend the following modification of the file:

  === modify file src/NUnitCore/core/AssemblyResolver.cs
  --- src/NUnitCore/core/AssemblyResolver.cs	2009-02-01 05:16:27 +0000
  +++ src/NUnitCore/core/AssemblyResolver.cs	2011-09-09 09:28:02 +0000
  @@ -9,7 +9,8 @@
    using System;
    using System.IO;
    using System.Reflection;
  -	using System.Collections;
  +	using System.Collections;
  +	using System.Collections.Generic;

    /// <summary>
    /// Class adapted from NUnitAddin for use in handling assemblies that are not
  @@ -92,8 +93,11 @@
      }

      foreach( string dir in _dirs )
  -			{
  -				foreach( string file in Directory.GetFiles( dir, "*.dll" ) )
  +			{
  +				List<string> dllCandidates = new List<string>();
  +				dllCandidates.AddRange(Directory.GetFiles(dir, "*.dll"));
  +				dllCandidates.AddRange(Directory.GetFiles(dir, "*.exe"));
  +				foreach (string file in dllCandidates)
       {
        string fullFile = Path.Combine( dir, file );
                       AssemblyReader rdr = new AssemblyReader(fullFile);

To manage notifications about this bug go to:
https://bugs.launchpad.net/nunitv2/+bug/860558/+subscriptions


References