Sha256: 24ae4a90de3137c52ccd5efeb2673ad24bb7ff16a5b10735ebaeafef22b45473

Contents?: true

Size: 1.07 KB

Versions: 3

Compression:

Stored size: 1.07 KB

Contents

require 'spec_helper'

describe Postcodes::IO do

  let(:base_url) {'https://api.postcodes.io'}
  let(:stub_autocomplete) { File.read('spec/fixtures/autocomplete_response.json') }

  describe '#autocomplete' do

    before :each do
      stub_request(:get, "#{base_url}/postcodes/NN10/autocomplete")
          .to_return(status: 200, body: stub_autocomplete)
    end

    let(:input) { 'NN10' }
    let(:output) { subject.autocomplete(input) }

    it 'requests a postcode' do
      output
      WebMock.should have_requested(:get, "#{base_url}/postcodes/NN10/autocomplete")
    end

    it 'returns autocompleted array' do
      expect(output.list).to eq(["NN10 0AA",
                                 "NN10 0AD",
                                 "NN10 0AE",
                                 "NN10 0AF",
                                 "NN10 0AG",
                                 "NN10 0AH",
                                 "NN10 0AJ",
                                 "NN10 0AL",
                                 "NN10 0AN",
                                 "NN10 0AP"])
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
postcodes_io-0.4.0 spec/autocomplete_spec.rb
postcodes_io-0.3.0 spec/autocomplete_spec.rb
postcodes_io-0.2.0 spec/autocomplete_spec.rb