I think I'd rather the matcher be implemented like so:

``` ruby
return false if @expectation.expected_messages_received?
@expectation.ensure_expected_ordering_received!
true
```

I'm big on command/query separation, though, so I like pushing it through. YMMV :).