The best solution is the one that gets the tests to pass
As I said yesterday, there is no perfect solution or approach for every situation.
However, when doing test-driven development, there is a best solution.
The simplest thing that gets a failing test to pass.
Whether it's hard-coding a return value or putting the initial logic in a Controller, that's the objective.
Once the test is passing, you can refactor the code or continue writing tests, which will each have their own best solution.
- Oliver