v3: add @permissions to user payload

This commit is contained in:
Konstantin Haase 2015-04-29 14:39:52 +02:00
parent 2094b50553
commit 857f13b26c
5 changed files with 63 additions and 45 deletions

View File

@ -29,6 +29,10 @@ module Travis::API::V3
organization.members.include? user
end
def user_writable?(user)
user == self.user
end
def repository_writable?(repository)
permission?(:push, repository)
end

View File

@ -0,0 +1,9 @@
require 'travis/api/v3/permissions/generic'
module Travis::API::V3
class Permissions::User < Permissions::Generic
def sync?
write?
end
end
end

View File

@ -153,6 +153,7 @@ describe Travis::API::V3::Services::Owner::Find do
example { expect(JSON.load(body)).to be == {
"@type" => "user",
"@href" => "/v3/user/#{user.id}",
"@permissions" => {"read"=>true, "sync"=>false},
"id" => user.id,
"login" => "example-user",
"name" => nil,
@ -169,6 +170,7 @@ describe Travis::API::V3::Services::Owner::Find do
example { expect(JSON.load(body)).to be == {
"@type" => "user",
"@href" => "/v3/user/#{user.id}",
"@permissions" => {"read"=>true, "sync"=>false},
"id" => user.id,
"login" => "example-user",
"name" => nil,
@ -189,6 +191,7 @@ describe Travis::API::V3::Services::Owner::Find do
example { expect(JSON.load(body)).to be == {
"@type" => "user",
"@href" => "/v3/user/#{user.id}",
"@permissions" => {"read"=>true, "sync"=>false},
"id" => user.id,
"login" => "example-user",
"name" => nil,

View File

@ -12,6 +12,7 @@ describe Travis::API::V3::Services::User::Current do
example { expect(JSON.load(body)).to be == {
"@type" => "user",
"@href" => "/v3/user/#{user.id}",
"@permissions" => {"read"=>true, "sync"=>true},
"id" => user.id,
"login" => "svenfuchs",
"name" =>"Sven Fuchs",

View File

@ -12,6 +12,7 @@ describe Travis::API::V3::Services::User::Find do
example { expect(JSON.load(body)).to be == {
"@type" => "user",
"@href" => "/v3/user/#{user.id}",
"@permissions" => {"read"=>true, "sync"=>true},
"id" => user.id,
"login" => "svenfuchs",
"name" =>"Sven Fuchs",