Sha256: eed363c521717fe24e5dedf58ec15021715d0a9eba5b6a02fc7e99bad479d449

Contents?: true

Size: 878 Bytes

Versions: 3

Compression:

Stored size: 878 Bytes

Contents

require 'rest-core/test'

describe RC::DefaultQuery do
  describe 'when given query' do
    before do
      @app = RC::DefaultQuery.new(RC::Dry.new, {})
    end

    def app
      @app
    end

    should 'do nothing' do
      app.call({})[RC::REQUEST_QUERY].should.eq({})
    end

    should 'merge query' do
      app.instance_eval{@query = {'q' => 'uery'}}

      app.call({}).should.eq({RC::REQUEST_QUERY =>
        {'q' => 'uery'}})

      format = {'format' => 'json'}
      env    = {RC::REQUEST_QUERY => format}

      app.call(env).should.eq({RC::REQUEST_QUERY =>
        {'q' => 'uery'}.merge(format)})
    end
  end

  describe 'when not given query' do
    before do
      @app = RC::DefaultQuery.new(RC::Dry.new)
    end

    def app
      @app
    end

    should 'merge query with {}' do
      app.call({}).should.eq({RC::REQUEST_QUERY => {}})
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rest-core-1.0.3 test/test_default_query.rb
rest-core-1.0.2 test/test_default_query.rb
rest-core-1.0.1 test/test_default_query.rb