title: Fake plugin behavior in FakeXrmEasy?
body: <p>I've been using FakeXrmEasy to write unit tests for the past week or so, and I'm generally happy with how it works. But there's one area where I'm not able to get the mock to work as I want it to. </p>
  
  <p>In the Dynamics CRM installation, there's a plugin running, that sets the Order Number on the Sales Order. Without this, the returned order number's value is always null.</p>
  
  <p>How can i tell the FakeXrmEasy mock to set the ordernumber value? Ideally I'd like to tap into the request pipeline more or less like so:</p>
  
  <pre><code>    var context = new FakeXrmEasy.XrmFakedContext();
      context.Initialize(TestEntities);    
  
      context.TamperWithResults&lt;RetrieveRequest&gt;( x =&gt; { 
             return SetOrderNumber(x); 
          });
  
     context.GetFakedOrganizationService();
  
     var result = context.Retrieve(...);
  </code></pre>
  
  <p>I could attempt using the .AddExecutionMock to mock the entire result, but the response in question is used to verify that the sales order was indeed saved with the correct values.  </p>
  
  <p><strong>Update - more detailed info</strong>
  Perhaps I should have gone a little more into detail when asking the question. I've just joined an exisiting project and I'm writing tests to existing code. The failing test is running a function that does this:</p>
  
  <ul>
  <li>Validates input</li>
  <li>Creates sales order</li>
  <li><em>Retrieves that sales order</em></li>
  <li>Create SalesOrderDetails for each order line</li>
  <li>Returns a result object containing the order number</li>
  </ul>
  
  <p>Now since the function attempts to save the order, I cannot add it to the context in setup unless I can specify the Guid that will be returned by the Create() call.</p>