module FFaker::AddressJA

def address

def address
  fetch_sample([
                 "#{postal_code} #{prefecture}#{city}#{street}#{land_number}",
                 "#{postal_code} #{prefecture}#{county}#{street}#{land_number}",
                 "#{postal_code} #{prefecture}#{designated_city}#{ward}#{street}#{land_number}",
                 "#{postal_code} 東京都#{tokyo_ward}#{street}#{land_number}"
               ])
end

def city

def city
  fetch_sample(CITY)
end

def county

def county
  fetch_sample(COUNTY)
end

def designated_city

def designated_city
  fetch_sample(CITY)
end

def designated_city_address

def designated_city_address
  fetch_sample([
                 # 愛知県名古屋市中区錦3丁目24番4号
                 "#{postal_code} #{prefecture}#{designated_city}#{ward}#{street}#{land_number}"
               ])
end

def land_number

def land_number
  FFaker.numerify(fetch_sample(LAND_NUMBER_FORMATS))
end

def other_address

def other_address
  fetch_sample([
                 "#{postal_code} #{prefecture}#{city}#{street}#{land_number}",
                 "#{postal_code} #{prefecture}#{county}#{street}#{land_number}"
               ])
end

def postal_code

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

def prefecture

def prefecture
  fetch_sample(PREFECTURE)
end

def street

def street
  FFaker.numerify(fetch_sample(CITY))
end

def tokyo_ward

def tokyo_ward
  fetch_sample(TOKYO_WARD)
end

def tokyo_ward_address

def tokyo_ward_address
  fetch_sample([
                 # 東京都千代田区永田町2丁目2番1号
                 "#{postal_code} 東京都#{tokyo_ward}#{street}#{land_number}"
               ])
end

def village

def village
  fetch_sample(VILLAGE)
end

def ward

def ward
  fetch_sample(WARD)
end