Project

General

Profile

« Previous | Next » 

Revision 9643a2cb

Added by Ori Rabin over 7 years ago

Fixes #17653 - Allow all parameters api to unhide values

View differences:

test/controllers/api/v2/smart_class_parameters_controller_test.rb
get :show, {:id => lookup_keys(:five).id}, set_session_user.merge(:user => users(:one).id)
assert_response :success
end
context 'hidden' do
test "should show a smart class parameter as hidden unless show_hidden is true" do
parameter = FactoryGirl.create(:puppetclass_lookup_key, :hidden_value => true, :default_value => 'hidden')
FactoryGirl.create(:environment_class, :environment => environments(:testing),:puppetclass => puppetclasses(:one), :puppetclass_lookup_key => parameter)
get :show, { :id => parameter.id, :puppetclass_id => puppetclasses(:one).id }
show_response = ActiveSupport::JSON.decode(@response.body)
assert_equal parameter.hidden_value, show_response['default_value']
end
test "should show a smart class parameter unhidden when show_hidden is true" do
setup_user "view", "puppetclasses"
setup_user "view", "external_parameters"
setup_user "edit", "external_parameters"
parameter = FactoryGirl.create(:puppetclass_lookup_key, :hidden_value => true, :default_value => 'hidden')
FactoryGirl.create(:environment_class, :environment => environments(:testing),:puppetclass => puppetclasses(:one), :puppetclass_lookup_key => parameter)
get :show, { :id => parameter.id, :puppetclass_id => puppetclasses(:one).id, :show_hidden => 'true' }, set_session_user.merge(:user => users(:one).id)
show_response = ActiveSupport::JSON.decode(@response.body)
assert_equal parameter.default_value, show_response['default_value']
end
test "should show a smart class parameter parameter as hidden when show_hidden is true if user is not authorized" do
setup_user "view", "puppetclasses"
setup_user "view", "external_parameters"
parameter = FactoryGirl.create(:puppetclass_lookup_key, :hidden_value => true, :default_value => 'hidden')
FactoryGirl.create(:environment_class, :environment => environments(:testing),:puppetclass => puppetclasses(:one), :puppetclass_lookup_key => parameter)
get :show, { :id => parameter.id, :puppetclass_id => puppetclasses(:one).id, :show_hidden => 'true' }, set_session_user.merge(:user => users(:one).id)
show_response = ActiveSupport::JSON.decode(@response.body)
assert_equal parameter.hidden_value, show_response['default_value']
end
test "should show a smart class parameter's overrides unhidden when show_hidden is true" do
setup_user "view", "puppetclasses"
setup_user "view", "external_parameters"
setup_user "edit", "external_parameters"
parameter = FactoryGirl.create(:puppetclass_lookup_key, :hidden_value => true, :default_value => 'hidden')
FactoryGirl.create(:environment_class, :environment => environments(:testing),:puppetclass => puppetclasses(:one), :puppetclass_lookup_key => parameter)
lookup_value = FactoryGirl.create(:lookup_value, :lookup_key => parameter, :value => 'abc', :match => 'os=fake')
get :show, { :id => parameter.id, :puppetclass_id => puppetclasses(:one).id, :show_hidden => 'true' }, set_session_user.merge(:user => users(:one).id)
show_response = ActiveSupport::JSON.decode(@response.body)
assert_equal lookup_value.value, show_response['override_values'][0]['value']
end
test "should show a smart class parameter's overrides hidden when show_hidden is false" do
setup_user "view", "puppetclasses"
setup_user "view", "external_parameters"
setup_user "edit", "external_parameters"
parameter = FactoryGirl.create(:puppetclass_lookup_key, :hidden_value => true, :default_value => 'hidden')
FactoryGirl.create(:environment_class, :environment => environments(:testing),:puppetclass => puppetclasses(:one), :puppetclass_lookup_key => parameter)
lookup_value = FactoryGirl.create(:lookup_value, :lookup_key => parameter, :value => 'abc', :match => 'os=fake')
get :show, { :id => parameter.id, :puppetclass_id => puppetclasses(:one).id, :show_hidden => 'false' }, set_session_user.merge(:user => users(:one).id)
show_response = ActiveSupport::JSON.decode(@response.body)
assert_equal lookup_value.hidden_value, show_response['override_values'][0]['value']
end
end
end

Also available in: Unified diff