diff --git a/lib/bitbucket_rest_api/repos.rb b/lib/bitbucket_rest_api/repos.rb index e9a62a1..a96d582 100644 --- a/lib/bitbucket_rest_api/repos.rb +++ b/lib/bitbucket_rest_api/repos.rb @@ -228,20 +228,19 @@ def delete(user_name, repo_name) # # = Examples # bitbucket = BitBucket.new - # bitbucket.repos.list :user => 'user-name' + # bitbucket.repos.list :user => 'user-name', :role => 'owner' # bitbucket.repos.list :user => 'user-name', { |repo| ... } def list(*args) params = args.extract_options! normalize! params _merge_user_into_params!(params) unless params.has_key?('user') - filter! %w[ user type ], params - - response = #if (user_name = params.delete("user")) - # get_request("/1.0/users/#{user_name}", params) - #else - # For authenticated user - get_request("/1.0/user/repositories", params) - #end + params.merge!('pagelen' => 100) unless params.has_key?('pagelen') + + filter! %w[ user role pagelen ], params + + response = get_request("/2.0/repositories", params) + + response = response[:values] return response unless block_given? response.each { |el| yield el } end diff --git a/lib/bitbucket_rest_api/repos/keys.rb b/lib/bitbucket_rest_api/repos/keys.rb index c95de0d..91ef747 100644 --- a/lib/bitbucket_rest_api/repos/keys.rb +++ b/lib/bitbucket_rest_api/repos/keys.rb @@ -17,7 +17,7 @@ def list(user_name, repo_name, params={}) _validate_user_repo_params(user, repo) unless user? && repo? normalize! params - response = get_request("/1.0/repositories/#{user}/#{repo.downcase}/deploy-keys/", params) + response = get_request("/1.0/repositories/#{user}/#{repo}/deploy-keys/", params) return response unless block_given? response.each { |el| yield el } end @@ -43,7 +43,7 @@ def create(user_name, repo_name, params={}) assert_required_keys(VALID_KEY_PARAM_NAMES, params) options = { headers: { "Content-Type" => "application/json" } } - post_request("/1.0/repositories/#{user}/#{repo.downcase}/deploy-keys/", params, options) + post_request("/1.0/repositories/#{user}/#{repo}/deploy-keys/", params, options) end # Edit a key @@ -66,7 +66,7 @@ def edit(user_name, repo_name, key_id, params={}) normalize! params filter! VALID_KEY_PARAM_NAMES, params - put_request("/1.0/repositories/#{user}/#{repo.downcase}/deploy-keys/#{key_id}", params) + put_request("/1.0/repositories/#{user}/#{repo}/deploy-keys/#{key_id}", params) end # Delete key @@ -81,7 +81,7 @@ def delete(user_name, repo_name, key_id, params={}) _validate_presence_of key_id normalize! params - delete_request("/1.0/repositories/#{user}/#{repo.downcase}/deploy-keys/#{key_id}", params) + delete_request("/1.0/repositories/#{user}/#{repo}/deploy-keys/#{key_id}", params) end end # Repos::Keys diff --git a/spec/bitbucket_rest_api/repos_spec.rb b/spec/bitbucket_rest_api/repos_spec.rb index 822e02d..e48b66a 100644 --- a/spec/bitbucket_rest_api/repos_spec.rb +++ b/spec/bitbucket_rest_api/repos_spec.rb @@ -100,10 +100,10 @@ before do expect(repo).to receive(:request).with( :get, - '/1.0/user/repositories', - {}, + '/2.0/repositories', + {"pagelen" => 100}, {} - ).and_return(['repo1', 'repo2' ,'repo3']) + ).and_return(values: ['repo1', 'repo2' ,'repo3']) end # FIXME: this method belongs in the User class!