Commit Graph
2639 Commits
Author SHA1 Message Date
Robert Speicher b07ecbb5e3 Simplify AutolinkFilter specs 2015-07-28 18:56:26 -04:00
Stan Hu 5bdcef7b0b Change before(:all) -> let! to avoid leaking data across tests
Closes https://github.com/gitlabhq/gitlabhq/issues/9495
2015-07-28 13:06:13 -07:00
Douwe Maan 43d1188031 Merge branch 'fix-api-mr-notes-ordering' into 'master'
Return comments in created order in merge request API

Closes #1832

See merge request !985
2015-07-28 09:15:08 +00:00
Douwe Maan 4fae34d629 Merge branch 'fix-quotes-in-branch' into 'master'
Fix commit data retrieval when branch name has single quotes

Quotes in ref names need to be escaped properly in JavaScript.

Closes #1724

See merge request !1046
2015-07-28 09:13:52 +00:00
Valery Sizov e1cdc26e48 Merge branch 'rs-dev-issue-306' into 'master'
Create project services on Project creation

Closes internal https://dev.gitlab.org/gitlab/gitlab-ee/issues/306#note_53354

See merge request !1045
2015-07-27 07:36:14 +00:00
Stan Hu 562242cb9d Fix commit data retrieval when branch name has single quotes
Closes #1724
2015-07-26 03:47:01 -07:00
Robert Speicher 88aed40962 Create project services on Project creation 2015-07-25 16:43:55 -04:00
Robert Speicher d92668a05b Only create :admin user in the one test where it's used 2015-07-25 16:42:28 -04:00
Stan Hu 4a76cbe219 Merge branch 'fix-reload-with-full-diff-url' into 'master'
Fix the "Reload with full diff" URL button

On the first load, the merge request tabs would be requested in JSON format to render
the HTML. This would cause the "Reload with full diff" button to create a link to `diff.json`. Instead, generate the path in HTML mode.

Closes #2041

See merge request !1019
2015-07-25 15:38:23 +00:00
Valery Sizov bbbcc9657f Merge branch 'fix-error-500-when-no-head' into 'master'
Fix error 500 when no HEAD is available

Steps to reproduce:

1. Create a project with a README
2. In the actual remote, type: `git symbolic-ref HEAD refs/heads/nowhere`
3. Check that HEAD is gone via `git ls-remote .`
4. Go to the projects page and see the Error 500

Error:

```
NoMethodError - undefined method `sha' for nil:NilClass:
  app/helpers/projects_helper.rb:281:in `readme_cache_key'
  app/views/projects/_readme.html.haml:10:in `_app_views_projects__readme_html_haml___2036282917939462960_70154565285700'
  actionview (4.1.11) lib/action_view/template.rb:145:in `block in render'
  activesupport (4.1.11) lib/active_support/notifications.rb:159:in `block in instrument'
  activesupport (4.1.11) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
  activesupport (4.1.11) lib/active_support/notifications.rb:159:in `instrument'
  actionview (4.1.11) lib/action_view/template.rb:339:in `instrument'
  actionview (4.1.11) lib/action_view/template.rb:143:in `render'
  rack-mini-profiler (0.9.0) lib/mini_profiler/profiling_methods.rb:108:in `block in profile_method'
  actionview (4.1.11) lib/action_view/renderer/partial_renderer.rb:306:in `render_partial'
  actionview (4.1.11) lib/action_view/renderer/partial_renderer.rb:279:in `block in render'
  actionview (4.1.11) lib/action_view/renderer/abstract_renderer.rb:38:in `block in instrument'
  activesupport (4.1.11) lib/active_support/notifications.rb:159:in `block in instrument'
  activesupport (4.1.11) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
  activesupport (4.1.11) lib/active_support/notifications.rb:159:in `instrument'
  actionview (4.1.11) lib/action_view/renderer/abstract_renderer.rb:38:in `instrument'
  actionview (4.1.11) lib/action_view/renderer/partial_renderer.rb:278:in `render'
  actionview (4.1.11) lib/action_view/renderer/renderer.rb:47:in `render_partial'
  actionview (4.1.11) lib/action_view/helpers/rendering_helper.rb:35:in `render'
  haml (4.0.5) lib/haml/helpers/action_view_mods.rb:10:in `block in render_with_haml'
  haml (4.0.5) lib/haml/helpers.rb:89:in `non_haml'
  haml (4.0.5) lib/haml/helpers/action_view_mods.rb:10:in `render_with_haml'
  app/views/projects/show.html.haml:47:in `_app_views_projects_show_html_haml__1458303859692972698_70154948164180'
  actionview (4.1.11) lib/action_view/template.rb:145:in `block in render'
  activesupport (4.1.11) lib/active_support/notifications.rb:159:in `block in instrument'
```

Closes https://github.com/gitlabhq/gitlabhq/issues/9484, but there may be some other issue there.

See merge request !1041
2015-07-24 20:18:14 +00:00
Stan Hu a5e8ea54ec Fix Error 500 when browsing projects with no HEAD
Steps to reproduce:
1. Create a project with a README
2. In the actual remote, type: `git symbolic-ref HEAD refs/heads/nowhere`
3. Check that HEAD is gone via `git ls-remote .`
4. Go to the projects page and see the Error 500

Closes https://github.com/gitlabhq/gitlabhq/issues/9484
2015-07-24 10:14:58 -07:00
Valery Sizov 70de5114fb Merge branch 'auth-icons-labels' into 'master'
Allow custom label to be set for authentication providers.

Addresses internal issue https://dev.gitlab.org/gitlab/gitlabhq/issues/2341

Beside the above, I've:
- Refactored `OauthHelper` to have clearer method names and behaviour
- Moved some of `OauthHelper` behaviour to `Gitlab::OAuth::Provider`
- Renamed `OauthHelper` to `AuthHelper` since LDAP, SAML, Kerberos aren't OAuth
- Updated the icons for GitHub and GitLab

In the examples below, "OurAuth" is a SAML provider with a custom label.

![Screen_Shot_2015-07-02_at_16.29.52](https://gitlab.com/gitlab-org/gitlab-ce/uploads/7d425bde69dc34e1667ebd5375d0266d/Screen_Shot_2015-07-02_at_16.29.52.png)

![Screen_Shot_2015-07-02_at_16.31.40](https://gitlab.com/gitlab-org/gitlab-ce/uploads/cbb273321ecdf4cab3d3ef0dc35553e7/Screen_Shot_2015-07-02_at_16.31.40.png)

![Screen_Shot_2015-07-02_at_16.32.39](https://gitlab.com/gitlab-org/gitlab-ce/uploads/d8dd6e1d0dc45a788e869cdcdc99e178/Screen_Shot_2015-07-02_at_16.32.39.png)

![Screen_Shot_2015-07-02_at_16.33.18](https://gitlab.com/gitlab-org/gitlab-ce/uploads/7dbfe8b0ae229c32a08d6c7442976d83/Screen_Shot_2015-07-02_at_16.33.18.png)


See merge request !927
2015-07-24 11:28:55 +00:00
Douwe Maan 0c1d912559 Merge branch 'rs-issue-2012' into 'master'
Make username parameter for Users#show case-insensitive

Closes #2012

See merge request !996
2015-07-24 09:29:58 +00:00
Robert Speicher 5ce6d18681 Add User.find_by_username! 2015-07-23 17:16:39 -04:00
Stan Hu ae3f869fd1 Fix the "Reload with full diff" URL button
On the first load, the merge request tabs would be requested in JSON format to render
the HTML. This would cause the "Reload with full diff" button to create a link to diff.json.

Closes #2041
2015-07-23 12:53:54 -07:00
Douwe Maan 70a3c165a9 Allow custom label to be set for authentication providers. 2015-07-23 15:20:12 +02:00
Douwe Maan 546731244a Merge branch 'rs-security-spec-speed' into 'master'
Speed up security feature specs

Before: `rspec spec/features/security/  0.12s user 0.04s system 0% cpu 3:38.00 total`

After: `rspec spec/features/security/  0.12s user 0.04s system 0% cpu 1:40.58 total`

The majority of the speed improvements is from two things:

1. Instead of using our standard `login_as` helper in the matchers, we take advantage
   of the `Warden::Test::Helpers` version of the method which bypasses the login form
   and logs the user in directly. We were essentially testing that filling out the login
   form works hundreds of times.
2. There were many tests that verified if a user of a certain access level
   (master, owner, reporter, guest) had access to a resource. Unfortunately we were
   creating every type of user for each test even though a test was only verifying one of
   them at a time. Now the tests only create the one user role they're testing.

See merge request !1023
2015-07-22 09:22:43 +00:00
Robert Speicher b42422a7a9 Move spec/features/admin/security_spec to spec/features/security 2015-07-22 00:39:18 -04:00
Robert Speicher b24d5f13a5 Consolidate group access specs into one file 2015-07-22 00:01:17 -04:00
Robert Speicher 0d5cf111f3 Move custom matchers to their own files under spec/support/matchers 2015-07-22 00:01:17 -04:00
Robert Speicher ff8811c40b Remove redundant Profile access test cases
The user being created was no different than what `be_allowed_for` was
doing behind the scenes so we were essentially testing all user-level
accesses twice.
2015-07-22 00:01:17 -04:00
Robert Speicher 421b06508d Remove be_not_found_for matcher
It was only used in one test, and the test was kind of redundant.
2015-07-22 00:01:17 -04:00
Robert Speicher a2ecfdc585 Move access-related matchers to their own module 2015-07-22 00:01:17 -04:00
Robert Speicher 1fee24a361 Remove unused be_valid_commit matcher 2015-07-21 22:11:08 -04:00
Stan Hu 5aff5223d4 Clearing the entire Redis cache may be too expensive; just use
the repository expire_cache method
2015-07-21 19:09:33 -07:00
Stan Hu 643557dabc Fix 404 error in files view after deleting the last file in a repository
Closes #1362
2015-07-21 14:12:43 -07:00
Sven Strickroth 5eeab9f0a6 GoogleCode importer: Do not care about casing of image file extensions
Signed-off-by: Sven Strickroth <email@cs-ware.de>
2015-07-20 00:53:43 +02:00
Robert Speicher a364d4260d Make username parameter for Users#show case-insensitive
Closes #2012
2015-07-18 17:54:56 -04:00
Robert Speicher dd6daf4656 Add test case for clicking line number anchor icon 2015-07-17 20:40:56 -04:00
Stan Hu a84ed6eb23 Merge branch 'add-support-remove-milestone' into 'master'
Add support for destroying project milestones

### What does this MR do?

This MR adds a "Remove" button to the project milestones page and the milestone page itself.

### Why was this MR needed?

Because lots of people talked about needing to clean their toilets. :)

### What are the relevant issue numbers?

Closes https://github.com/gitlabhq/gitlabhq/issues/1504

### Screenshots

![image](https://gitlab.com/gitlab-org/gitlab-ce/uploads/ef8c7a3ea1db7b37cccae3869ac4de0a/image.png)

![image](https://gitlab.com/gitlab-org/gitlab-ce/uploads/33eb01c7bc30fb235de96db5efb8746d/image.png)

See merge request !980
2015-07-17 17:15:27 +00:00
Marin Jankovski 77f325a49f Do not disappoint rubocop. 2015-07-17 17:17:33 +02:00
Marin Jankovski c7daa5f17f Add specs for gitlab ci service validity. 2015-07-17 17:03:15 +02:00
Marin Jankovski 302c52551a Fix failing specs after adding format verification for token and project url in gitlab ci service. 2015-07-17 15:58:26 +02:00
Stan Hu df2bb60f90 Add support for destroying project milestones
Closes https://github.com/gitlabhq/gitlabhq/issues/1504
2015-07-17 06:54:32 -07:00
Stan Hu 6c9f527b3f Return comments in created order in merge request API
Closes #1832
2015-07-16 22:33:58 -07:00
Dmitriy Zaporozhets 87e6786aa0 Merge branch 'rs-fix-coverage' into 'master'
Move coverage-related setup back to spec_helper

These tools must be loaded before our regular Rails environment.

Partially reverts 57830201a9

See merge request !976
2015-07-14 09:03:03 +00:00
Robert Speicher ce02bf9900 Move coverage-related setup back to spec_helper
These tools must be loaded before our regular Rails environment.
2015-07-13 22:41:47 -04:00
Robert Speicher f3d4767d0c Rename notice_added_references to create_new_cross_references! 2015-07-13 21:31:16 -04:00
Robert Speicher e4c698fd5c Refactor Mentionable#notice_added_references
It now accounts for models that have changed but have already been
persisted, such as when called from an UpdateService.

Closes #1773
2015-07-13 21:31:00 -04:00
Dmitriy Zaporozhets 00053c805c Merge branch 'ssh-key-linebreaks' into 'master'
Add error message for SSH key linebreaks

Solves this [request](http://feedback.gitlab.com/forums/176466-general/suggestions/5653544-check-for-linebreaks-in-ssh-key).

See merge request !672
2015-07-13 09:33:55 +00:00
Dmitriy Zaporozhets 171d6fccae Merge branch 'rs-disable-2fa-by-admin' into 'master'
Allow admins to disable 2FA for a user

> ![Screen_Shot_2015-07-10_at_5.19.13_PM](https://gitlab.com/gitlab-org/gitlab-ce/uploads/3f9bb7c783110d2689c282879cb4b061/Screen_Shot_2015-07-10_at_5.19.13_PM.png)

Depends on !961

See merge request !962
2015-07-13 08:49:46 +00:00
Dmitriy Zaporozhets d93da8bed5 Merge branch 'rs-disable-2fa' into 'master'
Add User#disable_two_factor!

This method encapsulates all the logic for disabling 2FA on a specific
User model.

See merge request !961
2015-07-13 08:47:55 +00:00
Dmitriy Zaporozhets 10d5da784b Merge branch 'fix-api-project-transfer' into 'master'
Fix transferring of project to another group using the API.

Addresses internal issue https://dev.gitlab.org/gitlab/gitlabhq/issues/2397.

See merge request !926
2015-07-13 08:42:42 +00:00
Dmitriy Zaporozhets d3d1e9ef65 Merge branch 'search-git-grep' into 'master'
Implement faster search of code (via git grep)

Much faster than iterating over each file using rugged.

Performance compare for Linux repository using keyword `sha`:

```
OLD: 250 seconds
NEW: 9 seconds
```

See merge request !957
2015-07-12 13:03:12 +00:00
Dmitriy Zaporozhets ec19a960ca Add tests for repository search files
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-12 14:32:25 +02:00
Douwe MaanandRobert Speicher 29cbb2f078 Update specs. 2015-07-11 16:47:33 -04:00
Nikita Verkhovin 562d78a65a Add error message for SSH key linebreaks 2015-07-12 00:18:56 +06:00
Stan Hu 96644c1fc1 Better handle unknown projects and groups for autocomplete 2015-07-11 06:19:32 -07:00
Hannes Rosenögger d0b240136a Merge branch 'fix-autocomplete-with-public-projects' into 'master'
Fix user autocomplete for unauthenticated users accessing public projects

Closes #1955

See merge request !963
2015-07-11 12:54:09 +00:00
Stan Hu 0b67d7a0fe Fix user autocomplete for unauthenticated users accessing public projects
Closes #1955
2015-07-10 17:39:58 -07:00