v3: properly hand on options to nested render calls

This commit is contained in:
Konstantin Haase 2015-04-28 16:46:45 +02:00
parent 40563b0864
commit 49ad3bccda
2 changed files with 56 additions and 26 deletions

View File

@ -42,8 +42,8 @@ module Travis::API::V3
def render_value(value, **options) def render_value(value, **options)
case value case value
when Hash then value.map { |k, v| [k, render_value(v)] }.to_h when Hash then value.map { |k, v| [k, render_value(v, **options)] }.to_h
when Array then value.map { |v | render_value(v) } when Array then value.map { |v | render_value(v, **options) }
when *PRIMITIVE then value when *PRIMITIVE then value
when Time then value.strftime('%Y-%m-%dT%H:%M:%SZ') when Time then value.strftime('%Y-%m-%dT%H:%M:%SZ')
when Model then render_model(value, **options) when Model then render_model(value, **options)

View File

@ -38,9 +38,24 @@ describe Travis::API::V3::Services::Owner::Find do
"avatar_url" => nil, "avatar_url" => nil,
"repositories" => [{ "repositories" => [{
"@type" => "repository", "@type" => "repository",
"@href" => "/repo/#{repo.id}", "@href" => "/v3/repo/#{repo.id}",
"id" => repo.id, "id" => repo.id,
"slug" => "example-org/example-repo" "name" => "example-repo",
"slug" => "example-org/example-repo",
"description" => nil,
"github_language" => nil,
"active" => false,
"private" => false,
"last_build" => nil,
"owner" => {
"@type" => "organization",
"id" => org.id,
"login" => "example-org"},
"default_branch" => {
"@type" => "branch",
"@href" => "/v3/repo/#{repo.id}/branch/master",
"name" => "master",
"last_build" => nil }
}] }]
}} }}
end end
@ -63,9 +78,24 @@ describe Travis::API::V3::Services::Owner::Find do
"avatar_url" => nil, "avatar_url" => nil,
"repositories" => [{ "repositories" => [{
"@type" => "repository", "@type" => "repository",
"@href" => "/repo/#{repo.id}", "@href" => "/v3/repo/#{repo.id}",
"id" => repo.id, "id" => repo.id,
"slug" => "example-org/example-repo" "name" => "example-repo",
"slug" => "example-org/example-repo",
"description" => nil,
"github_language" => nil,
"active" => false,
"private" => false,
"last_build" => nil,
"owner" => {
"@type" => "organization",
"id" => org.id,
"login" => "example-org"},
"default_branch" => {
"@type" => "branch",
"@href" => "/v3/repo/#{repo.id}/branch/master",
"name" => "master",
"last_build" => nil }
}] }]
}} }}
end end