Module: Faker::Internet

Extended by:
Internet, ModuleUtils
Included in:
Internet
Defined in:
lib/ffaker/internet.rb

Constant Summary

BYTE =
k((0..255).to_a.map { |n| n.to_s })
HOSTS =
k %w(gmail.com yahoo.com hotmail.com)
DISPOSABLE_HOSTS =
k %w(mailinator.com suremail.info spamherelots.com binkmail.com safetymail.info)
DOMAIN_SUFFIXES =
k %w(co.uk com us uk ca biz info name)

Instance Method Summary (collapse)

Methods included from ModuleUtils

k

Instance Method Details

- (Object) disposable_email(name = nil)

returns an email address of an online disposable email service (like tempinbox.com). you can really send an email to these addresses an access it by going to the service web pages.



12
13
14
# File 'lib/ffaker/internet.rb', line 12

def disposable_email(name = nil)
  [ user_name(name), DISPOSABLE_HOSTS.rand ].join('@')
end

- (Object) domain_name



38
39
40
# File 'lib/ffaker/internet.rb', line 38

def domain_name
  "#{domain_word}.#{domain_suffix}"
end

- (Object) domain_suffix



49
50
51
# File 'lib/ffaker/internet.rb', line 49

def domain_suffix
  DOMAIN_SUFFIXES.rand
end

- (Object) domain_word



42
43
44
45
46
47
# File 'lib/ffaker/internet.rb', line 42

def domain_word
  dw = Company.name.split(' ').first
  dw.gsub!(/\W/, '')
  dw.downcase!
  dw
end

- (Object) email(name = nil)



6
7
8
# File 'lib/ffaker/internet.rb', line 6

def email(name = nil)
  [ user_name(name), domain_name ].join('@')
end

- (Object) free_email(name = nil)



16
17
18
# File 'lib/ffaker/internet.rb', line 16

def free_email(name = nil)
  "#{user_name(name)}@#{HOSTS.rand}"
end

- (Object) http_url



57
58
59
# File 'lib/ffaker/internet.rb', line 57

def http_url
  uri("http")
end

- (Object) ip_v4_address



61
62
63
# File 'lib/ffaker/internet.rb', line 61

def ip_v4_address
  (1..4).map { BYTE.random_pick(1) }.join(".")
end

- (Object) uri(protocol)



53
54
55
# File 'lib/ffaker/internet.rb', line 53

def uri(protocol)
  "#{protocol}://#{domain_name}"
end

- (Object) user_name(name = nil)



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

def user_name(name = nil)
  if name
    parts = ArrayUtils.shuffle(name.scan(/\w+/)).join(ArrayUtils.rand(%w(. _)))
    parts.downcase!
    parts
  else
    case rand(2)
    when 0
      Name.first_name.gsub(/\W/, '').downcase
    when 1
      parts = [ Name.first_name, Name.last_name ].each {|n| n.gsub!(/\W/, '') }
      parts = parts.join ArrayUtils.rand(%w(. _))
      parts.downcase!
      parts
    end
  end
end