title: verify with moq method is called with argument once
body: <p>The class under test (A) calls a method of Object b. I'd like to verify the called Method is executed once with each defined parameter combination.</p>
  <p>For the following code I'd like to verify CalledMethod is exactly once. Currently I verify the argument is in the list of arguments. But how to verify the arguments fit together and are only used once?</p>
  <pre class="lang-cs prettyprint-override"><code>public void CalledMethod(string source, string target);
  
  List&lt;string[]&gt; paths = new()
  {
      new string[] { &quot;incomingPath1&quot;, &quot;targetPath1&quot;},
      new string[] { &quot;incomingPath2&quot;, &quot;targetPath2&quot; },
      new string[] { &quot;incomingPath3&quot;, &quot;targetPath3&quot; },
  };
  // rearrange arguments
  List&lt;string&gt; incomingPaths = ...
  List&lt;string&gt; targetPaths = ...
  
  // current verification codecode
  mock.Setup(foo =&gt; foo.CalledMethod(It.IsIn&lt;String&gt;(incomingPaths), It.IsIn&lt;String&gt;(targetPaths), true));
  
  // do stuff
  ...
  
  // verify method is called once with each argument pair
  // How?
  </code></pre>