attribute_normalizer 1.2.0.a → 1.2.0.b

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MzI3ODAzNTM2ZDcwZDg1NWQxYWI5OGI4YzFiM2Y0YjMyMTk1MDg0MA==
4
+ YzcwZmYzMjkxMmFmMTk1MzJhNDkzMjVlNDllNGUxMWNhZDM2Zjk1Yg==
5
5
  data.tar.gz: !binary |-
6
- OWE0MGFiZWY4NDA1ZmY3ZWY1MjlhMzM0MDkwNWJhZGJhNzJjNjc2OQ==
6
+ OGU0YjVlZjJjMGNkODk5NTE3MDUwMDU4ODllZjc2MDg2NzNlYzQyMQ==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- ODc4YTc2MThlNjZlZWU4YWJkNmU5NTkxYzk5NmE3MzZkM2IyY2VjZWQ1NzYz
10
- NmRmZWY3YjhmYzQ5YjJjMzE5YzJkZjI1MTRmN2VmMDcwYzgyNjZlNTMyMjM5
11
- N2IxZGI4ZWU2NmU3YTRjNjEzMTFkNWExOGRlZDQzZmVkYTk0Mzk=
9
+ ODQ4OWY1YjdkZmE1YjFlNzM2MTEwYjY5ZWY2N2QzYmYzYTI4ZjI1ZjNhNTg0
10
+ NjhmN2QwNDcwMmMxNDY3YjNkNmUzMDM5ZTgyODg1ZWE1YzE1YjlkYWZlMzYw
11
+ NzJlZWM5ZDZkZWRkNWJhMzljZjExMzY4ZDIwNjM3ZGQwMTQxNTY=
12
12
  data.tar.gz: !binary |-
13
- MWZkZWRjMTQyODEyOGYyMzZhZTA4MzQ2NTViNjcwZjY4MjA3MWQxZGNmNTgw
14
- YjY1ZmRmN2IzZmFiNDEyZDgwNTJkMzkzNDE4YTNmOWMyZDkyNDE5YmFjYjgw
15
- YzBmYjJkZDhiMWI3Y2I4MzhkOWEyMjM5YTk5YzhhOGE4MTc1ODI=
13
+ MGRjYmZkMzY3MjZkMjk0ZTg0YjE5MTE4M2FjZTNlODA5NjMxNjYwMjFiM2E2
14
+ NjY4NGNiMjQ2YmM4ZTc2MGU2OTA5NGU5YzhjZWY2NGUyNzFmMDg4Y2JhYThh
15
+ YWJlOWNjOWExYTlkYTkyOWRiNWVkMDdmMDUzZjM3NjZhODlkNDc=
@@ -2,6 +2,7 @@ require 'attribute_normalizer/normalizers/blank_normalizer'
2
2
  require 'attribute_normalizer/normalizers/phone_normalizer'
3
3
  require 'attribute_normalizer/normalizers/strip_normalizer'
4
4
  require 'attribute_normalizer/normalizers/squish_normalizer'
5
+ require 'attribute_normalizer/normalizers/whitespace_normalizer'
5
6
 
6
7
  module AttributeNormalizer
7
8
 
@@ -30,10 +31,11 @@ module AttributeNormalizer
30
31
  def initialize
31
32
 
32
33
  @normalizers = {
33
- :blank => AttributeNormalizer::Normalizers::BlankNormalizer,
34
- :phone => AttributeNormalizer::Normalizers::PhoneNormalizer,
35
- :squish => AttributeNormalizer::Normalizers::SquishNormalizer,
36
- :strip => AttributeNormalizer::Normalizers::StripNormalizer
34
+ :blank => AttributeNormalizer::Normalizers::BlankNormalizer,
35
+ :phone => AttributeNormalizer::Normalizers::PhoneNormalizer,
36
+ :squish => AttributeNormalizer::Normalizers::SquishNormalizer,
37
+ :strip => AttributeNormalizer::Normalizers::StripNormalizer,
38
+ :whitespace => AttributeNormalizer::Normalizers::WhitespaceNormalizer
37
39
  }
38
40
 
39
41
  @default_normalizers = [ :strip, :blank ]
@@ -0,0 +1,9 @@
1
+ module AttributeNormalizer
2
+ module Normalizers
3
+ module WhitespaceNormalizer
4
+ def self.normalize(value, options = {})
5
+ value.is_a?(String) ? value.gsub(/[^\S\n]+/, ' ').gsub(/\s+\n$/, "\n").strip : value
6
+ end
7
+ end
8
+ end
9
+ end
@@ -5,7 +5,7 @@ module AttributeNormalizer
5
5
  MAJOR = 1
6
6
  MINOR = 2
7
7
  PATCH = 0
8
- BUILD = 'a'
8
+ BUILD = 'b'
9
9
 
10
10
  def self.to_s
11
11
  [ MAJOR, MINOR, PATCH, BUILD ].compact.join('.')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: attribute_normalizer
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0.a
4
+ version: 1.2.0.b
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Deering
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-08-09 00:00:00.000000000 Z
11
+ date: 2013-08-30 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: ''
14
14
  email:
@@ -19,6 +19,7 @@ extra_rdoc_files: []
19
19
  files:
20
20
  - lib/attribute_normalizer/model_inclusions.rb
21
21
  - lib/attribute_normalizer/rspec_matcher.rb
22
+ - lib/attribute_normalizer/normalizers/whitespace_normalizer.rb
22
23
  - lib/attribute_normalizer/normalizers/strip_normalizer.rb
23
24
  - lib/attribute_normalizer/normalizers/phone_normalizer.rb
24
25
  - lib/attribute_normalizer/normalizers/blank_normalizer.rb