title: Partial Mock Test fails on call in Private Method that was called from Mocked method call
body: <p>Below, I have code for an object that I would like to test. 
  I am using a partial mock in my test and want to mock out the call to InsertData when I am testing the GenerateReport method.
  For some reason, my test continues down through InsertData to DoSomeStuff and fails on the Path.Combine line. What am I missing?</p>
  
  <pre><code>public class MyClass : IMyClass
  {
      private readonly IMyClassDataProvider _myClassDataProvider;
  
      public virtual string WorkingDirectory { get; set; }
  
      public MyClass(IMyClassDataProvider myClassDataProvider)
      {
          _myClassDataProvider = myClassDataProvider;
      }
  
      internal virtual void ValidateWorkingDirectory()
      {
          if (string.IsNullOrEmpty(WorkingDirectory))
          {
              throw new ApplicationException("Must set Working Directory before any method calls.");
          }
      }
  
      public virtual void GenerateReport(vars)
      {
          ValidateWorkingDirectory();
          InsertData(_myClassDataProvider.GetData(vars), "ReportName"); 
                      //want to mock the call above
      }
  
      internal virtual void InsertData(DataSet analysis, string fileName)
      {
          DoSomeStuff();
      }
  
      private static void DoSomeStuff()
      {
          string fileName = FileNameProvider.Get();
          Path.Combine(WorkingDirectory, fileName); //fails here!
      }
  }
  
  
  [TestFixture]
  public class MyClassTests : TestFixtureBase
  {
      private MockRepository _mocks;
      private IMyClassDataProvider  _myClassDataProvider;
      private MyClass _myClass;
      private var _vars;
  
      [SetUp]
      protected void Init()
      {
          _mocks = new MockRepository();
          _myClassDataProvider = _mocks.StrictMock&lt;IMyClassDataProvider &gt;();
          _myClass = _mocks.PartialMock&lt;MyClass&gt;(_myClassDataProvider);
          _vars = "who cares";
      }
  
      [Test]
      public virtual void ShouldGenerateReport()
      {
          DataSet dataSetToReturn = new DataSet();
          using (_mocks.Ordered())
          {
              Expect.Call(() =&gt; _myClass.ValidateWorkingDirectory());
              Expect.Call(_myClassDataProvider.GetData(vars)).Return(dataSetToReturn);
              Expect.Call(() =&gt; _myClass.InsertData(dataSetToReturn, "ReportName"));
          }
          _mocks.ReplayAll();
          _myClass.GenerateReport(vars);
          _mocks.VerifyAll();
      }
  }
  </code></pre>