class Belka::Address
Constants
- ApartmentFormats
- BuildingFormats
Public Class Methods
address()
click to toggle source
# File lib/belka/address.rb, line 50 def address building = Belka.pick(1..200) apartment = Belka.pick(1..300) separator = Belka.pick([' ', ', ']) street + separator + if rand(10) < 2 "#{building}-#{apartment}" else formatter = lambda do |fmts, num| Belka.weighted_pick(fmts).gsub('#', num.to_s).gsub('?', Belka.pick(1..9).to_s) end building = formatter.call(BuildingFormats, building) apartment = formatter.call(ApartmentFormats, apartment) "#{building}#{separator}#{apartment}" end end
city()
click to toggle source
# File lib/belka/address.rb, line 9 def city Belka.pick(Data::AllCities).gsub('_', ' ') end
full_city()
click to toggle source
# File lib/belka/address.rb, line 13 def full_city cty = Belka.pick(Data::AllCities) h_cty = cty.gsub('_', ' ') region = Belka.pick(Data::RegionByCities[cty]) if Data::CitiesByRegion[region].first == cty "г. #{h_cty}" else "#{region}, г. #{h_cty}" end end
index()
click to toggle source
# File lib/belka/address.rb, line 5 def index Belka.pick(220000...224033) end
postal()
click to toggle source
# File lib/belka/address.rb, line 70 def postal "#{index}, #{full_city}, #{address}" end
street()
click to toggle source
# File lib/belka/address.rb, line 26 def street Belka.pick(Data::StreetNames) end