lib/ffaker/address_kr.rb
# frozen_string_literal: true module FFaker module AddressKR extend ModuleUtils extend self BUILDING_DONGS = %w[가 나 다 라 마 바 ## ###].freeze BUILDING_SUFFIXES = %w[빌라 아파트 연립 마을 타운 타워].freeze STREET_SUFFIXES = %w[로 #로 가 #가 거리 길].freeze TOWN_SUFFIXES = %w[동 리 마을].freeze METROPOLITAN_CITIES = %w[서울특별시 부산광역시 대구광역시 인천광역시 광주광역시 대전광역시 울산광역시 세종특별자치시].freeze PROVINCES = %w[경기도 강원도 충청북도 충청남도 전라북도 전라남도 경상북도 경상남도 제주특별자치도].freeze def postal_code FFaker.numerify('#####') end def old_postal_code FFaker.numerify('###-###') end def road_addess fetch_sample([ "#{metropolitan_city} #{borough} #{street}", "#{province} #{town} #{street}", "#{metropolitan_city} #{borough} #{street} (#{town})", "#{province} #{town} #{street} (#{town})" ]) end def land_address fetch_sample([ "#{metropolitan_city} #{borough} #{town} #{land_number}", "#{province} #{town} #{land_number}" ]) end def land_number FFaker.numerify(fetch_sample([ '###', '###-#', '###-##', '####', '####-#' ])) end def building_name "#{NameKR.first_name}#{fetch_sample(BUILDING_SUFFIXES)}" end def address_detail FFaker.numerify(fetch_sample([ building_name, "#{building_name} ###호", "#{building_name} #{fetch_sample(BUILDING_DONGS)} ###호" ])) end def street FFaker.numerify("#{NameKR.first_name}#{fetch_sample(STREET_SUFFIXES)}") end def town "#{NameKR.first_name}#{fetch_sample(TOWN_SUFFIXES)}" end def borough fetch_sample(BOROUGHS) end def city fetch_sample(CITIES) end def province fetch_sample(PROVINCES) end def metropolitan_city fetch_sample(METROPOLITAN_CITIES) end end end