public it_does_not_score_traversable_object_if_key_and_value_tokens_do_not_score_same_entry ( Prophecy\Argument\Token\TokenInterface $key, Prophecy\Argument\Token\TokenInterface $value, Iterator $object ) | ||
$key | Prophecy\Argument\Token\TokenInterface | |
$value | Prophecy\Argument\Token\TokenInterface | |
$object | Iterator |
function it_does_not_score_traversable_object_if_key_and_value_tokens_do_not_score_same_entry(TokenInterface $key, TokenInterface $value, \Iterator $object)
{
$object->current()->willReturn('foo');
$object->current()->will(function () use($object) {
$object->valid()->willReturn(false);
return 'bar';
});
$object->key()->willReturn(1);
$object->key()->willReturn(2);
$object->rewind()->willReturn(null);
$object->next()->willReturn(null);
$object->valid()->willReturn(true);
$key->scoreArgument(1)->willReturn(true);
$key->scoreArgument(2)->willReturn(false);
$value->scoreArgument('foo')->willReturn(false);
$value->scoreArgument('bar')->willReturn(true);
$this->scoreArgument($object)->shouldBe(false);
}