Testing helpers is handy, but if you have a lot of logic in your helpers, I recommend moving the logic into presenter objects. This is especially true if you have a series of helpers that take the same argument.
There’s nothing complicated about using presenters in Rails; I often roll my own using Ruby’s SimpleDelegator class. If you want a little more structure, you can use the draper gem.
We can convert the project helper to a project presenter. This version of the code uses SimpleDelegator and includes a method for converting a list of projects into a list of presenters. In a break from our usual convention, I’ll show you the code first:
class ProjectPresenter ...