Commit graph

332 commits

Author SHA1 Message Date
Sebastian Ziebell
818caf0b5d API: refined status code handling when adding or updating a project member
When a user is added to a project that is already a member of, a status code 201 is now returned to
signal an idempotent operation. If something fails then instead of returning error code 404 different
more specific error codes are returned. Status code 400 (Bad request) is returned when a required
attribute, e.g. `access_level` is not given or 422 if there is a semantic error, e.g. should
the `access_level` have an unsupported value.

Specs are added to check these status codes.
2013-02-08 14:33:29 +01:00
Sebastian Ziebell
8045a81bcf Merge branch 'master' into fixes/api 2013-02-08 10:32:42 +01:00
Sebastian Ziebell
5d8a99f104 Test to check a user must be part of the team to see project.
A user must be part of the team to see a protected project. A test is given
to check that a 404 error is returned if the user can not see the project.
2013-02-06 17:11:01 +01:00
Sebastian Ziebell
bb24275f8d Status code 400 is returned if body is missing on note creation.
If a note is created with a POST request via API (`/projects/:id/notes`) status
code 400 is returned instead of 404. The resource itself exists but the request
is incomplete. Specs added to check different status codes when accessing, creating
and updating notes.
2013-02-06 17:11:00 +01:00
Sebastian Ziebell
b9d40d2524 Tests added to check status codes when handling milestone via API
A few more tests added to check status code when creating or updating milestones.
2013-02-06 17:11:00 +01:00
Sebastian Ziebell
41e93bbfe2 Test added to check creation of note to a non-existent MR via API 2013-02-06 17:05:55 +01:00
Sebastian Ziebell
f978a71f41 Creating MR comment without a note returns status code 400 (Bad request)
Creating a comment to an existing merge request via API without providing a note
returns a status code 400 now, suggesting a bad request. The reason for this
is the resource itself (MR) exists but the required property is not set.
2013-02-06 17:02:30 +01:00
Sebastian Ziebell
413952ff94 Creating or updating a MR returns more informative status codes.
Using the API library to create or update a merge request at the moment a 404 error is returned.
This is fine when the merge request in question does not exist, but does not provide good
information that for example a required attribute is missing.
A status code of 400 (Bad request) is returned when creating or updating a merge request
when either `source_branch` or `target_branch` is missing. A status code of 409 is returned
when `source_branch` and `target_branch` are the same. Tests are added for these cases.
2013-02-06 16:57:00 +01:00
Christian Simon
6dba727cb2 Add test for duplicate group paths 2013-02-01 18:58:53 +01:00
Christian Simon
fc0c692870 Add docs/tests for groups api 2013-02-01 14:59:22 +01:00
Felix Gilcher
ce6436b98a Don't crash when removing a user that's not project member
The attempt to revoke project access for a user that was not member of the
project results in a 500 Internal Server error where it actually should
result in a 200 OK since after the operation, the user is not member of
the project. This turns the operation into an idempotent call that can
be repeated with no ill effects.

Updated the spec and changed the code accordingly. However, the result differs
slightly, as we can't return the users project access level if the user was not
member. I'm not aware if anybody relies on the result of this call.

Fixes #2832
2013-02-01 13:53:35 +00:00
Dmitriy Zaporozhets
5857a7a9ce Merge pull request #2839 from m4tthumphrey/protected-branches-api
Added methods to protect and unprotect branches in from the API
2013-01-31 10:44:20 -08:00
Dmitriy Zaporozhets
dfe2a742c2 fix notes specs 2013-01-31 13:13:17 +02:00
Dmitriy Zaporozhets
fd1b9fdc12 Merge branch 'extend_user_api' of https://github.com/bladealslayer/gitlabhq into bladealslayer-extend_user_api
Conflicts:
	spec/requests/api/users_spec.rb
2013-01-31 13:00:50 +02:00
Matt Humphrey
2c7554e897 Added methods to protect and unprotect branches 2013-01-31 09:26:03 +00:00
Dmitriy Zaporozhets
9da7b2e8d8 add specs for api -> merge request notes 2013-01-31 08:42:11 +02:00
Dmitriy Zaporozhets
7175b6a769 Fixed dashboard show specs 2013-01-27 13:20:23 +02:00
Marin Jankovski
296cdd591f Add optional signup. 2013-01-18 11:57:31 +01:00
Dmitriy Zaporozhets
fd522b3257 should be green build now :) 2013-01-15 19:18:52 +02:00
Dmitriy Zaporozhets
cc54c66fd0 Fix spec/requests/notes_on_merge_requests_spec.r 2013-01-15 18:20:58 +02:00
Dmitriy Zaporozhets
2191efd8ec fix notes_on_wall specs 2013-01-15 15:04:22 +02:00
Dmitriy Zaporozhets
ac983319d3 fixing some test 2013-01-15 12:42:54 +02:00
Riyad Preukschas
d28176b132 Replace commit diff note request specs with spinach features 2013-01-15 00:52:57 +01:00
Riyad Preukschas
f8e1f4a7c9 Replace commit note request specs with spinach features 2013-01-15 00:52:55 +01:00
Riyad Preukschas
3022786948 Merge commit 'master' into discussions
Conflicts:
	app/assets/stylesheets/sections/notes.scss
	app/contexts/notes/load_context.rb
	app/models/project.rb
	app/observers/note_observer.rb
	app/roles/votes.rb
	app/views/commit/show.html.haml
	app/views/merge_requests/_show.html.haml
	app/views/merge_requests/diffs.js.haml
	app/views/merge_requests/show.js.haml
	app/views/notes/_note.html.haml
	features/steps/project/project_merge_requests.rb
	spec/models/note_spec.rb
2013-01-15 00:52:25 +01:00
Riyad Preukschas
8ee5fce9d6 Add preliminary specs for notes on merge requests 2013-01-15 00:27:59 +01:00
Dmitriy Zaporozhets
9773ccc451 sidekiq with green tests 2013-01-09 09:14:05 +03:00
Dmitriy Zaporozhets
2f6603e581 A bit of spinach tests 2013-01-09 08:14:05 +03:00
Riyad Preukschas
8c604c9d31 Add specs for notes on wall 2013-01-05 22:58:36 +01:00
Riyad Preukschas
1883e0830c Add specs for notes on commits 2013-01-05 22:58:27 +01:00
Dmitriy Zaporozhets
de6fa5dd52 Fix security spec 2013-01-05 00:49:43 +02:00
Dmitriy Zaporozhets
9a88e4d184 Fix some tests. Use travis-ci 1.9.2 2013-01-05 00:43:32 +02:00
Dmitriy Zaporozhets
afbdbb0c95 Rspec fixes 2013-01-04 18:50:31 +02:00
Dmitriy Zaporozhets
dccd8b6eaa Continue refactoring. Use repostory and team 2013-01-04 08:43:25 +02:00
Dmitriy Zaporozhets
67896ea9a2 Fixed missing current user for issue observer 2013-01-02 20:25:25 +02:00
Dmitriy Zaporozhets
ccf0686b01 Fix api specs. Use id instead path 2013-01-02 19:46:06 +02:00
Dmitriy Zaporozhets
d431e43392 Fix few bugs and tests after refactoring ownership logic 2013-01-02 19:32:34 +02:00
Dmitriy Zaporozhets
fa8f834374 Fix import rake task and tests 2012-12-23 00:15:48 +02:00
Dmitriy Zaporozhets
1ba28aaef8 Implement UsersProject project_access validation 2012-12-22 19:52:28 +02:00
Dmitriy Zaporozhets
a567d596f8 Merge pull request #2305 from gitlabhq/fix_gfm_auto_complete
Fix and refactoring gfm_autocomplete
2012-12-21 02:47:55 -08:00
Valeriy Sizov
77d632890b refactoring gfm_autocomplete 2012-12-20 20:52:12 +02:00
Dmitriy Zaporozhets
2f7effe804 Refactor issues, Remove ajax 2012-12-19 06:14:05 +03:00
Boyan Tabakov
e954438a1d Extended users API to support updating and deleting users.
Also added tests.
2012-12-18 21:24:31 +02:00
Dmitriy Zaporozhets
552c6d4598 Make tests green for postgres 2012-12-18 20:43:44 +02:00
Dmitriy Zaporozhets
bca7bddd3d Add ace editor to snippets 2012-12-12 19:42:08 +02:00
Cyril
045b4c8fcd replace user.name by user.username in GFM 2012-12-07 04:46:29 +01:00
Sergey Linnik
07e4a12a09 fix failing spec 2012-12-06 23:38:38 +04:00
Dmitriy Zaporozhets
05820516f1 Remove annoying failing spec 2012-12-03 17:38:35 +02:00
Dmitriy Zaporozhets
e117414e44 Merge pull request #2124 from NARKOZ/api
remove unnecessary API::VERSION constant
2012-12-02 03:30:30 -08:00
Dmitriy Zaporozhets
46bf3a0949 Refactored profile to resource. Added missing flash notice on successfull updated. Update username via ajax 2012-12-02 13:29:24 +02:00
Nihad Abbasov
270a43370a API: get a single wall note 2012-12-01 02:20:45 -08:00
Nihad Abbasov
ee6187bd55 API: ability to create a wall note 2012-11-29 15:52:56 -08:00
Nihad Abbasov
c946bf886c API: create new notes 2012-11-29 12:11:00 -08:00
Nihad Abbasov
1c5aa848ce API: get a single note 2012-11-29 12:11:00 -08:00
Nihad Abbasov
01eab583d0 API: list wall, snippet and issue notes 2012-11-29 12:11:00 -08:00
Dmitriy Zaporozhets
a0aa0212a9 Removed feature: comments on wiki 2012-11-29 06:14:05 +03:00
Dmitriy Zaporozhets
1d7fdf45ff Removed unused spec 2012-11-25 16:53:49 +02:00
Dmitriy Zaporozhets
0e1635a68a Fixing requests after namespaces. Fixed admin bug with access to project 2012-11-23 22:25:28 +02:00
Dmitriy Zaporozhets
9304d049de Fixed some tests and snippet colorize 2012-11-23 22:31:09 +03:00
Riyad Preukschas
578cf89812 Fix specs 2012-11-14 01:20:37 +01:00
Vincent Bonmalais
80fb38de7a Remove backward compatibility of factories. 2012-11-13 22:27:45 +11:00
Valeriy Sizov
d6a5e3dad7 Merge pull request #1735 from NARKOZ/api
API fixes
2012-11-07 03:50:42 -08:00
randx
3c5a3fe0ae Merge branch 'front-end' of https://github.com/NARKOZ/gitlabhq into NARKOZ-front-end
Conflicts:
	app/views/issues/_form.html.haml
2012-10-27 11:24:11 +03:00
randx
cec97c2708 we dont show commit message on tags page any more 2012-10-26 22:10:17 +03:00
Valeriy Sizov
56bf829c75 API: fix after review 2012-10-25 13:19:18 +03:00
Valeriy Sizov
e6cdfb607a API: tests for merge_requests 2012-10-25 13:13:01 +03:00
Nihad Abbasov
b1ef7d7a44 fix typo in spec 2012-10-19 03:41:09 -07:00
Nihad Abbasov
0369c74e58 fix wrong test case 2012-10-19 03:28:26 -07:00
Nihad Abbasov
2dc0f098fd fix typos in specs 2012-10-19 03:25:39 -07:00
Nihad Abbasov
c610206321 fix mass-assignment error in user create API 2012-10-19 03:23:10 -07:00
jozefvaclavik
96abbf02e3 Update spec/requests/api/projects_spec.rb
Fixed mistake with updating project hook
2012-10-12 11:30:39 +03:00
jozefvaclavik
3f2e04254f Update projects_spec.rb for Hook list and edit
Also (I think) I found few mistakes with snippets requests.
2012-10-12 11:00:59 +03:00
Nihad Abbasov
61f12da3a5 API: add project snippets listing 2012-10-08 02:13:53 -07:00
Dmitriy Zaporozhets
74213534bc Fix tests 2012-10-05 17:01:44 +03:00
Valeriy Sizov
b5f9d29f55 Merge pull request #1617 from dosire/reject-ssh-keys-that-break-gitolite
Reject ssh keys that break gitolite
2012-10-03 03:18:08 -07:00
Valeriy Sizov
bda0a75581 #1585 Api for user creation: rspec 2012-10-02 13:59:22 +03:00
randx
db69836319 Move ProjectHooks from spec/requests to spinach 2012-09-27 23:52:08 +03:00
Robert Speicher
7df25e77ac Speed up request specs a bit 2012-09-26 16:32:26 -04:00
Robert Speicher
5cea3e576d Remove atom Dashboard spec that no longer applies 2012-09-26 16:32:26 -04:00
Robert Speicher
67fd743294 Clean up project access spec 2012-09-26 16:32:26 -04:00
Robert Speicher
cf237f1d32 Fix GFM request spec 2012-09-26 16:32:26 -04:00
Robert Speicher
576cec6c67 Add BlobController, remove Refs#blob 2012-09-26 16:32:22 -04:00
Robert Speicher
39c6579306 Add BlameController, remove Refs#blame action 2012-09-26 16:32:22 -04:00
Robert Speicher
79a02df92e Update usages of tree_file_project_ref_path to project_tree_path 2012-09-26 16:32:21 -04:00
Robert Speicher
b389247c02 Use Commit#show instead of Commits#show to view a single commit
Commits#show (plural) is going to be for showing commit history on a
specific path.
2012-09-26 16:32:21 -04:00
Marin Jankovski
012dc2278c Valid key for deploy keys spec test. 2012-09-25 16:13:13 +02:00
Nihad Abbasov
1bae64d7f6 whitespace 2012-09-21 04:53:13 -07:00
Nihad Abbasov
b62445813d API: SSH keys belong to user entity 2012-09-21 04:49:28 -07:00
Nihad Abbasov
4a072be2d7 API: commits belong to project repository 2012-09-21 04:34:07 -07:00
Dmitriy Zaporozhets
131553627d Merge pull request #1521 from NARKOZ/api
API for project team members
2012-09-21 04:19:16 -07:00
Nihad Abbasov
25b745271a add API for project team members 2012-09-21 03:23:17 -07:00
Dmitriy Zaporozhets
10d3a30b25 APi for commits. Better api docs 2012-09-21 13:22:30 +03:00
Nihad Abbasov
b08d33f6a9 API: return 401 for invalid session 2012-09-20 08:38:08 -07:00
Dmitriy Zaporozhets
9aafe77e70 I want be able to get token via api. Used for mobile applications 2012-09-20 17:45:07 +03:00
Alex Denisov
b6c6a5b159 Merge branch 'master' into ssh_keys_api 2012-09-16 22:37:50 +03:00
Alex Denisov
87d40fd276 Docs added 2012-09-16 18:21:59 +03:00
Alex Denisov
c23eb40829 SSH Keys API implemented 2012-09-16 17:52:06 +03:00
Robert Speicher
02b24cefc7 Missed a use of team_project_path 2012-09-16 10:38:01 -04:00
randx
a82977c648 A bit of test refactoring 2012-09-15 01:00:59 +03:00
Dmitriy Zaporozhets
dc37c8aaae Refactored profile area 2012-09-14 19:13:25 +03:00