Class: JsonRander::JHash
- Inherits:
-
Object
- Object
- JsonRander::JHash
- Defined in:
- lib/json_rander/json_hash_builder.rb
Overview
- json object: { xx : xx, yy
-
yy}
Instance Method Summary collapse
- #add_random ⇒ Object
-
#initialize ⇒ JHash
constructor
A new instance of JHash.
-
#rand_key ⇒ Object
get random key: string only.
-
#rand_value ⇒ Object
get random value: string/num/hash/array.
-
#to_s ⇒ Object
to json string.
Constructor Details
#initialize ⇒ JHash
Returns a new instance of JHash.
5 6 7 8 9 10 11 |
# File 'lib/json_rander/json_hash_builder.rb', line 5 def initialize @pairs = [] # add random json key/value pairs to json object pair_num = Random.rand(JsonRander::configuration.hash_max_length) pair_num.times { self.add_random } end |
Instance Method Details
#add_random ⇒ Object
23 24 25 26 |
# File 'lib/json_rander/json_hash_builder.rb', line 23 def add_random @pairs << [rand_key, rand_value] return self end |
#rand_key ⇒ Object
get random key: string only
14 15 16 |
# File 'lib/json_rander/json_hash_builder.rb', line 14 def rand_key return JString.new end |
#rand_value ⇒ Object
get random value: string/num/hash/array
19 20 21 |
# File 'lib/json_rander/json_hash_builder.rb', line 19 def rand_value return Kernel.const_get(JsonRander.random_type).new end |
#to_s ⇒ Object
to json string
29 30 31 32 33 |
# File 'lib/json_rander/json_hash_builder.rb', line 29 def to_s key_value_strs = [] @pairs.each { | key, value | key_value_strs << "#{key.to_s} : #{value.to_s}" } return "{ " + key_value_strs.join(", ") + " }" end |