title: NSubstitute cannot determine argument specifications to use
body: <p>I use NUnit and NSubstitute for unit testing. I have the following:</p>
  
  <pre><code>public interface IDataProvider
  {
      void Log(int tvmId, DateTime time, int source, int level, int eventCode, string message);
  }
  
  ...
  
  var fakeDataProvider = Substitute.For&lt;IDataProvider&gt;();
  ...
  fakeDataProvider.Received().Log(
      Arg.Any&lt;int&gt;(),
      new DateTime(2000, 1, 1),
      0,
      0,
      0,
      null);
  </code></pre>
  
  <p>fakeDataProvider.Received() throws AmbiguousArgumentException with the message that it cannot determine argument specifications to use. I have found the following on SO</p>
  
  <p><a href="https://stackoverflow.com/questions/15417883/cannot-determine-argument-specifications-to-use">Cannot determine argument specifications to use</a></p>
  
  <p>which is related but I cannot apply it in the code above. Why is the above code ambiguous? How else could I specify to Received() that it should accept any argument?</p>