This is a code smell you have learned from PHPunit mocks/mockery, which you shouldn't apply to Prophecy.

You almost always have 2 types of methods: Query and Command. A *query* method returns a value and a *command* method contains logic to handle values. Query methods should have promises (e.g. `->willReturn()`), while a command method should have predictions (e.g. `->shouldBeCalled()`). Only in some rare cases, there is a method which is both a query and a command (this violates [CQRS](http://martinfowler.com/bliki/CQRS.html)). In that case, you can use both promises and predictions on one method.

In this test, all mocked methods are query methods which should only get promises. We shouldn't test if a `getUrlSchema` is called, the only thing we need to define is what it returns in case it is called.