class SimpleRewriter::Rewriters::HashRewriter

Public Instance Methods

generate() click to toggle source
# File lib/simple_rewriter/rewriters/hash_rewriter.rb, line 2
def generate
  return super if any_option_passed?
  random_sized_hash
end

Private Instance Methods

hash_key() click to toggle source
# File lib/simple_rewriter/rewriters/hash_rewriter.rb, line 21
def hash_key
  random_hex(configuration.hash_key_length)
end
hash_value() click to toggle source
# File lib/simple_rewriter/rewriters/hash_rewriter.rb, line 25
def hash_value
  string_generator.generate
end
random_deep() click to toggle source
# File lib/simple_rewriter/rewriters/hash_rewriter.rb, line 33
def random_deep
  SimpleRewriter.call(record: attr_value, attributes: options[:deep_attributes_map]).record
end
random_sized_hash() click to toggle source
# File lib/simple_rewriter/rewriters/hash_rewriter.rb, line 13
def random_sized_hash
  {}.tap do |hash|
    rand_num.times do |_i|
      hash[hash_key] = hash_value
    end
  end
end
resolve_options_with(values) click to toggle source
# File lib/simple_rewriter/rewriters/hash_rewriter.rb, line 29
def resolve_options_with(values)
  values[0]
end
scoped_options() click to toggle source
# File lib/simple_rewriter/rewriters/hash_rewriter.rb, line 9
def scoped_options
  %i(address deep)
end