Class: Faker::Internet
- Inherits:
-
Base
- Object
- Base
- Faker::Internet
show all
- Defined in:
- lib/faker/internet.rb
Constant Summary
Constants inherited
from Base
Base::Letters, Base::Numbers, Base::ULetters
Class Method Summary
collapse
Methods inherited from Base
bothify, fetch, flexible, letterify, method_missing, numerify, parse, regexify, translate
Class Method Details
.domain_name ⇒ Object
29
30
31
|
# File 'lib/faker/internet.rb', line 29
def domain_name
[ fix_umlauts(domain_word), domain_suffix ].join('.')
end
|
.domain_suffix ⇒ Object
48
49
50
|
# File 'lib/faker/internet.rb', line 48
def domain_suffix
fetch('internet.domain_suffix')
end
|
.domain_word ⇒ Object
44
45
46
|
# File 'lib/faker/internet.rb', line 44
def domain_word
Company.name.split(' ').first.gsub(/\W/, '').downcase
end
|
.email(name = nil) ⇒ Object
5
6
7
|
# File 'lib/faker/internet.rb', line 5
def email(name = nil)
[ user_name(name), domain_name ].join('@')
end
|
.fix_umlauts(string) ⇒ Object
33
34
35
36
37
38
39
40
41
42
|
# File 'lib/faker/internet.rb', line 33
def fix_umlauts(string)
string.gsub(/[äöüß]/i) do |match|
case match.downcase
when "ä" 'ae'
when "ö" 'oe'
when "ü" 'ue'
when "ß" 'ss'
end
end
end
|
.free_email(name = nil) ⇒ Object
9
10
11
|
# File 'lib/faker/internet.rb', line 9
def free_email(name = nil)
[ user_name(name), fetch('internet.free_email') ].join('@')
end
|
.ip_v4_address ⇒ Object
52
53
54
55
56
57
58
|
# File 'lib/faker/internet.rb', line 52
def ip_v4_address
ary = (2..254).to_a
[ary.sample,
ary.sample,
ary.sample,
ary.sample].join('.')
end
|
.ip_v6_address ⇒ Object
60
61
62
63
64
|
# File 'lib/faker/internet.rb', line 60
def ip_v6_address
@@ip_v6_space ||= (0..65535).to_a
container = (1..8).map{ |_| @@ip_v6_space.sample }
container.map{ |n| n.to_s(16) }.join(':')
end
|
.safe_email(name = nil) ⇒ Object
13
14
15
|
# File 'lib/faker/internet.rb', line 13
def safe_email(name = nil)
[user_name(name), 'example.'+ %w[org com net].shuffle.first].join('@')
end
|
.url ⇒ Object
66
67
68
|
# File 'lib/faker/internet.rb', line 66
def url
"http://#{domain_name}/#{user_name}"
end
|
.user_name(name = nil) ⇒ Object
17
18
19
20
21
22
23
24
25
26
27
|
# File 'lib/faker/internet.rb', line 17
def user_name(name = nil)
return name.scan(/\w+/).shuffle.join(%w(. _).sample).downcase if name
fix_umlauts([
Proc.new { Name.first_name.gsub(/\W/, '').downcase },
Proc.new {
[ Name.first_name, Name.last_name ].map {|n|
n.gsub(/\W/, '')
}.join(%w(. _).sample).downcase }
].sample.call)
end
|