Sha256: 4ffe843fa7ceb40387c2aff13156886033e3a89123f062cfa5a4de15d534a66d

Contents?: true

Size: 899 Bytes

Versions: 4

Compression:

Stored size: 899 Bytes

Contents

# encoding: utf-8

require 'ffaker/address'

module FFaker
  module AddressFR
    include FFaker::Address

    extend ModuleUtils
    extend self

    NUM = ['#', '##', '##', '###', '####', '#-##'].freeze
    MOD = [' B', ' T', ' Q', ' BIS', ' TER', ' QUATER', '', '', '', ''].freeze
    SEP = [', ', ' '].freeze
    TYPE = %w(rue avenue av boulevard bd impasse).freeze
    POSTAL_CODE_FORMATS = ['####', '#####', '97####', '2A###', '2B###'].freeze

    def street_address
      FFaker.numerify(fetch_sample(NUM)) +
        fetch_sample(MOD) +
        fetch_sample(SEP) +
        fetch_sample(TYPE) + ' ' +
        FFaker::NameFR.name
    end

    def postal_code
      FFaker.numerify(fetch_sample(POSTAL_CODE_FORMATS))
    end

    def city
      fetch_sample(CITY)
    end

    def full_address
      %(#{street_address}#{fetch_sample(SEP)}#{postal_code} #{fetch_sample(CITY)})
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ffaker-2.6.0 lib/ffaker/address_fr.rb
ffaker-2.5.0 lib/ffaker/address_fr.rb
ffaker-2.4.0 lib/ffaker/address_fr.rb
ffaker-2.3.0 lib/ffaker/address_fr.rb