Commit 1b95c8bff351f6718ec31ac1de1e48c57bc95d44

Authored by Nihad Abbasov
1 parent 92d98f5a

API: ability to get project by id

Showing 2 changed files with 9 additions and 2 deletions   Show diff stats
lib/api/helpers.rb
@@ -5,7 +5,8 @@ module Gitlab @@ -5,7 +5,8 @@ module Gitlab
5 end 5 end
6 6
7 def user_project 7 def user_project
8 - @project ||= current_user.projects.find_by_code(params[:id]) 8 + @project ||= current_user.projects.find_by_id(params[:id]) ||
  9 + current_user.projects.find_by_code(params[:id])
9 end 10 end
10 11
11 def authenticate! 12 def authenticate!
spec/api/projects_spec.rb
@@ -25,11 +25,17 @@ describe Gitlab::API do @@ -25,11 +25,17 @@ describe Gitlab::API do
25 25
26 describe "GET /projects/:id" do 26 describe "GET /projects/:id" do
27 it "should return a project by id" do 27 it "should return a project by id" do
28 - get "#{api_prefix}/projects/#{project.code}?private_token=#{user.private_token}" 28 + get "#{api_prefix}/projects/#{project.id}?private_token=#{user.private_token}"
29 response.status.should == 200 29 response.status.should == 200
30 json_response['name'].should == project.name 30 json_response['name'].should == project.name
31 json_response['owner']['email'].should == user.email 31 json_response['owner']['email'].should == user.email
32 end 32 end
  33 +
  34 + it "should return a project by code name" do
  35 + get "#{api_prefix}/projects/#{project.code}?private_token=#{user.private_token}"
  36 + response.status.should == 200
  37 + json_response['name'].should == project.name
  38 + end
33 end 39 end
34 40
35 describe "GET /projects/:id/repository/branches" do 41 describe "GET /projects/:id/repository/branches" do