attribute_normalizer-extras 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 198d6ba06e3bf0684606c59ab78c5ec48b7c66cd
4
- data.tar.gz: 2c56bc94c71b061a1176b3104a0ee13532aa0d7a
2
+ SHA256:
3
+ metadata.gz: c581c89805c67cd717dd67e74f96461667513783fe9c04d6500cd4845c5c9c65
4
+ data.tar.gz: 7c2a8604bb2dc440d3feb15d090c3c37f2fa455e0aea1743b5c064f067bdc3ed
5
5
  SHA512:
6
- metadata.gz: be01b427c0cd5950265ba50e8f589db39935be9e624145079996420b014bc3b319a49d2d89d0f4840f783eaaca234a836ef45ff5c2862e0bd2b78f983a28006e
7
- data.tar.gz: cfad5fcaea65ec6b8075a5a8b8a0cd1b145b73e77f0c1cb5f026c06040faad4ce6fae823eca943b3c387fc5f0dd68098e3b5018bec9c3c5677c9315b9a66154a
6
+ metadata.gz: 3432b10ff2fc867edee4a4acf485743a684893c0942ee4fa7d600cbfd88494cc8d57deb1c277cb66922ec3905ffedf96100918c4fd06a8a754a6486f8bc1776c
7
+ data.tar.gz: ab1c3f3259115221928cd9a181b4a1e7ef1925b5bc494e424e97755fdd1b46335c751dc7f10f6827121650249beb06142e87cbaac18a1748cf913c5c15148c16
@@ -0,0 +1,14 @@
1
+ name: Ruby
2
+ on: [push,pull_request]
3
+ jobs:
4
+ build:
5
+ runs-on: ubuntu-latest
6
+ steps:
7
+ - uses: actions/checkout@v2
8
+ - name: Set up Ruby
9
+ uses: ruby/setup-ruby@v1
10
+ with:
11
+ ruby-version: '2.7'
12
+ bundler-cache: true
13
+ - name: Run Tests
14
+ run: bundle exec rake
data/README.md CHANGED
@@ -1,3 +1,5 @@
1
+ [![Build Status](https://github.com/amaabca/attribute_normalizer-extras/actions/workflows/main.yml/badge.svg)](https://github.com/amaabca/attribute_normalizer-extras/actions/workflows/main.yml)
2
+
1
3
  # AttributeNormalizer::Extras
2
4
 
3
5
  Extra normalizers for the [attribute_normalizer](https://rubygems.org/gems/attribute_normalizer) gem
@@ -6,8 +6,24 @@ require 'attribute_normalizer/extras/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "attribute_normalizer-extras"
8
8
  spec.version = AttributeNormalizer::Extras::VERSION
9
- spec.authors = ["Darko Dosenovic", "Michael van den Beuken", "Ruben Estevez", "Jordan Babe", "Mathieu Gilbert", "Ryan Jones", "Jonathan Weyermann", "Jesse Doyle"]
10
- spec.email = ["darko.dosenovic@ama.ab.ca", "michael.vandenbeuken@ama.ab.ca", "ruben.estevez@ama.ab.ca", "jordan.babe@ama.ab.ca", "mathieu.gilbert@ama.ab.ca", "ryan.jones@ama.ab.ca", "jonathan.weyermann@ama.ab.ca", "jesse.doyle@ama.ab.ca"]
9
+ spec.authors = [
10
+ "Darko Dosenovic",
11
+ "Michael van den Beuken",
12
+ "Ruben Estevez",
13
+ "Jordan Babe",
14
+ "Mathieu Gilbert",
15
+ "Zoie Carnegie",
16
+ "Jesse Doyle"
17
+ ]
18
+ spec.email = [
19
+ "darko.dosenovic@ama.ab.ca",
20
+ "michael.vandenbeuken@ama.ab.ca",
21
+ "ruben.estevez@ama.ab.ca",
22
+ "jordan.babe@ama.ab.ca",
23
+ "mathieu.gilbert@ama.ab.ca",
24
+ "zoie.carnegie@ama.ab.ca",
25
+ "jesse.doyle@ama.ab.ca"
26
+ ]
11
27
  spec.summary = %q{attribute_normalizer gem extras}
12
28
  spec.description = %q{Specific normalizers that we commonly use in our apps}
13
29
  spec.homepage = ""
@@ -1,5 +1,5 @@
1
1
  module AttributeNormalizer
2
2
  module Extras
3
- VERSION = "0.1.0"
3
+ VERSION = "0.2.0"
4
4
  end
5
5
  end
@@ -4,12 +4,16 @@ require "attribute_normalizer/normalizers/gsub_normalizer"
4
4
  require "attribute_normalizer/normalizers/spaceless_normalizer"
5
5
  require "attribute_normalizer/normalizers/postal_code_normalizer"
6
6
  require "attribute_normalizer/normalizers/float_normalizer"
7
+ require "attribute_normalizer/normalizers/downcase_normalizer"
8
+ require "attribute_normalizer/normalizers/upcase_normalizer"
7
9
 
8
10
  extras = {
9
11
  gsub: AttributeNormalizer::Normalizers::GsubNormalizer,
10
12
  postal_code: AttributeNormalizer::Normalizers::PostalCodeNormalizer,
11
13
  spaceless: AttributeNormalizer::Normalizers::SpacelessNormalizer,
12
- float: AttributeNormalizer::Normalizers::FloatNormalizer
14
+ float: AttributeNormalizer::Normalizers::FloatNormalizer,
15
+ downcase: AttributeNormalizer::Normalizers::DowncaseNormalizer,
16
+ upcase: AttributeNormalizer::Normalizers::UpcaseNormalizer
13
17
  }
14
18
 
15
19
  AttributeNormalizer.configuration.normalizers.merge! extras
@@ -0,0 +1,9 @@
1
+ module AttributeNormalizer
2
+ module Normalizers
3
+ module DowncaseNormalizer
4
+ def self.normalize(value, options = {})
5
+ options.fetch(:allow_nil, true) ? value&.downcase : value.to_s.downcase
6
+ end
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module AttributeNormalizer
2
+ module Normalizers
3
+ module UpcaseNormalizer
4
+ def self.normalize(value, options = {})
5
+ options.fetch(:allow_nil, true) ? value&.upcase : value.to_s.upcase
6
+ end
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,11 @@
1
+ require 'spec_helper'
2
+
3
+ describe AttributeNormalizer::Normalizers::DowncaseNormalizer do
4
+
5
+ describe '.normalizer' do
6
+ it 'downcase a string' do
7
+ normalized_text = subject.normalize "I AM big STRING"
8
+ expect(normalized_text).to eq "i am big string"
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ require 'spec_helper'
2
+
3
+ describe AttributeNormalizer::Normalizers::UpcaseNormalizer do
4
+
5
+ describe '.normalizer' do
6
+ it 'upcase a string' do
7
+ normalized_text = subject.normalize "i AM big StrINg"
8
+ expect(normalized_text).to eq "I AM BIG STRING"
9
+ end
10
+ end
11
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: attribute_normalizer-extras
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Darko Dosenovic
@@ -9,13 +9,12 @@ authors:
9
9
  - Ruben Estevez
10
10
  - Jordan Babe
11
11
  - Mathieu Gilbert
12
- - Ryan Jones
13
- - Jonathan Weyermann
12
+ - Zoie Carnegie
14
13
  - Jesse Doyle
15
- autorequire:
14
+ autorequire:
16
15
  bindir: bin
17
16
  cert_chain: []
18
- date: 2017-01-16 00:00:00.000000000 Z
17
+ date: 2021-12-10 00:00:00.000000000 Z
19
18
  dependencies:
20
19
  - !ruby/object:Gem::Dependency
21
20
  name: bundler
@@ -122,15 +121,14 @@ email:
122
121
  - ruben.estevez@ama.ab.ca
123
122
  - jordan.babe@ama.ab.ca
124
123
  - mathieu.gilbert@ama.ab.ca
125
- - ryan.jones@ama.ab.ca
126
- - jonathan.weyermann@ama.ab.ca
124
+ - zoie.carnegie@ama.ab.ca
127
125
  - jesse.doyle@ama.ab.ca
128
126
  executables: []
129
127
  extensions: []
130
128
  extra_rdoc_files: []
131
129
  files:
130
+ - ".github/workflows/main.yml"
132
131
  - ".gitignore"
133
- - ".travis.yml"
134
132
  - Gemfile
135
133
  - LICENSE.txt
136
134
  - README.md
@@ -138,20 +136,24 @@ files:
138
136
  - attribute_normalizer-extras.gemspec
139
137
  - lib/attribute_normalizer/extras.rb
140
138
  - lib/attribute_normalizer/extras/version.rb
139
+ - lib/attribute_normalizer/normalizers/downcase_normalizer.rb
141
140
  - lib/attribute_normalizer/normalizers/float_normalizer.rb
142
141
  - lib/attribute_normalizer/normalizers/gsub_normalizer.rb
143
142
  - lib/attribute_normalizer/normalizers/postal_code_normalizer.rb
144
143
  - lib/attribute_normalizer/normalizers/spaceless_normalizer.rb
144
+ - lib/attribute_normalizer/normalizers/upcase_normalizer.rb
145
+ - spec/models/downcase_normalizer_spec.rb
145
146
  - spec/models/float_normalizer_spec.rb
146
147
  - spec/models/gsub_normalizer_spec.rb
147
148
  - spec/models/postal_code_normalizer_spec.rb
148
149
  - spec/models/spaceless_normalizer_spec.rb
150
+ - spec/models/uppercase_normalizer_spec.rb
149
151
  - spec/spec_helper.rb
150
152
  homepage: ''
151
153
  licenses:
152
154
  - MIT
153
155
  metadata: {}
154
- post_install_message:
156
+ post_install_message:
155
157
  rdoc_options: []
156
158
  require_paths:
157
159
  - lib
@@ -166,14 +168,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
166
168
  - !ruby/object:Gem::Version
167
169
  version: '0'
168
170
  requirements: []
169
- rubyforge_project:
170
- rubygems_version: 2.5.1
171
- signing_key:
171
+ rubygems_version: 3.2.33
172
+ signing_key:
172
173
  specification_version: 4
173
174
  summary: attribute_normalizer gem extras
174
175
  test_files:
176
+ - spec/models/downcase_normalizer_spec.rb
175
177
  - spec/models/float_normalizer_spec.rb
176
178
  - spec/models/gsub_normalizer_spec.rb
177
179
  - spec/models/postal_code_normalizer_spec.rb
178
180
  - spec/models/spaceless_normalizer_spec.rb
181
+ - spec/models/uppercase_normalizer_spec.rb
179
182
  - spec/spec_helper.rb
data/.travis.yml DELETED
@@ -1,3 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - 2.0.0