Sha256: 84881942ecbe1cd020f56484ef1dfe50b73c71b9bd44868e080338bdae1e66cf

Contents?: true

Size: 1.61 KB

Versions: 1

Compression:

Stored size: 1.61 KB

Contents

require File.expand_path(File.dirname(__FILE__) + '/spec_helper')

class GovKit::CA::PostalCode::Strategy::GreenPartyCa
  describe GovKit::CA::PostalCode::Strategy::GreenPartyCa, broken: true do
    describe '#electoral_districts' do
      before :all do
        %w(G0C2Y0 T5S2B9 K0A1K0 H0H0H0 X1B1B1).each do |postal_code|
          strategy = GovKit::CA::PostalCode::Strategy::GreenPartyCa.new(postal_code)
          unless FakeWeb.allow_net_connect?
            FakeWeb.register_uri strategy.class.http_method, "#{strategy.class.base_uri}#{strategy.send(:path)}", :response => fixture_path('greenparty_ca', "#{postal_code}.response")
          end
        end
      end

      it 'should return the electoral districts within a postal code' do
        { 'G0C2Y0' => [24019],
          'T5S2B9' => [48015], # differs from cbc.ca
        }.each do |postal_code,electoral_districts|
          GovKit::CA::PostalCode::Strategy::GreenPartyCa.new(postal_code).electoral_districts.should == electoral_districts
        end
      end

      it 'should (unfortunately) return false if a postal code contains multiple electoral districts' do
        GovKit::CA::PostalCode::Strategy::GreenPartyCa.new('K0A1K0').electoral_districts.should be_false
      end

      it 'should return false if a postal code contains no electoral districts' do
        GovKit::CA::PostalCode::Strategy::GreenPartyCa.new('H0H0H0').electoral_districts.should be_false
      end

      it 'should return false if a postal code does not exist' do
        GovKit::CA::PostalCode::Strategy::GreenPartyCa.new('X1B1B1').electoral_districts.should be_false
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
govkit-ca-0.0.4 spec/greenparty_ca_spec.rb