class PseudoEntity

Constants

VERSION

Public Class Methods

all() click to toggle source
# File lib/pseudo_entity.rb, line 121
def self.all
  @all = Randoms.names.map { |name| new :first_name => name.first, :last_name => name.last }
end
each(&block) click to toggle source
# File lib/pseudo_entity.rb, line 125
def self.each(&block)
  all.each(&block)
end
load_caches(verbose=false) click to toggle source
# File lib/pseudo_entity.rb, line 133
def self.load_caches(verbose=false)
  entity = new
  RandomValues.each do |method|
    puts method if verbose
    begin
      entity.send(method)
    rescue  => e
      puts e.message
    end
  end
  true
end
new(options={}) click to toggle source
# File lib/pseudo_entity.rb, line 8
def initialize(options={})
  parse_options options
end
to_a() click to toggle source
# File lib/pseudo_entity.rb, line 129
def self.to_a
  all
end

Public Instance Methods

address() click to toggle source
# File lib/pseudo_entity.rb, line 12
def address
  "#{street_address}\n#{city}, #{state}. #{zip_code}"
end
age() click to toggle source
# File lib/pseudo_entity.rb, line 16
def age
  Date.today.year - birth_day.year
end
apartment?() click to toggle source
# File lib/pseudo_entity.rb, line 20
def apartment?
  street_modifier_needed == :apartment
end
birth_year() click to toggle source
# File lib/pseudo_entity.rb, line 24
def birth_year
  birth_day.year
end
credit_card_last4()
credit_card_last_four() click to toggle source
# File lib/pseudo_entity.rb, line 28
def credit_card_last_four
  credit_card_number[-4..-1]
end
Also aliased as: credit_card_last4
full_name() click to toggle source
# File lib/pseudo_entity.rb, line 33
def full_name
  "#{first_name} #{last_name}"
end
google_map_url() click to toggle source
# File lib/pseudo_entity.rb, line 37
def google_map_url
  "https://maps.google.com/maps?q=loc:#{latitude},#{longitude}"
end
reset(value_name) click to toggle source
# File lib/pseudo_entity.rb, line 47
def reset(value_name)
  value_name = value_name.to_s.to_sym
  if self.respond_to?(value_name)
    instance_variable_set("@#{value_name}".to_sym, nil)
    self.send(value_name)
  else
    nil
  end
end
reset!() click to toggle source

Reset all internal values causing them to be regenerated.

# File lib/pseudo_entity.rb, line 42
def reset!
  self.instance_variables.each { |variable| instance_variable_set(variable, nil) }
  self
end
street_address() click to toggle source
# File lib/pseudo_entity.rb, line 57
def street_address
  # Yes it is in 2-1 order because that's how the US Post Office says to do it.
  # Apartment, Suites, etc go on the first line if there are two lines or at the end of the single line
  # http://pe.usps.com/businessmail101/addressing/deliveryaddress.htm
  "#{street_address_line_2} #{street_address_line_1}".strip
end
street_address_line_1() click to toggle source
# File lib/pseudo_entity.rb, line 64
def street_address_line_1
  if apartment?
    "APT #{apartment_number}"
  elsif suite?
    "STE #{suite_number}"
  else
    street_position
  end
end
street_address_line_2() click to toggle source
# File lib/pseudo_entity.rb, line 74
def street_address_line_2
  street_address_line_1 # Force the determination of line 1 as this effects line 2
  street_modifier_needed? ? street_position : nil
end
suite?() click to toggle source
# File lib/pseudo_entity.rb, line 79
def suite?
  street_modifier_needed == :suite
end
to_s() click to toggle source
# File lib/pseudo_entity.rb, line 96
def to_s
  add = address.sub("\n","\n         ")
  [
      "Name: #{full_name}",
      "Age: #{age}",
      "Sex: #{sex}",
      "Email: #{email_address}",
      "IP Address: #{ip_address}",
      "Website: #{website}",
      "Short Url: #{short_url}",
      "Phone: #{phone_number}",
      "Address: #{add}",
      "Coordinates: #{latitude}, #{longitude}",
      "Timezone: #{time_zone}",
      "Bank: #{bank_name} #{bank_routing_number} #{bank_account_number}",
      "Credit Union: #{credit_union_name}",
      "Card: #{credit_card_issuer} #{credit_card_number}",
      "Company: #{company_name}",
      "Slogan: #{slogan}",
      "Tax ID: #{federal_tax_id}",
      "Login: #{login}",
      "Password: #{password}"
  ].join("\n")
end
yelp_business_id() click to toggle source
# File lib/pseudo_entity.rb, line 83
def yelp_business_id
  # Yelp API version 2.0 id
  "#{company_name.gsub(' ', '-').delete('.')}-#{city.gsub(' ', '-').delete('.')}"
end
yelp_business_url() click to toggle source
# File lib/pseudo_entity.rb, line 88
def yelp_business_url
  "http://www.yelp.com/biz/#{yelp_business_id}"
end
yelp_user_id() click to toggle source
# File lib/pseudo_entity.rb, line 92
def yelp_user_id
  random_alpha_numeric(22)
end