lib/my_obfuscate.rb in iterationlabs-my_obfuscate-0.3.4 vs lib/my_obfuscate.rb in iterationlabs-my_obfuscate-0.3.6
- old
+ new
@@ -1,9 +1,7 @@
require 'jcode' if RUBY_VERSION < '1.9'
require 'faker'
-require 'my_obfuscate/mysql'
-require 'my_obfuscate/sql_server'
# Class for obfuscating MySQL dumps. This can parse mysqldump outputs when using the -c option, which includes
# column names in the insert statements.
class MyObfuscate
attr_accessor :config, :globally_kept_columns, :fail_on_unspecified_columns, :database_type
@@ -108,11 +106,11 @@
next if definition[:skip_regexes].any? {|regex| row[index] =~ regex}
end
row[index.to_i] = case definition[:type]
when :email
- random_string(definition[:length] || (4..10), USERNAME_CHARS) + "@example.com"
+ clean_quotes(Faker::Internet.email)
when :string
random_string(definition[:length] || 30, definition[:chars] || SENSIBLE_CHARS)
when :lorem
clean_bad_whitespace(clean_quotes(Faker::Lorem.sentences(definition[:number] || 1).join(". ")))
when :name
@@ -131,10 +129,18 @@
Faker::Address.state_abbr
when :zip_code
Faker::Address.zip_code
when :phone
Faker::PhoneNumber.phone_number
+ when :company
+ clean_bad_whitespace(clean_quotes(Faker::Company.name))
+ when :ipv4
+ Faker::Internet.ip_v4_address
+ when :ipv6
+ Faker::Internet.ip_v6_address
+ when :url
+ clean_bad_whitespace(Faker::Internet.url)
when :integer
random_integer(definition[:between] || (0..1000)).to_s
when :fixed
if definition[:one_of]
definition[:one_of][(rand * definition[:one_of].length).to_i]
@@ -209,5 +215,8 @@
def self.clean_bad_whitespace(value)
value.gsub(/[\n\t\r]/, '')
end
end
+
+require 'my_obfuscate/mysql'
+require 'my_obfuscate/sql_server'