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, rand_in_range, regexify, translate
Class Method Details
.device_token ⇒ Object
106
107
108
|
# File 'lib/faker/internet.rb', line 106
def device_token
rand(16 ** 64).to_s(16).rjust(64, '0').chars.to_a.shuffle.join
end
|
.domain_name ⇒ Object
58
59
60
|
# File 'lib/faker/internet.rb', line 58
def domain_name
[Char.prepare(domain_word), domain_suffix].join('.')
end
|
.domain_suffix ⇒ Object
73
74
75
|
# File 'lib/faker/internet.rb', line 73
def domain_suffix
fetch('internet.domain_suffix')
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
62
63
64
|
# File 'lib/faker/internet.rb', line 62
def fix_umlauts(string)
Char.fix_umlauts string
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
83
84
85
86
87
88
89
|
# File 'lib/faker/internet.rb', line 83
def ip_v4_address
ary = (2..254).to_a
[ary.sample,
ary.sample,
ary.sample,
ary.sample].join('.')
end
|
.ip_v6_address ⇒ Object
91
92
93
94
95
|
# File 'lib/faker/internet.rb', line 91
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
|
.mac_address(prefix = '') ⇒ Object
77
78
79
80
81
|
# File 'lib/faker/internet.rb', line 77
def mac_address(prefix='')
prefix_digits = prefix.split(':').map{ |d| d.to_i(16) }
address_digits = (6 - prefix_digits.size).times.map{ rand(256) }
(prefix_digits + address_digits).map{ |d| '%02x' % d }.join(':')
end
|
.password(min_length = 8, max_length = 16) ⇒ Object
47
48
49
50
51
52
53
54
55
56
|
# File 'lib/faker/internet.rb', line 47
def password(min_length = 8, max_length = 16)
temp = Lorem.characters(min_length)
diff_length = max_length - min_length
if diff_length > 0
diff_rand = rand(diff_length + 1)
temp += Lorem.characters(diff_rand)
end
temp = temp[0..min_length] if min_length > 0
return temp
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
|
.slug(words = nil, glue = nil) ⇒ Object
101
102
103
104
|
# File 'lib/faker/internet.rb', line 101
def slug(words = nil, glue = nil)
glue ||= %w[- _ .].sample
(words || Faker::Lorem::words(2).join(' ')).gsub(' ', glue).downcase
end
|
.url(host = domain_name, path = "/#{user_name}") ⇒ Object
97
98
99
|
# File 'lib/faker/internet.rb', line 97
def url(host = domain_name, path = "/#{user_name}")
"http://#{host}#{path}"
end
|
.user_name(specifier = nil, separators = %w(. _)) ⇒ Object
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
# File 'lib/faker/internet.rb', line 17
def user_name(specifier = nil, separators = %w(. _))
if specifier.kind_of? String
return specifier.scan(/\w+/).shuffle.join(separators.sample).downcase
elsif specifier.kind_of? Integer
tries = 0 begin
result = user_name nil, separators
tries += 1
end while result.length < specifier and tries < 7
until result.length >= specifier
result = result * 2
end
return result
elsif specifier.kind_of? Range
tries = 0
begin
result = user_name specifier.min, separators
tries += 1
end while not specifier.include? result.length and tries < 7
return result[0...specifier.max]
end
[
Char.prepare(Name.first_name),
[Name.first_name, Name.last_name].map{ |name|
Char.prepare name
}.join(separators.sample)
].sample
end
|