spec/unit/helpers/global_helpers_spec.rb in gooddata-0.6.50 vs spec/unit/helpers/global_helpers_spec.rb in gooddata-0.6.51

- old
+ new

@@ -93,17 +93,18 @@ { :id => "b", :y => "FOO", :x => 1 }, { :id => "c", :y => "BAR", :x => 2 }] end it 'should encode secure params' do - x = GoodData::Helpers.decode_params( + params = { "x" => "y", "d|b|foo" => "bar", "d|b|e|w" => "z", GoodData::Helpers::ENCODED_PARAMS_KEY.to_s => '{"d":{"b":{"c": "a"}}}', GoodData::Helpers::ENCODED_HIDDEN_PARAMS_KEY.to_s => '{"d":{"b":{"e":{"f": "g"}}}}' - ) + } + x = GoodData::Helpers.decode_params(params, convert_pipe_delimited_params: true) expect(x).to eq( "x" => "y", "d" => { "b" => { "c" => "a", "e" => { "f" => "g", "w" => "z" }, "foo" => "bar" } }, "gd_encoded_hidden_params" => nil ) @@ -161,9 +162,32 @@ 'username' => 'ads_user', 'password' => 'ads_123' } } result = GoodData::Helpers.decode_params(params, :resolve_reference_params => true) + expect(result).to eq(expected_result) + end + + it 'should convert all values into String' do + params = { + x: true, + y: ['hello', false], + z: { + z1: false, + z2: [true], + z3: [[[false]]] + } + } + expected_result = { + x: 'true', + y: %w(hello false), + z: { + z1: 'false', + z2: ['true'], + z3: [[['false']]] + } + } + result = GoodData::Helpers.stringify_values(params) expect(result).to eq(expected_result) end end describe '.interpolate_error_message' do