add @representation attribute to payload and update specs
This commit is contained in:
parent
d8ad047dc8
commit
720d8aa284
|
@ -71,6 +71,7 @@ module Travis::API::V3
|
|||
result = {}
|
||||
result[:@type] = self.class.type if self.class.type
|
||||
result[:@href] = href if href
|
||||
result[:@representation] = representation
|
||||
fields = self.class.representations.fetch(representation)
|
||||
nested_included = included + [model]
|
||||
modes = {}
|
||||
|
|
|
@ -85,7 +85,6 @@ module Travis::API::V3
|
|||
end
|
||||
|
||||
def paginate(result)
|
||||
p params
|
||||
self.class.paginator.paginate(result,
|
||||
limit: params['limit'.freeze],
|
||||
offset: params['offset'.freeze],
|
||||
|
|
|
@ -22,6 +22,7 @@ describe Travis::API::V3::Services::Accounts::ForCurrentUser do
|
|||
"@href" => "/v3/accounts",
|
||||
"accounts" => [{
|
||||
"@type" => "account",
|
||||
"@representation" =>"standard",
|
||||
"@permissions" => { "read"=>true },
|
||||
"id" => repo.owner.github_id,
|
||||
"subscribed" => false,
|
||||
|
@ -29,9 +30,11 @@ describe Travis::API::V3::Services::Accounts::ForCurrentUser do
|
|||
"owner" => {
|
||||
"@type" => "user",
|
||||
"@href" => "/v3/user/#{repo.owner_id}",
|
||||
"@representation" =>"minimal",
|
||||
"id" => repo.owner_id,
|
||||
"login" => "svenfuchs" }},
|
||||
{"@type" => "account",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => { "read"=>true },
|
||||
"id" => 42,
|
||||
"subscribed" => false,
|
||||
|
@ -39,6 +42,7 @@ describe Travis::API::V3::Services::Accounts::ForCurrentUser do
|
|||
"owner" => {
|
||||
"@type" => "organization",
|
||||
"@href" => "/v3/org/#{org.id}",
|
||||
"@representation" => "minimal",
|
||||
"id" => org.id,
|
||||
"login" => "example-org"}
|
||||
}]
|
||||
|
|
|
@ -10,15 +10,18 @@ describe Travis::API::V3::Services::Repository::Find do
|
|||
example { expect(JSON.load(body)).to be == {
|
||||
"@type" => "branch",
|
||||
"@href" => "/v3/repo/#{repo.id}/branch/master",
|
||||
"@representation" => "standard",
|
||||
"name" => "master",
|
||||
"repository" => {
|
||||
"@type" => "repository",
|
||||
"@href" => "/v3/repo/#{repo.id}",
|
||||
"@representation"=> "minimal",
|
||||
"id" => repo.id,
|
||||
"slug" => "svenfuchs/minimal"},
|
||||
"last_build" => {
|
||||
"@type" => "build",
|
||||
"@href" => "/v3/build/#{repo.default_branch.last_build.id}",
|
||||
"@representation"=> "minimal",
|
||||
"id" => repo.default_branch.last_build.id,
|
||||
"number" => "3",
|
||||
"state" => "configured",
|
||||
|
|
|
@ -36,8 +36,8 @@ describe Travis::API::V3::Services::Builds::Find do
|
|||
"next" => {
|
||||
"@href" => "/v3/repo/#{repo.id}/builds?limit=1&offset=1",
|
||||
"offset" => 1,
|
||||
"limit" =>1},
|
||||
"prev" =>nil,
|
||||
"limit" => 1},
|
||||
"prev" => nil,
|
||||
"first" => {
|
||||
"@href" => "/v3/repo/#{repo.id}/builds?limit=1",
|
||||
"offset" => 0,
|
||||
|
@ -49,6 +49,7 @@ describe Travis::API::V3::Services::Builds::Find do
|
|||
"builds" => [{
|
||||
"@type" => "build",
|
||||
"@href" => "/v3/build/#{build.id}",
|
||||
"@representation" => "standard",
|
||||
"id" => build.id,
|
||||
"number" => "3",
|
||||
"state" => "configured",
|
||||
|
@ -60,16 +61,19 @@ describe Travis::API::V3::Services::Builds::Find do
|
|||
"repository" => {
|
||||
"@type" => "repository",
|
||||
"@href" => "/v3/repo/#{repo.id}",
|
||||
"@representation"=> "minimal",
|
||||
"id" => repo.id,
|
||||
"slug"=>"svenfuchs/minimal" },
|
||||
"slug" => "svenfuchs/minimal" },
|
||||
"branch" => {
|
||||
"@type" => "branch",
|
||||
"@href" => "/v3/repo/#{repo.id}/branch/master",
|
||||
"@representation"=> "minimal",
|
||||
"name" => "master",
|
||||
"last_build" => {
|
||||
"@href"=>"/v3/build/#{build.id}" }},
|
||||
"@href" => "/v3/build/#{build.id}" }},
|
||||
"commit" => {
|
||||
"@type" => "commit",
|
||||
"@representation"=> "minimal",
|
||||
"id" => 5,
|
||||
"sha" => "add057e66c3e1d59ef1f",
|
||||
"ref" => "refs/heads/master",
|
||||
|
@ -112,6 +116,7 @@ describe Travis::API::V3::Services::Builds::Find do
|
|||
"builds" => [{
|
||||
"@type" => "build",
|
||||
"@href" => "/v3/build/#{build.id}",
|
||||
"@representation" => "standard",
|
||||
"id" => build.id,
|
||||
"number" => "3",
|
||||
"state" => "configured",
|
||||
|
@ -119,20 +124,23 @@ describe Travis::API::V3::Services::Builds::Find do
|
|||
"event_type" => "push",
|
||||
"previous_state" => "passed",
|
||||
"started_at" => "2010-11-12T13:00:00Z",
|
||||
"finished_at" =>nil,
|
||||
"finished_at" => nil,
|
||||
"repository" => {
|
||||
"@type" => "repository",
|
||||
"@href" => "/v3/repo/#{repo.id}",
|
||||
"@representation"=> "minimal",
|
||||
"id" => repo.id,
|
||||
"slug" => "svenfuchs/minimal"},
|
||||
"branch" => {
|
||||
"@type" => "branch",
|
||||
"@href" => "/v3/repo/#{repo.id}/branch/master",
|
||||
"@representation"=> "minimal",
|
||||
"name" => "master",
|
||||
"last_build" => {
|
||||
"@href" => "/v3/build/#{build.id}"}},
|
||||
"commit" => {
|
||||
"@type" => "commit",
|
||||
"@representation"=> "minimal",
|
||||
"id" => 5,
|
||||
"sha" => "add057e66c3e1d59ef1f",
|
||||
"ref" => "refs/heads/master",
|
||||
|
|
|
@ -11,6 +11,7 @@ describe Travis::API::V3::Services::Organization::Find do
|
|||
example { expect(JSON.load(body)).to be == {
|
||||
"@type" => "organization",
|
||||
"@href" => "/v3/org/#{org.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => { "read"=>true, "sync"=>false },
|
||||
"id" => org.id,
|
||||
"login" => "example-org",
|
||||
|
|
|
@ -23,6 +23,7 @@ describe Travis::API::V3::Services::Organizations::ForCurrentUser do
|
|||
"organizations" => [{
|
||||
"@type" => "organization",
|
||||
"@href" => "/v3/org/#{org.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => { "read"=>true, "sync"=>true },
|
||||
"id" => org.id,
|
||||
"login" => "example-org",
|
||||
|
|
|
@ -12,6 +12,7 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
example { expect(JSON.load(body)).to be == {
|
||||
"@type" => "organization",
|
||||
"@href" => "/v3/org/#{org.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => { "read"=>true, "sync"=>false },
|
||||
"id" => org.id,
|
||||
"login" => "example-org",
|
||||
|
@ -32,6 +33,7 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
example { expect(JSON.load(body)).to be == {
|
||||
"@type" => "organization",
|
||||
"@href" => "/v3/org/#{org.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => { "read"=>true, "sync"=>false },
|
||||
"id" => org.id,
|
||||
"login" => "example-org",
|
||||
|
@ -41,11 +43,12 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
"repositories" => [{
|
||||
"@type" => "repository",
|
||||
"@href" => "/v3/repo/#{repo.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {
|
||||
"read" => true,
|
||||
"enable" => false,
|
||||
"disable" => false,
|
||||
"create_request"=> false},
|
||||
"create_request" => false},
|
||||
"id" => repo.id,
|
||||
"name" => "example-repo",
|
||||
"slug" => "example-org/example-repo",
|
||||
|
@ -58,6 +61,7 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
"default_branch" => {
|
||||
"@type" => "branch",
|
||||
"@href" => "/v3/repo/#{repo.id}/branch/master",
|
||||
"@representation" => "minimal",
|
||||
"name" => "master",
|
||||
"last_build" => nil }
|
||||
}]
|
||||
|
@ -75,6 +79,7 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
example { expect(JSON.load(body)).to be == {
|
||||
"@type" => "organization",
|
||||
"@href" => "/v3/org/#{org.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => { "read"=>true, "sync"=>false },
|
||||
"id" => org.id,
|
||||
"login" => "example-org",
|
||||
|
@ -84,6 +89,7 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
"repositories" => [{
|
||||
"@type" => "repository",
|
||||
"@href" => "/v3/repo/#{repo.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {
|
||||
"read" => true,
|
||||
"enable" => false,
|
||||
|
@ -101,6 +107,7 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
"default_branch" => {
|
||||
"@type" => "branch",
|
||||
"@href" => "/v3/repo/#{repo.id}/branch/master",
|
||||
"@representation"=> "minimal",
|
||||
"name" => "master",
|
||||
"last_build" => nil }
|
||||
}]
|
||||
|
@ -113,6 +120,7 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
example { expect(JSON.load(body)).to be == {
|
||||
"@type" => "organization",
|
||||
"@href" => "/v3/org/#{org.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => { "read"=>true, "sync"=>false },
|
||||
"id" => org.id,
|
||||
"login" => "example-org",
|
||||
|
@ -132,6 +140,7 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
example { expect(JSON.load(body)).to be == {
|
||||
"@type" => "organization",
|
||||
"@href" => "/v3/org/#{org.id}",
|
||||
"@representation"=> "standard",
|
||||
"@permissions" => { "read"=>true, "sync"=>false },
|
||||
"id" => org.id,
|
||||
"login" => "example-org",
|
||||
|
@ -158,6 +167,7 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
example { expect(JSON.load(body)).to be == {
|
||||
"@type" => "user",
|
||||
"@href" => "/v3/user/#{user.id}",
|
||||
"@representation"=> "standard",
|
||||
"@permissions" => {"read"=>true, "sync"=>false},
|
||||
"id" => user.id,
|
||||
"login" => "example-user",
|
||||
|
@ -175,6 +185,7 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
example { expect(JSON.load(body)).to be == {
|
||||
"@type" => "user",
|
||||
"@href" => "/v3/user/#{user.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {"read"=>true, "sync"=>false},
|
||||
"id" => user.id,
|
||||
"login" => "example-user",
|
||||
|
@ -196,6 +207,7 @@ describe Travis::API::V3::Services::Owner::Find do
|
|||
example { expect(JSON.load(body)).to be == {
|
||||
"@type" => "user",
|
||||
"@href" => "/v3/user/#{user.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {"read"=>true, "sync"=>false},
|
||||
"id" => user.id,
|
||||
"login" => "example-user",
|
||||
|
|
|
@ -18,6 +18,7 @@ describe Travis::API::V3::Services::Owner::Repositories do
|
|||
"repositories" => [{
|
||||
"@type" => "repository",
|
||||
"@href" => "/v3/repo/#{repo.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {
|
||||
"read" => true,
|
||||
"enable" => false,
|
||||
|
@ -47,10 +48,12 @@ describe Travis::API::V3::Services::Owner::Repositories do
|
|||
"default_branch" => {
|
||||
"@type" => "branch",
|
||||
"@href" => "/v3/repo/#{repo.id}/branch/master",
|
||||
"@representation" => "minimal",
|
||||
"name" => "master",
|
||||
"last_build" => {
|
||||
"@type" => "build",
|
||||
"@href" => "/v3/build/#{repo.last_build.id}",
|
||||
"@representation"=> "minimal",
|
||||
"id" => repo.last_build.id,
|
||||
"number" => "3",
|
||||
"state" => "configured",
|
||||
|
|
|
@ -18,6 +18,7 @@ describe Travis::API::V3::Services::Repositories::ForCurrentUser do
|
|||
"repositories" => [{
|
||||
"@type" => "repository",
|
||||
"@href" => "/v3/repo/#{repo.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {
|
||||
"read" => true,
|
||||
"enable" => true,
|
||||
|
@ -47,10 +48,12 @@ describe Travis::API::V3::Services::Repositories::ForCurrentUser do
|
|||
"default_branch" => {
|
||||
"@type" => "branch",
|
||||
"@href" => "/v3/repo/#{repo.id}/branch/master",
|
||||
"@representation" => "minimal",
|
||||
"name" => "master",
|
||||
"last_build" => {
|
||||
"@type" => "build",
|
||||
"@href" => "/v3/build/#{repo.last_build.id}",
|
||||
"@representation"=> "minimal",
|
||||
"id" => repo.last_build.id,
|
||||
"number" => "3",
|
||||
"state" => "configured",
|
||||
|
|
|
@ -27,6 +27,7 @@ describe Travis::API::V3::Services::Repository::Find do
|
|||
example { expect(parsed_body).to be == {
|
||||
"@type" => "repository",
|
||||
"@href" => "/v3/repo/#{repo.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {
|
||||
"read" => true,
|
||||
"enable" => false,
|
||||
|
@ -56,10 +57,12 @@ describe Travis::API::V3::Services::Repository::Find do
|
|||
"default_branch" => {
|
||||
"@type" => "branch",
|
||||
"@href" => "/v3/repo/#{repo.id}/branch/master",
|
||||
"@representation" => "minimal",
|
||||
"name" => "master",
|
||||
"last_build" => {
|
||||
"@type" => "build",
|
||||
"@href" => "/v3/build/#{repo.last_build.id}",
|
||||
"@representation"=> "minimal",
|
||||
"id" => repo.last_build.id,
|
||||
"number" => "3",
|
||||
"state" => "configured",
|
||||
|
@ -119,6 +122,7 @@ describe Travis::API::V3::Services::Repository::Find do
|
|||
example { expect(parsed_body).to be == {
|
||||
"@type" => "repository",
|
||||
"@href" => "/v3/repo/#{repo.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {
|
||||
"read" => true,
|
||||
"enable" => false,
|
||||
|
@ -148,10 +152,12 @@ describe Travis::API::V3::Services::Repository::Find do
|
|||
"default_branch" => {
|
||||
"@type" => "branch",
|
||||
"@href" => "/v3/repo/#{repo.id}/branch/master",
|
||||
"@representation" => "minimal",
|
||||
"name" => "master",
|
||||
"last_build" => {
|
||||
"@type" => "build",
|
||||
"@href" => "/v3/build/#{repo.last_build.id}",
|
||||
"@representation"=> "minimal",
|
||||
"id" => repo.last_build.id,
|
||||
"number" => "3",
|
||||
"state" => "configured",
|
||||
|
@ -196,6 +202,7 @@ describe Travis::API::V3::Services::Repository::Find do
|
|||
example { expect(parsed_body).to be == {
|
||||
"@type" => "repository",
|
||||
"@href" => "/v3/repo/#{repo.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {
|
||||
"read" => true,
|
||||
"enable" => true,
|
||||
|
@ -225,10 +232,12 @@ describe Travis::API::V3::Services::Repository::Find do
|
|||
"default_branch" => {
|
||||
"@type" => "branch",
|
||||
"@href" => "/v3/repo/#{repo.id}/branch/master",
|
||||
"@representation" => "minimal",
|
||||
"name" => "master",
|
||||
"last_build" => {
|
||||
"@type" => "build",
|
||||
"@href" => "/v3/build/#{repo.last_build.id}",
|
||||
"@representation"=> "minimal",
|
||||
"id" => repo.last_build.id,
|
||||
"number" => "3",
|
||||
"state" => "configured",
|
||||
|
@ -279,6 +288,7 @@ describe Travis::API::V3::Services::Repository::Find do
|
|||
example { expect(parsed_body).to be == {
|
||||
"@type" => "repository",
|
||||
"@href" => "/v3/repo/#{repo.id}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {
|
||||
"read" => true,
|
||||
"enable" => true,
|
||||
|
@ -308,10 +318,12 @@ describe Travis::API::V3::Services::Repository::Find do
|
|||
"default_branch" => {
|
||||
"@type" => "branch",
|
||||
"@href" => "/v3/repo/#{repo.id}/branch/master",
|
||||
"@representation" => "minimal",
|
||||
"name" => "master",
|
||||
"last_build" => {
|
||||
"@type" => "build",
|
||||
"@href" => "/v3/build/#{repo.last_build.id}",
|
||||
"@representation"=> "minimal",
|
||||
"id" => repo.last_build.id,
|
||||
"number" => "3",
|
||||
"state" => "configured",
|
||||
|
|
|
@ -57,6 +57,7 @@ describe Travis::API::V3::Services::Requests::Create do
|
|||
"repository" => {
|
||||
"@type" => "repository",
|
||||
"@href" => "/repo/#{repo.id}",
|
||||
"@representation" => "minimal",
|
||||
"id" => repo.id,
|
||||
"slug" => "svenfuchs/minimal"}
|
||||
}}
|
||||
|
@ -89,10 +90,19 @@ describe Travis::API::V3::Services::Requests::Create do
|
|||
example { expect(JSON.load(body)).to be == {
|
||||
"@type" => "pending",
|
||||
"remaining_requests" => 10,
|
||||
"repository" => {"@type"=>"repository", "@href"=>"/repo/#{repo.id}", "id"=>repo.id, "slug"=>"svenfuchs/minimal"},
|
||||
"repository" => {
|
||||
"@type" => "repository",
|
||||
"@href" => "/repo/#{repo.id}",
|
||||
"@representation" => "minimal",
|
||||
"id" => repo.id,
|
||||
"slug" => "svenfuchs/minimal"},
|
||||
"request" => {
|
||||
"repository" => {"id"=>repo.id, "owner_name"=>"svenfuchs", "name"=>"minimal"},
|
||||
"user" => {"id"=>repo.owner.id},
|
||||
"repository" => {
|
||||
"id" => repo.id,
|
||||
"owner_name" => "svenfuchs",
|
||||
"name" => "minimal"},
|
||||
"user" => {
|
||||
"id" => repo.owner.id},
|
||||
"message" => nil,
|
||||
"branch" => "master",
|
||||
"config" => {}},
|
||||
|
@ -229,7 +239,7 @@ describe Travis::API::V3::Services::Requests::Create do
|
|||
"@type" => "error",
|
||||
"error_type" => "request_limit_reached",
|
||||
"error_message" => "request limit reached for resource",
|
||||
"repository" => {"@type"=>"repository", "@href"=>"/repo/#{repo.id}", "id"=>repo.id, "slug"=>"svenfuchs/minimal" }
|
||||
"repository" => {"@type"=>"repository", "@href"=>"/repo/#{repo.id}", "@representation"=>"minimal", "id"=>repo.id, "slug"=>"svenfuchs/minimal" }
|
||||
}}
|
||||
end
|
||||
|
||||
|
|
|
@ -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}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {"read"=>true, "sync"=>true},
|
||||
"id" => user.id,
|
||||
"login" => "svenfuchs",
|
||||
|
|
|
@ -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}",
|
||||
"@representation" => "standard",
|
||||
"@permissions" => {"read"=>true, "sync"=>true},
|
||||
"id" => user.id,
|
||||
"login" => "svenfuchs",
|
||||
|
|
Loading…
Reference in New Issue
Block a user