Module: Assert::Factory::Random
- Defined in:
- lib/assert/factory.rb
Constant Summary collapse
- DICTIONARY =
[*'a'..'z'].freeze
Class Method Summary collapse
- .binary ⇒ Object
- .date_string ⇒ Object
- .datetime_string ⇒ Object
- .dir_path_string(length = nil) ⇒ Object
- .file_name_string(length = nil) ⇒ Object
- .file_path_string ⇒ Object
-
.float(max = nil) ⇒ Object
‘rand` with no args gives a float between 0 and 1.
- .hex_string(length = nil) ⇒ Object
- .integer(max = nil) ⇒ Object
- .slug_string(length = nil) ⇒ Object
- .string(length = nil) ⇒ Object
- .time_string ⇒ Object
- .url_string(host = nil, length = nil) ⇒ Object
Class Method Details
.binary ⇒ Object
149 150 151 |
# File 'lib/assert/factory.rb', line 149 def self.binary [ self.integer(10000) ].pack('N*') end |
.date_string ⇒ Object
104 105 106 |
# File 'lib/assert/factory.rb', line 104 def self.date_string Time.now.strftime("%Y-%m-%d") end |
.datetime_string ⇒ Object
108 109 110 |
# File 'lib/assert/factory.rb', line 108 def self.datetime_string Time.now.strftime("%Y-%m-%d %H:%M:%S") end |
.dir_path_string(length = nil) ⇒ Object
136 137 138 139 |
# File 'lib/assert/factory.rb', line 136 def self.dir_path_string(length = nil) length ||= 12 File.join(*self.string(length).scan(/.{1,4}/)) end |
.file_name_string(length = nil) ⇒ Object
131 132 133 134 |
# File 'lib/assert/factory.rb', line 131 def self.file_name_string(length = nil) length ||= 6 "#{self.string(length)}.#{self.string(3)}" end |
.file_path_string ⇒ Object
141 142 143 |
# File 'lib/assert/factory.rb', line 141 def self.file_path_string File.join(self.dir_path_string, self.file_name_string) end |
.float(max = nil) ⇒ Object
‘rand` with no args gives a float between 0 and 1
100 101 102 |
# File 'lib/assert/factory.rb', line 100 def self.float(max = nil) (self.integer((max || 100) - 1) + rand).to_f end |
.hex_string(length = nil) ⇒ Object
126 127 128 129 |
# File 'lib/assert/factory.rb', line 126 def self.hex_string(length = nil) length ||= 10 self.integer(("f" * length).hex - 1).to_s(16).rjust(length, '0') end |
.integer(max = nil) ⇒ Object
95 96 97 |
# File 'lib/assert/factory.rb', line 95 def self.integer(max = nil) rand(max || 100) + 1 end |
.slug_string(length = nil) ⇒ Object
121 122 123 124 |
# File 'lib/assert/factory.rb', line 121 def self.slug_string(length = nil) length ||= 8 self.string(length).scan(/.{1,4}/).join('-') end |
.string(length = nil) ⇒ Object
117 118 119 |
# File 'lib/assert/factory.rb', line 117 def self.string(length = nil) [*0..((length || 10) - 1)].map{ |n| DICTIONARY[rand(DICTIONARY.size)] }.join end |
.time_string ⇒ Object
112 113 114 |
# File 'lib/assert/factory.rb', line 112 def self.time_string Time.now.strftime("%H:%M:%S") end |
.url_string(host = nil, length = nil) ⇒ Object
145 146 147 |
# File 'lib/assert/factory.rb', line 145 def self.url_string(host = nil, length = nil) File.join(host.to_s, self.dir_path_string(length)) end |