Sha256: babe9a056dace96989af740e16f5980312278be27e7cb77077e78716b0b728e2

Contents?: true

Size: 1.07 KB

Versions: 16

Compression:

Stored size: 1.07 KB

Contents

require 'bundler/setup'
Bundler.setup(:default, :development)

require 'rspec/core/rake_task'
RSpec::Core::RakeTask.new :spec do |t|
  t.rspec_opts = %w(--color)
end

RSpec::Core::RakeTask.new :specdoc do |t|
  t.rspec_opts = %w(-fl)
end

task default: :spec

desc 'Open an irb session preloaded with this library'
task :console do
  sh 'irb -rubygems -I lib -r ziptz.rb'
end

desc 'Create ziptz db from zipcodes database'
task :create_ziptz do
  require 'yaml'
  require 'active_record'

  db_config = YAML.load(File.open 'database.yml')
  ActiveRecord::Base.establish_connection(db_config)

  class ZipCode < ActiveRecord::Base
    self.table_name = 'ZIPCodes'
    self.primary_key = 'ZipCode'

    alias_attribute :zip_code, :ZipCode
    alias_attribute :time_zone, :TimeZone
  end

  puts 'Retrieving zip codes from database'

  data = {}
  ZipCode.find_each do |zip|
    data[zip.zip_code] ||= zip.time_zone
  end

  puts 'Writing ziptz.data'

  lines = data.map { |k, v| "#{k}=#{v}" }
  lines.sort!

  File.open('data/ziptz.data', 'w') do |f|
    lines.each { |line| f.puts line }
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
ziptz-1.0.35 Rakefile
ziptz-1.0.34 Rakefile
ziptz-1.0.33 Rakefile
ziptz-1.0.32 Rakefile
ziptz-1.0.31 Rakefile
ziptz-1.0.30 Rakefile
ziptz-1.0.29 Rakefile
ziptz-1.0.28 Rakefile
ziptz-1.0.27 Rakefile
ziptz-1.0.26 Rakefile
ziptz-1.0.25 Rakefile
ziptz-1.0.24 Rakefile
ziptz-1.0.23 Rakefile
ziptz-1.0.22 Rakefile
ziptz-1.0.21 Rakefile
ziptz-1.0.20 Rakefile