data_cleansing 0.9.0 → 1.0.3

Sign up to get free protection for your applications and to get access to all the features.
data/test/ruby_test.rb CHANGED
@@ -1,4 +1,4 @@
1
- require_relative 'test_helper'
1
+ require_relative "test_helper"
2
2
 
3
3
  # Non Cleansing base class
4
4
  class RubyUserBase
@@ -11,10 +11,10 @@ class RubyUser < RubyUserBase
11
11
  attr_accessor :first_name, :last_name, :address1, :address2
12
12
 
13
13
  # Use a global cleaner
14
- cleanse :first_name, :last_name, :cleaner => :strip
14
+ cleanse :first_name, :last_name, cleaner: :strip
15
15
 
16
16
  # Define a once off cleaner
17
- cleanse :address1, :address2, :cleaner => Proc.new {|string| "<< #{string.strip} >>"}
17
+ cleanse :address1, :address2, cleaner: proc { |string| "<< #{string.strip} >>" }
18
18
 
19
19
  # Execute after cleanser
20
20
  after_cleanse :name_check
@@ -31,7 +31,8 @@ end
31
31
 
32
32
  class RubyUserChild < RubyUser
33
33
  attr_accessor :gender
34
- cleanse :gender, :cleaner => Proc.new {|gender| gender.to_s.strip.downcase}
34
+
35
+ cleanse :gender, cleaner: proc { |gender| gender.to_s.strip.downcase }
35
36
  end
36
37
 
37
38
  class RubyUser2
@@ -40,20 +41,20 @@ class RubyUser2
40
41
  attr_accessor :first_name, :last_name, :title, :address1, :address2, :gender
41
42
 
42
43
  # Use a global cleaner
43
- cleanse :first_name, :last_name, :cleaner => :strip
44
+ cleanse :first_name, :last_name, cleaner: :strip
44
45
 
45
46
  # Define a once off cleaner
46
- cleanse :address1, :address2, :cleaner => Proc.new {|string| string.strip}
47
+ cleanse :address1, :address2, cleaner: proc { |string| string.strip }
47
48
 
48
49
  # Use multiple cleaners, and a custom block
49
- cleanse :title, :cleaner => [:strip, :upcase, Proc.new {|string| "#{string}." unless string.end_with?('.')}]
50
+ cleanse :title, cleaner: [:strip, :upcase, proc { |string| "#{string}." unless string.end_with?(".") }]
50
51
 
51
52
  # Change the cleansing rule based on the value of other attributes in that instance of user
52
53
  # The 'title' is retrieved from the current instance of the user
53
- cleanse :gender, :cleaner => [
54
+ cleanse :gender, cleaner: [
54
55
  :strip,
55
56
  :upcase,
56
- Proc.new do |gender|
57
+ proc do |gender|
57
58
  if (gender == "UNKNOWN") && (title == "MR.")
58
59
  "Male"
59
60
  else
@@ -65,112 +66,110 @@ end
65
66
 
66
67
  class RubyTest < Minitest::Test
67
68
  describe "Ruby Models" do
68
-
69
- it 'have globally registered cleaner' do
69
+ it "have globally registered cleaner" do
70
70
  assert DataCleansing.cleaner(:strip)
71
71
  end
72
72
 
73
- it 'Model.cleanse_attribute' do
74
- assert_equal 'male', RubyUserChild.cleanse_attribute(:gender, "\n Male \n"), RubyUserChild.send(:data_cleansing_attribute_cleaners)
75
- assert_equal 'joe', RubyUserChild.cleanse_attribute(:first_name, ' joe '), RubyUserChild.send(:data_cleansing_attribute_cleaners)
76
- assert_equal 'black', RubyUserChild.cleanse_attribute(:last_name, "\n black\n"), RubyUserChild.send(:data_cleansing_attribute_cleaners)
77
- assert_equal '<< 2632 Brown St >>', RubyUserChild.cleanse_attribute(:address1, "2632 Brown St \n"), RubyUserChild.send(:data_cleansing_attribute_cleaners)
73
+ it "Model.cleanse_attribute" do
74
+ assert_equal "male", RubyUserChild.cleanse_attribute(:gender, "\n Male \n"), RubyUserChild.send(:data_cleansing_attribute_cleaners)
75
+ assert_equal "joe", RubyUserChild.cleanse_attribute(:first_name, " joe "), RubyUserChild.send(:data_cleansing_attribute_cleaners)
76
+ assert_equal "black", RubyUserChild.cleanse_attribute(:last_name, "\n black\n"), RubyUserChild.send(:data_cleansing_attribute_cleaners)
77
+ assert_equal "<< 2632 Brown St >>", RubyUserChild.cleanse_attribute(:address1, "2632 Brown St \n"), RubyUserChild.send(:data_cleansing_attribute_cleaners)
78
+ assert_equal 3, RubyUserChild.cleanse_attribute(:first_name, 3), RubyUserChild.send(:data_cleansing_attribute_cleaners)
78
79
  end
79
80
 
80
81
  describe "with ruby user" do
81
82
  before do
82
83
  @user = RubyUser.new
83
- @user.first_name = ' joe '
84
+ @user.first_name = " joe "
84
85
  @user.last_name = "\n black\n"
85
86
  @user.address1 = "2632 Brown St \n"
86
87
  end
87
88
 
88
- it 'cleanse_attributes! using global cleaner' do
89
+ it "cleanse_attributes! using global cleaner" do
89
90
  @user.cleanse_attributes!
90
- assert_equal 'joe', @user.first_name
91
- assert_equal 'black', @user.last_name
91
+ assert_equal "joe", @user.first_name
92
+ assert_equal "black", @user.last_name
92
93
  end
93
94
 
94
- it 'cleanse_attributes! using attribute specific custom cleaner' do
95
+ it "cleanse_attributes! using attribute specific custom cleaner" do
95
96
  @user.cleanse_attributes!
96
- assert_equal '<< 2632 Brown St >>', @user.address1
97
+ assert_equal "<< 2632 Brown St >>", @user.address1
97
98
  end
98
99
 
99
- it 'cleanse_attributes! not cleanse nil attributes' do
100
+ it "cleanse_attributes! not cleanse nil attributes" do
100
101
  @user.first_name = nil
101
102
  @user.cleanse_attributes!
102
- assert_equal nil, @user.first_name
103
+ assert_nil @user.first_name
103
104
  end
104
105
 
105
- it 'cleanse_attributes! call after cleaner' do
106
- @user.first_name = 'Jack'
106
+ it "cleanse_attributes! call after cleaner" do
107
+ @user.first_name = "Jack"
107
108
  @user.last_name = nil
108
109
  @user.cleanse_attributes!
109
- assert_equal nil, @user.first_name, @user.inspect
110
- assert_equal 'Jack', @user.last_name, @user.inspect
110
+ assert_nil @user.first_name, @user.inspect
111
+ assert_equal "Jack", @user.last_name, @user.inspect
111
112
  end
112
113
  end
113
114
 
114
115
  describe "with ruby user child" do
115
116
  before do
116
117
  @user = RubyUserChild.new
117
- @user.first_name = ' joe '
118
+ @user.first_name = " joe "
118
119
  @user.last_name = "\n black\n"
119
120
  @user.address1 = "2632 Brown St \n"
120
121
  @user.gender = "\n Male \n"
121
122
  end
122
123
 
123
- it 'cleanse_attributes! using global cleaner' do
124
+ it "cleanse_attributes! using global cleaner" do
124
125
  @user.cleanse_attributes!
125
- assert_equal 'joe', @user.first_name
126
- assert_equal 'black', @user.last_name
126
+ assert_equal "joe", @user.first_name
127
+ assert_equal "black", @user.last_name
127
128
  end
128
129
 
129
- it 'cleanse_attributes! using attribute specific custom cleaner' do
130
+ it "cleanse_attributes! using attribute specific custom cleaner" do
130
131
  @user.cleanse_attributes!
131
- assert_equal '<< 2632 Brown St >>', @user.address1
132
+ assert_equal "<< 2632 Brown St >>", @user.address1
132
133
  end
133
134
 
134
- it 'cleanse_attributes! not cleanse nil attributes' do
135
+ it "cleanse_attributes! not cleanse nil attributes" do
135
136
  @user.first_name = nil
136
137
  @user.cleanse_attributes!
137
- assert_equal nil, @user.first_name
138
+ assert_nil @user.first_name
138
139
  end
139
140
 
140
- it 'cleanse_attributes! clean child attributes' do
141
+ it "cleanse_attributes! clean child attributes" do
141
142
  @user.cleanse_attributes!
142
- assert_equal 'male', @user.gender
143
+ assert_equal "male", @user.gender
143
144
  end
144
-
145
145
  end
146
146
 
147
147
  describe "with ruby user2" do
148
148
  before do
149
149
  @user = RubyUser2.new
150
- @user.first_name = ' joe '
150
+ @user.first_name = " joe "
151
151
  @user.last_name = "\n black\n"
152
152
  @user.address1 = "2632 Brown St \n"
153
153
  @user.title = " \nmr \n"
154
154
  @user.gender = " Unknown "
155
155
  end
156
156
 
157
- it 'cleanse_attributes!' do
157
+ it "cleanse_attributes!" do
158
158
  @user.cleanse_attributes!
159
- assert_equal 'joe', @user.first_name
160
- assert_equal 'black', @user.last_name
161
- assert_equal '2632 Brown St', @user.address1
159
+ assert_equal "joe", @user.first_name
160
+ assert_equal "black", @user.last_name
161
+ assert_equal "2632 Brown St", @user.address1
162
162
  end
163
163
 
164
- it 'cleanse_attributes! with multiple cleaners' do
164
+ it "cleanse_attributes! with multiple cleaners" do
165
165
  @user.cleanse_attributes!
166
- assert_equal 'MR.', @user.title
166
+ assert_equal "MR.", @user.title
167
167
  end
168
168
 
169
- it 'cleanse_attributes! referencing other attributes' do
169
+ it "cleanse_attributes! referencing other attributes" do
170
170
  @user.cleanse_attributes!
171
- assert_equal 'Male', @user.gender
171
+ assert_equal "Male", @user.gender
172
172
  end
173
173
  end
174
-
175
174
  end
176
175
  end
data/test/test_db.sqlite3 CHANGED
Binary file
data/test/test_helper.rb CHANGED
@@ -1,13 +1,9 @@
1
- $LOAD_PATH.unshift File.dirname(__FILE__) + '/../lib'
1
+ ENV["RAILS_ENV"] = "test"
2
2
 
3
- require 'yaml'
4
- require 'minitest/autorun'
5
- require 'minitest/reporters'
6
- require 'minitest/stub_any_instance'
7
- require 'awesome_print'
8
- require 'data_cleansing'
3
+ require "active_record"
4
+ require "minitest/autorun"
5
+ require "data_cleansing"
6
+ require "amazing_print"
9
7
 
10
- MiniTest::Reporters.use! MiniTest::Reporters::SpecReporter.new
11
-
12
- SemanticLogger.add_appender(file_name: 'test.log', formatter: :color)
8
+ SemanticLogger.add_appender(file_name: "test.log", formatter: :color)
13
9
  SemanticLogger.default_level = :debug
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: data_cleansing
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 1.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Reid Morrison
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-03 00:00:00.000000000 Z
11
+ date: 2021-09-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: concurrent-ruby
@@ -38,9 +38,8 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '2.0'
41
- description:
41
+ description:
42
42
  email:
43
- - reidmo@gmail.com
44
43
  executables: []
45
44
  extensions: []
46
45
  extra_rdoc_files: []
@@ -56,6 +55,7 @@ files:
56
55
  - lib/data_cleansing/version.rb
57
56
  - test/active_record_test.rb
58
57
  - test/cleaners_test.rb
58
+ - test/data_cleansing_test.rb
59
59
  - test/ruby_test.rb
60
60
  - test/test_db.sqlite3
61
61
  - test/test_helper.rb
@@ -63,7 +63,7 @@ homepage: http://github.com/reidmorrison/data_cleansing
63
63
  licenses:
64
64
  - Apache-2.0
65
65
  metadata: {}
66
- post_install_message:
66
+ post_install_message:
67
67
  rdoc_options: []
68
68
  require_paths:
69
69
  - lib
@@ -71,21 +71,21 @@ required_ruby_version: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - ">="
73
73
  - !ruby/object:Gem::Version
74
- version: '0'
74
+ version: '2.3'
75
75
  required_rubygems_version: !ruby/object:Gem::Requirement
76
76
  requirements:
77
77
  - - ">="
78
78
  - !ruby/object:Gem::Version
79
79
  version: '0'
80
80
  requirements: []
81
- rubyforge_project:
82
- rubygems_version: 2.5.1
83
- signing_key:
81
+ rubygems_version: 3.2.22
82
+ signing_key:
84
83
  specification_version: 4
85
- summary: Data Cleansing framework for Ruby, Rails, Mongoid and MongoMapper.
84
+ summary: Data Cleansing framework for Ruby, Rails, and Mongoid.
86
85
  test_files:
87
86
  - test/active_record_test.rb
88
87
  - test/cleaners_test.rb
88
+ - test/data_cleansing_test.rb
89
89
  - test/ruby_test.rb
90
90
  - test/test_db.sqlite3
91
91
  - test/test_helper.rb