Class: Thoom::Strandom

Inherits:
Object
  • Object
show all
Defined in:
lib/strandom.rb

Overview

Provides several convenience methods to generating random strings

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.lower_rangeObject (readonly)

Returns the value of attribute lower_range.



11
12
13
# File 'lib/strandom.rb', line 11

def lower_range
  @lower_range
end

.num_rangeObject (readonly)

Returns the value of attribute num_range.



11
12
13
# File 'lib/strandom.rb', line 11

def num_range
  @num_range
end

.upper_rangeObject (readonly)

Returns the value of attribute upper_range.



11
12
13
# File 'lib/strandom.rb', line 11

def upper_range
  @upper_range
end

Class Method Details

.alphabetic(len = 0) ⇒ Object



13
14
15
# File 'lib/strandom.rb', line 13

def alphabetic(len = 0)
  randomize(len, upper_range + lower_range)
end

.alphanumeric(len = 0) ⇒ Object



17
18
19
# File 'lib/strandom.rb', line 17

def alphanumeric(len = 0)
  randomize(len, num_range + upper_range + lower_range)
end

.custom(len: 0, values: []) ⇒ Object



21
22
23
# File 'lib/strandom.rb', line 21

def custom(len: 0, values: [])
  ([nil] * len).map { values.sample }.join
end

.hex(len = 2) ⇒ Object



25
26
27
# File 'lib/strandom.rb', line 25

def hex(len = 2)
  SecureRandom.hex(len / 2)
end

.lower_alphabetic(len = 0) ⇒ Object



33
34
35
# File 'lib/strandom.rb', line 33

def lower_alphabetic(len = 0)
  randomize(len, lower_range)
end

.lower_alphanumeric(len = 0) ⇒ Object



37
38
39
# File 'lib/strandom.rb', line 37

def lower_alphanumeric(len = 0)
  randomize(len, num_range + lower_range)
end

.numeric(len = 0) ⇒ Object



29
30
31
# File 'lib/strandom.rb', line 29

def numeric(len = 0)
  randomize(len, num_range)
end

.upper_alphabetic(len = 0) ⇒ Object



41
42
43
# File 'lib/strandom.rb', line 41

def upper_alphabetic(len = 0)
  randomize(len, upper_range)
end

.upper_alphanumeric(len = 0) ⇒ Object



45
46
47
# File 'lib/strandom.rb', line 45

def upper_alphanumeric(len = 0)
  randomize(len, num_range + upper_range)
end

.uuidObject



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

def uuid
  SecureRandom.uuid
end