Module: OpenDataAddresses

Defined in:
lib/open_data_addresses.rb,
lib/open_data_addresses/version.rb

Constant Summary collapse

VERSION =
"0.1.4"

Class Method Summary collapse

Class Method Details

.address(region = 'SF') ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/open_data_addresses.rb', line 4

def self.address(region='SF')
  address = ''
  csv = get_csv(region);
  address_line = rand(2..csv[:lines])

  line_num = 1
  IO.foreach(csv[:file]) do |line|
    line_num += 1
    next unless line_num == address_line
    address = line.strip
    break
  end

  format_address(address)
end

.addresses(amount = 10, region = 'SF') ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/open_data_addresses.rb', line 20

def self.addresses(amount=10, region='SF')
  addresses = []
  csv = get_csv(region)
  address_lines = uniq_rand_nums(amount, 2, csv[:lines]).sort

  address_line = address_lines.shift
  line_num = 1
  IO.foreach(csv[:file]) do |line|
    line_num += 1
    if line_num == address_line
      addresses << line.strip
      address_line = address_lines.shift
    end
    break if addresses.length == amount
  end

  addresses.map { |address| format_address(address) }
end