Files
gitlabhq/app
Dmitriy Zaporozhets c530ca00b0 Merge branch 'fix-protected-branches-routing' into 'master'
Fix protected branches routing

### Summary

On the master branch, if you attempt to access the protected branches in the project settings with an empty repo, you get `NoMethodError - undefined method "project_url"`.

### Steps to reproduce

1. Check out GitLab master and run.
2. Create a new project.
3. Go to Settings.
4. Click on "Protected branches"

### Expected behavior

The controller is supposed to redirect back to the projects page since there are no branches.

### Observed behavior

Internal Error 500

### Relevant logs

```
NoMethodError - undefined method `project_url' for #<Projects::ProtectedBranchesController:0x007fd920054af0>:
  app/controllers/application_controller.rb:157:in `method_missing'
  actionpack (4.1.9) lib/action_dispatch/routing/polymorphic_routes.rb:142:in `polymorphic_url'
  actionpack (4.1.9) lib/action_dispatch/routing/url_for.rb:161:in `url_for'
  actionpack (4.1.9) lib/action_controller/metal/redirecting.rb:91:in `_compute_redirect_to_location'
  turbolinks (2.0.0) lib/turbolinks.rb:15:in `_compute_redirect_to_location_with_xhr_referer'
  actionpack (4.1.9) lib/action_controller/metal/redirecting.rb:71:in `redirect_to
```

### Fix

I added a unit test for the empty project case and replicated the issue. I added the URL router helpers that appear to be necessary after 42387b733b.

See merge request !359
2015-03-02 22:39:28 +00:00
..
2015-02-18 22:23:24 -08:00
2015-02-14 11:09:23 -07:00
2015-02-20 16:01:37 +01:00