Sha256: cb31f43f720ad4b124c575e97490d0654f88c472d1a525c1292138bf003d2811

Contents?: true

Size: 1.4 KB

Versions: 6

Compression:

Stored size: 1.4 KB

Contents

require File.expand_path('../../test_helper', __FILE__)

module SynapsePay
  class ParamsBuilderTest < ::Test::Unit::TestCase

    setup do
      @params = {
        :dog => "dog-value",
        "string" => "str-value"
      }
    end

    context '#clean' do
      setup do
        @built_params = ParamsBuilder.clean(@params)
      end

      should 'convert keys to symbols' do
        assert(@built_params.has_key?(:string))
        assert_equal(@params["string"], @built_params[:string])
      end

      should 'not have any string keys' do
        @built_params.each do |k, v|
          assert(k.is_a?(Symbol))
        end
      end
    end

    context '#merge' do
      setup do
        @to_merge = {
          :string => "other-str-value",
          "cat" => "cat-value"
        }
        @built_params = ParamsBuilder.merge(@params, @to_merge)
      end

      should 'convert keys to symbols' do
        assert(@built_params.has_key?(:cat))
        assert(@built_params.has_key?(:string))
        assert(!@built_params.has_key?("string"))
      end

      should 'merge in all values' do
        assert_equal(@params[:dog], @built_params[:dog])
        assert_equal(@to_merge[:string], @built_params[:string])
        assert_equal(@to_merge["cat"], @built_params[:cat])
      end

      should 'prioritize values in @to_merge' do
        assert_equal(@to_merge[:string], @built_params[:string])
      end
    end

  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
synapse_pay-0.0.8 test/synapse_pay/params_builder_test.rb
synapse_pay-0.0.7 test/synapse_pay/params_builder_test.rb
synapse_pay-0.0.6 test/synapse_pay/params_builder_test.rb
synapse_pay-0.0.4 test/synapse_pay/params_builder_test.rb
synapse_pay-0.0.3 test/synapse_pay/params_builder_test.rb
synapse_pay-0.0.1 test/synapse_pay/params_builder_test.rb