Module: RandomDataDespegar::Numbers

Included in:
Random
Defined in:
lib/random_data_despegar/numbers.rb

Instance Method Summary collapse

Instance Method Details

#alphanumeric_with_size(number_size) ⇒ Object

Returns an alphanumeric number with size n



30
31
32
# File 'lib/random_data_despegar/numbers.rb', line 30

def alphanumeric_with_size(number_size)
  Random.alphanumeric(number_size)
end

#bitObject

return a random bit, 0 or 1.



35
36
37
# File 'lib/random_data_despegar/numbers.rb', line 35

def bit
  rand(2)
end

#bits(n) ⇒ Object

return an array of n random bits.



40
41
42
43
44
# File 'lib/random_data_despegar/numbers.rb', line 40

def bits(n)
  x = []
  n.times {x << bit}
  x
end

#number(n) ⇒ Object

n can be an Integer or a Range. If it is an Integer, it just returns a random number greater than or equal to 0 and less than n. If it is a Range, it returns a random number within the range Examples

>> Random.number(5)

> 4

>> Random.number(5)

> 2

>> Random.number(5)

> 1



14
15
16
# File 'lib/random_data_despegar/numbers.rb', line 14

def number(n)
  n.is_a?(Range) ? n.to_a.rand : rand(n)
end

#number_with_size(number_size) ⇒ Object

number_size is the size of the number to be generated. >> random_number_with_size (5)

> “12345”

>> random_number_with_size(10)

> “1234321234”

>> random_number_with_size(20)

> “25895277473360037460”



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

def number_with_size(number_size)
  Array.new(number_size){rand(9)}.join
end

#random_card_number(regex, length) ⇒ Object

Return card numbers, based on a regex and card number length. regex will be a string length will be an integer



50
51
52
53
# File 'lib/random_data_despegar/numbers.rb', line 50

def random_card_number (regex, length)
  regex = regex.chomp("$").chomp("+")+"{"+(length.to_s)+"}"
  /#{regex}/.random_example.slice(0,length)
end