Skip to content

Commit

Permalink
Fixes #18738 - fixes the sub query
Browse files Browse the repository at this point in the history
  • Loading branch information
ares committed Mar 17, 2017
1 parent 15d0a9d commit 68bfec0
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 1 deletion.
1 change: 1 addition & 0 deletions app/controllers/katello/api/v2/api_controller.rb
Expand Up @@ -51,6 +51,7 @@ def scoped_search(query, default_sort_by, default_sort_order, options = {})

total = scoped_search_total(query, group)

query = query.pluck(:id) if query.respond_to?(:pluck)
query = resource.search_for(*search_options).where("#{resource.table_name}.id" => query)

query = query.select(group).group(group) if group
Expand Down
19 changes: 18 additions & 1 deletion test/controllers/api/v2/api_controller_test.rb
Expand Up @@ -4,6 +4,8 @@

module Katello
class Api::V2::ApiControllerTest < ActionController::TestCase
include Katello::AuthorizationSupportMethods

def setup
@controller = Katello::Api::V2::ApiController.new
@query = Erratum.all
Expand Down Expand Up @@ -62,8 +64,23 @@ def test_scoped_search_no_results
assert_nil response[:error], "error"
end

def test_with_reduced_perms
params = {}
@controller.stubs(:params).returns(params)
@default_sort = %w(name desc)

User.current = users(:restricted)
key = katello_activation_keys(:simple_key)
setup_current_user_with_permissions(:name => "view_activation_keys",
:search => "environment = #{key.environment}")

@options = { :resource_class => Katello::ActivationKey }
keys = @controller.scoped_search(ActivationKey.readable, @default_sort[0], @default_sort[1], @options)
assert_includes keys[:results], key
end

def test_scoped_search_zero_total
@query = []
@query = Erratum.where('1=0')
params = {}
@controller.stubs(:params).returns(params)

Expand Down

0 comments on commit 68bfec0

Please sign in to comment.