• Yorick Peterse's avatar
    Refactoed GroupsFinder into two separate classes · 2110247f
    Yorick Peterse authored
    In the previous setup the GroupsFinder class had two distinct tasks:
    
    1. Finding the projects user A could see
    2. Finding the projects of user A that user B could see
    
    Task two was actually handled outside of the GroupsFinder (in the
    UsersController) by restricting the returned list of groups to those the
    viewed user was a member of. Moving all this logic into a single finder
    proved to be far too complex and confusing, hence there are now two
    finders:
    
    * GroupsFinder: for finding groups a user can see
    * JoinedGroupsFinder: for finding groups that user A is a member of,
      restricted to either public groups or groups user B can also see.
    2110247f
joined_groups_finder_spec.rb 1.45 KB