title: PHPUnit's returnValueMap not yielding expected results
body: <p>I'm trying to use PHPUnit's <a href="http://www.phpunit.de/manual/3.6/en/test-doubles.html#test-doubles.stubs.examples.StubTest5.php">returnValueMap()</a> to stub out the results of a read.  It isn't yielding the expected results, but an equivalent returnCallback() does.  I've made my <a href="http://pastebin.com/xkRJdYfa">test case</a> available if you'd like to inspect it yourself.</p>
  
  <p><strong>returnValueMap()</strong></p>
  
  <pre><code>$enterprise = $this-&gt;getMock('Enterprise', array('field'));
  $enterprise-&gt;expects($this-&gt;any())
      -&gt;method('field')
      -&gt;will($this-&gt;returnValueMap(array(
          array('subscription_id', null),
          array('name', 'Monday Farms')
      )));
  $enterprise-&gt;subscribe('basic');
  </code></pre>
  
  <p>Results:</p>
  
  <pre><code>Subscription ID: NULL
  Name: NULL
  </code></pre>
  
  <p><strong>returnCallback()</strong></p>
  
  <pre><code>$enterprise = $this-&gt;getMock('Enterprise', array('field'));
  $enterprise-&gt;expects($this-&gt;any())
      -&gt;method('field')
      -&gt;will($this-&gt;returnCallback(function ($arg) {
          $map = array(
              'subscription_id' =&gt; null,
              'name' =&gt; 'Monday Farms'
          );
          return $map[$arg];
      }));
  $enterprise-&gt;subscribe('basic');
  </code></pre>
  
  <p>Results:</p>
  
  <pre><code>Subscription ID: NULL
  Name: string(12) "Monday Farms"
  </code></pre>
  
  <p><strong>Enterprise::subscribe</strong></p>
  
  <pre><code>public function subscribe() {
      echo 'Subscription ID: ';
      var_dump($this-&gt;field('subscription_id'));
      echo 'Name: ';
      var_dump($this-&gt;field('name'));
  }
  </code></pre>
  
  <p>Why doesn't returnValueMap() work as I expect it to?  What exactly am I missing?</p>