eac_rails_utils 0.12.2 → 0.13.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 174175e39805e22aba970f97ab436cd23b87e2c4b4881ddd5a573f9fd36e21ca
4
- data.tar.gz: 066a495f456101c54b9075471b1366ec73f0221a50b564cbeaf1f612d6886569
3
+ metadata.gz: d38b7d92069d23f67edd417c1271639ccdc5612e9feceb7cd1bb1ede4898995a
4
+ data.tar.gz: 8a01b9127fdeefb36947ff20ee3f6b912e1a2eb37c614bdf70cae702386465c2
5
5
  SHA512:
6
- metadata.gz: fe1ca935fc5e99f926a088c26cf2123514d224ece935a6ab5c931d3ffc3953f169100b675ebef8990bab2af37a90a2898dd21b5add54311ffc0243dba5a3a57d
7
- data.tar.gz: 4404b0c6847b61d9e83fbbc5f6f05ecee6e0cd76e1b20a31f193932fefea9935abb0c21efa5b64271bb6a03a88e0fae835dc8f3c68c8a22636dc518a6651906f
6
+ metadata.gz: 9474fb9b74aa4ab2206c977327e4b412384fc5a48ec4fa1c05cb69d42eec636af3db5e96c9fe46c3d2bad2c50a9f4f61ea23a61aab2e58c85418505885335403
7
+ data.tar.gz: 29927c86f2c9981e83bbe734371b63f2b3d44e3b0b1354e63e266f3dc131e28a679c18501e740ae5e3b86e3093b99127e048b43788fe9b85909dfa5d96aad048
data/Rakefile CHANGED
@@ -7,14 +7,3 @@ rescue LoadError
7
7
  end
8
8
 
9
9
  Bundler::GemHelper.install_tasks
10
-
11
- require 'rake/testtask'
12
-
13
- Rake::TestTask.new(:test) do |t|
14
- t.libs << 'lib'
15
- t.libs << 'test'
16
- t.pattern = 'test/**/*_test.rb'
17
- t.verbose = false
18
- end
19
-
20
- task default: :test
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module EacRailsUtils
6
+ module EngineHelper
7
+ common_concern do
8
+ append_self_migrations
9
+ end
10
+
11
+ module ClassMethods
12
+ def append_self_migrations
13
+ initializer :append_migrations do |app|
14
+ config.paths['db/migrate'].expanded.each do |expanded_path|
15
+ app.config.paths['db/migrate'] << expanded_path
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacRailsUtils
4
- VERSION = '0.12.2'
4
+ VERSION = '0.13.2'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eac_rails_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.2
4
+ version: 0.13.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - E.A.C.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-27 00:00:00.000000000 Z
11
+ date: 2021-08-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel-associations
@@ -115,47 +115,19 @@ dependencies:
115
115
  - !ruby/object:Gem::Version
116
116
  version: '0'
117
117
  - !ruby/object:Gem::Dependency
118
- name: eac_ruby_gem_support
118
+ name: eac_rails_gem_support
119
119
  requirement: !ruby/object:Gem::Requirement
120
120
  requirements:
121
121
  - - "~>"
122
122
  - !ruby/object:Gem::Version
123
- version: '0.1'
124
- type: :development
125
- prerelease: false
126
- version_requirements: !ruby/object:Gem::Requirement
127
- requirements:
128
- - - "~>"
129
- - !ruby/object:Gem::Version
130
- version: '0.1'
131
- - !ruby/object:Gem::Dependency
132
- name: rspec-rails
133
- requirement: !ruby/object:Gem::Requirement
134
- requirements:
135
- - - ">="
136
- - !ruby/object:Gem::Version
137
- version: '0'
138
- type: :development
139
- prerelease: false
140
- version_requirements: !ruby/object:Gem::Requirement
141
- requirements:
142
- - - ">="
143
- - !ruby/object:Gem::Version
144
- version: '0'
145
- - !ruby/object:Gem::Dependency
146
- name: sqlite3
147
- requirement: !ruby/object:Gem::Requirement
148
- requirements:
149
- - - "~>"
150
- - !ruby/object:Gem::Version
151
- version: 1.3.13
123
+ version: '0.2'
152
124
  type: :development
153
125
  prerelease: false
154
126
  version_requirements: !ruby/object:Gem::Requirement
155
127
  requirements:
156
128
  - - "~>"
157
129
  - !ruby/object:Gem::Version
158
- version: 1.3.13
130
+ version: '0.2'
159
131
  description:
160
132
  email:
161
133
  executables: []
@@ -212,6 +184,7 @@ files:
212
184
  - lib/assets/stylesheets/jmenu.scss
213
185
  - lib/eac_rails_utils.rb
214
186
  - lib/eac_rails_utils/engine.rb
187
+ - lib/eac_rails_utils/engine_helper.rb
215
188
  - lib/eac_rails_utils/htmlbeautifier.rb
216
189
  - lib/eac_rails_utils/models.rb
217
190
  - lib/eac_rails_utils/models/fetch_errors.rb
@@ -223,29 +196,6 @@ files:
223
196
  - lib/eac_rails_utils/patches/action_controller_base.rb
224
197
  - lib/eac_rails_utils/patches/active_model_associations.rb
225
198
  - lib/eac_rails_utils/version.rb
226
- - test/dummy/Rakefile
227
- - test/dummy/app/assets/config/manifest.js
228
- - test/dummy/app/models/job.rb
229
- - test/dummy/app/models/user.rb
230
- - test/dummy/bin/rails
231
- - test/dummy/config.ru
232
- - test/dummy/config/application.rb
233
- - test/dummy/config/boot.rb
234
- - test/dummy/config/database.yml
235
- - test/dummy/config/environment.rb
236
- - test/dummy/config/environments/test.rb
237
- - test/dummy/config/locales/pt-BR.yml
238
- - test/dummy/config/routes.rb
239
- - test/dummy/config/secrets.yml
240
- - test/dummy/db/migrate/20160415125333_create_users.rb
241
- - test/dummy/db/migrate/20160415143123_create_jobs.rb
242
- - test/dummy/db/migrate/20160415143229_add_job_to_users.rb
243
- - test/dummy/db/schema.rb
244
- - test/helpers/eac_rails_utils/data_table_test_helper_test.rb
245
- - test/helpers/eac_rails_utils/formatter_helper_test.rb
246
- - test/lib/eac_rails_utils/models/fetch_errors_test.rb
247
- - test/test_helper.rb
248
- - test/validators/cpf_validator_test.rb
249
199
  homepage:
250
200
  licenses: []
251
201
  metadata: {}
@@ -264,31 +214,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
264
214
  - !ruby/object:Gem::Version
265
215
  version: '0'
266
216
  requirements: []
267
- rubygems_version: 3.0.8
217
+ rubygems_version: 3.1.6
268
218
  signing_key:
269
219
  specification_version: 4
270
220
  summary: Código reutilizável para as aplicações Rails da E.A.C..
271
- test_files:
272
- - test/dummy/Rakefile
273
- - test/dummy/config.ru
274
- - test/dummy/config/boot.rb
275
- - test/dummy/config/database.yml
276
- - test/dummy/config/secrets.yml
277
- - test/dummy/config/locales/pt-BR.yml
278
- - test/dummy/config/application.rb
279
- - test/dummy/config/environments/test.rb
280
- - test/dummy/config/environment.rb
281
- - test/dummy/config/routes.rb
282
- - test/dummy/db/schema.rb
283
- - test/dummy/db/migrate/20160415143123_create_jobs.rb
284
- - test/dummy/db/migrate/20160415143229_add_job_to_users.rb
285
- - test/dummy/db/migrate/20160415125333_create_users.rb
286
- - test/dummy/app/models/job.rb
287
- - test/dummy/app/models/user.rb
288
- - test/dummy/app/assets/config/manifest.js
289
- - test/dummy/bin/rails
290
- - test/test_helper.rb
291
- - test/validators/cpf_validator_test.rb
292
- - test/helpers/eac_rails_utils/data_table_test_helper_test.rb
293
- - test/helpers/eac_rails_utils/formatter_helper_test.rb
294
- - test/lib/eac_rails_utils/models/fetch_errors_test.rb
221
+ test_files: []
data/test/dummy/Rakefile DELETED
@@ -1,8 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Add your own tasks in files placed in lib/tasks ending in .rake,
4
- # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
5
-
6
- require File.expand_path('config/application', __dir__)
7
-
8
- Rails.application.load_tasks
@@ -1,3 +0,0 @@
1
- //= link_tree ../images
2
- //= link_directory ../javascripts .js
3
- //= link_directory ../stylesheets .css
@@ -1,6 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class Job < ActiveRecord::Base
4
- has_many :users
5
- accepts_nested_attributes_for :users, reject_if: :all_blank, allow_destroy: true
6
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class User < ActiveRecord::Base
4
- belongs_to :job
5
-
6
- validates :job, presence: true
7
- validates :password, presence: true
8
- validates :email, format: { with: /\A[^@\s]+@[^@\s]+\z/ }
9
- end
data/test/dummy/bin/rails DELETED
@@ -1,6 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- APP_PATH = File.expand_path('../config/application', __dir__)
5
- require_relative '../config/boot'
6
- require 'rails/commands'
data/test/dummy/config.ru DELETED
@@ -1,6 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # This file is used by Rack-based servers to start the application.
4
-
5
- require ::File.expand_path('../config/environment', __FILE__)
6
- run Rails.application
@@ -1,14 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require File.expand_path('boot', __dir__)
4
-
5
- require 'rails/all'
6
-
7
- Bundler.require(*Rails.groups)
8
- require 'eac_rails_utils'
9
-
10
- module Dummy
11
- class Application < Rails::Application
12
- config.active_record.raise_in_transactional_callbacks = true if ::Rails.version < '5'
13
- end
14
- end
@@ -1,6 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Set up gems listed in the Gemfile.
4
- ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../Gemfile', __dir__)
5
-
6
- require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
@@ -1,5 +0,0 @@
1
- test:
2
- adapter: sqlite3
3
- pool: 5
4
- timeout: 5000
5
- database: db/test.sqlite3
@@ -1,7 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Load the Rails application.
4
- require File.expand_path('application', __dir__)
5
-
6
- # Initialize the Rails application.
7
- Rails.application.initialize!
@@ -1,44 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Rails.application.configure do
4
- # Settings specified here will take precedence over those in config/application.rb.
5
-
6
- # The test environment is used exclusively to run your application's
7
- # test suite. You never need to work with it otherwise. Remember that
8
- # your test database is "scratch space" for the test suite and is wiped
9
- # and recreated between test runs. Don't rely on the data there!
10
- config.cache_classes = true
11
-
12
- # Do not eager load code on boot. This avoids loading your whole application
13
- # just for the purpose of running a single test. If you are using a tool that
14
- # preloads Rails for running tests, you may have to set it to true.
15
- config.eager_load = false
16
-
17
- # Configure static file server for tests with Cache-Control for performance.
18
- config.serve_static_files = true
19
- config.static_cache_control = 'public, max-age=3600'
20
-
21
- # Show full error reports and disable caching.
22
- config.consider_all_requests_local = true
23
- config.action_controller.perform_caching = false
24
-
25
- # Raise exceptions instead of rendering exception templates.
26
- config.action_dispatch.show_exceptions = false
27
-
28
- # Disable request forgery protection in test environment.
29
- config.action_controller.allow_forgery_protection = false
30
-
31
- # Tell Action Mailer not to deliver emails to the real world.
32
- # The :test delivery method accumulates sent emails in the
33
- # ActionMailer::Base.deliveries array.
34
- config.action_mailer.delivery_method = :test
35
-
36
- # Randomize the order test cases are executed.
37
- config.active_support.test_order = :random
38
-
39
- # Print deprecation notices to the stderr.
40
- config.active_support.deprecation = :stderr
41
-
42
- # Raises error for missing translations
43
- # config.action_view.raise_on_missing_translations = true
44
- end
@@ -1,38 +0,0 @@
1
- pt-BR:
2
- eac:
3
- listable:
4
- eac/listable_test/stub:
5
- inteiro:
6
- a:
7
- label: Inteiro A
8
- description: Inteiro A Descr.
9
- b:
10
- label: Inteiro BB
11
- description: Inteiro BB Descr.
12
- c:
13
- label: Inteiro CCC
14
- description: Inteiro CCC Descr.
15
- cadeia:
16
- a:
17
- label: Cadeia AAA
18
- description: Cadeia AAA Descr.
19
- b:
20
- label: Cadeia BB
21
- description: Cadeia BB Descr.
22
- c:
23
- label: Cadeia C
24
- description: Cadeia C Descr.
25
- code:
26
- a:
27
- label: Código A
28
- description: Código A Descr.
29
- b:
30
- label: Código B
31
- description: Código B Descr.
32
- type:
33
- a:
34
- label: Tipo A
35
- description: Tipo A Descr.
36
- b:
37
- label: Tipo B
38
- description: Tipo B Descr.
@@ -1,10 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Rails.application.routes.draw do
4
- resources :jobs do
5
- collection do
6
- get 'search'
7
- end
8
- end
9
- resources :users
10
- end
@@ -1,22 +0,0 @@
1
- # Be sure to restart your server when you modify this file.
2
-
3
- # Your secret key is used for verifying the integrity of signed cookies.
4
- # If you change this key, all old signed cookies will become invalid!
5
-
6
- # Make sure the secret is at least 30 characters and all random,
7
- # no regular words or you'll be exposed to dictionary attacks.
8
- # You can use `rake secret` to generate a secure secret key.
9
-
10
- # Make sure the secrets in this file are kept private
11
- # if you're sharing your code publicly.
12
-
13
- development:
14
- secret_key_base: 50d3bce23e309d961dafde3edfa89be2713718a5e2fb75b6c3e1f61826230921535243d2f221b8cecebeaceccb574a1e74fbbf3b89a9d53758ac988950f1753c
15
-
16
- test:
17
- secret_key_base: 75f37392ef7726b50b4ce117bd6a7eca7cdc299608e256f7ca163b14032559217364d41b7c091483ce02179a18c956f6e076331a611c0500f2862f83979a6c16
18
-
19
- # Do not keep production secrets in the repository,
20
- # instead read values from the environment.
21
- production:
22
- secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
@@ -1,13 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class CreateUsers < (
4
- Rails.version < '5' ? ActiveRecord::Migration : ActiveRecord::Migration[4.2]
5
- )
6
- def change
7
- create_table :users do |t|
8
- t.string :name
9
- t.string :email
10
- t.string :password
11
- end
12
- end
13
- end
@@ -1,11 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class CreateJobs < (
4
- Rails.version < '5' ? ActiveRecord::Migration : ActiveRecord::Migration[4.2]
5
- )
6
- def change
7
- create_table :jobs do |t|
8
- t.string :name
9
- end
10
- end
11
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class AddJobToUsers < (
4
- Rails.version < '5' ? ActiveRecord::Migration : ActiveRecord::Migration[4.2]
5
- )
6
- def change
7
- add_belongs_to :users, :job
8
- end
9
- end
@@ -1,25 +0,0 @@
1
- # encoding: UTF-8
2
- # This file is auto-generated from the current state of the database. Instead
3
- # of editing this file, please use the migrations feature of Active Record to
4
- # incrementally modify your database, and then regenerate this schema definition.
5
- #
6
- # Note that this schema.rb definition is the authoritative source for your
7
- # database schema. If you need to create the application database on another
8
- # system, you should be using db:schema:load, not running all the migrations
9
- # from scratch. The latter is a flawed and unsustainable approach (the more migrations
10
- # you'll amass, the slower it'll run and the greater likelihood for issues).
11
- #
12
- # It's strongly recommended that you check this file into your version control system.
13
-
14
- ActiveRecord::Schema.define(version: 20_160_415_143_229) do
15
- create_table 'jobs', force: :cascade do |t|
16
- t.string 'name'
17
- end
18
-
19
- create_table 'users', force: :cascade do |t|
20
- t.string 'name'
21
- t.string 'email'
22
- t.string 'password'
23
- t.integer 'job_id'
24
- end
25
- end
@@ -1,44 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
-
5
- module EacRailsUtils
6
- class DataTableTestHelperTest < ActionView::TestCase
7
- include ::EacRailsUtils::DataTableHelper
8
-
9
- class Person
10
- attr_reader :name, :age, :job
11
-
12
- def initialize(name, age, job)
13
- @name = name
14
- @age = age
15
- @job = job
16
- end
17
- end
18
-
19
- class Job
20
- attr_reader :name, :id
21
-
22
- def initialize(name)
23
- @name = name
24
- @id = SecureRandom.random_number(100_000)
25
- end
26
- end
27
-
28
- def test_data_table
29
- ds = []
30
- ds << Person.new('Fulano', 15, Job.new('Padeiro'))
31
- ds << Person.new('Sicrano', 25, nil)
32
-
33
- data_table(ds) do |s|
34
- s.paging = false
35
- s.column('Name', 'name')
36
- s.column('Age', 'age')
37
- s.column('Name + Age') { |v| "#{v.name} + #{v.age}" }
38
- s.column('Job', 'job')
39
- s.column('Job ID', 'job.id')
40
- s.column('Job ID + 10', 'job.id') { |_v| + 10 }
41
- end
42
- end
43
- end
44
- end
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
-
5
- module EacRailsUtils
6
- class FormatterHelperTest < ActionView::TestCase
7
- include ::EacRailsUtils::FormatterHelper
8
-
9
- test 'should convert BRL currency to float' do
10
- brl_currency = { a: '1', b: '1,2', c: '1,23', d: '123.456.789,01',
11
- e: 'R$1,23', f: 'R$ 123.4,56' }
12
- float_currency = { a: 1, b: 1.2, c: 1.23, d: 123_456_789.01,
13
- e: 1.23, f: 123_4.56 }
14
-
15
- brl_currency.each do |k, v|
16
- assert_equal float_currency[k], brl_currency_to_float(v),
17
- "#{v} should be #{float_currency[k]}"
18
- end
19
- end
20
- end
21
- end
@@ -1,80 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
-
5
- module EacRailsUtils
6
- module Models
7
- class FetchErrorsTest < ActiveSupport::TestCase
8
- class M1
9
- include ActiveModel::Model
10
- include EacRailsUtils::Models::FetchErrors
11
- attr_accessor :name, :age, :account, :country_id, :other
12
- end
13
-
14
- class M2
15
- include ActiveModel::Model
16
- attr_accessor :name, :myage, :account_id, :country
17
-
18
- validate :my_validate
19
-
20
- def my_validate
21
- errors.add(:name, 'NAME_ERROR')
22
- errors.add(:myage, 'MYAGE_ERROR')
23
- errors.add(:account_id, 'ACCOUNT_ID_ERROR')
24
- errors.add(:country, 'COUNTRY_ERROR')
25
- end
26
- end
27
-
28
- def setup
29
- reset_m1
30
- reset_m2
31
- end
32
-
33
- def test_fetch_column_errors
34
- @m1.fetch_column_errors(@m2, :myage, :age)
35
- assert_equal @m2.errors[:myage], @m1.errors[:age]
36
- end
37
-
38
- def test_fetch_record_errors
39
- @m1.fetch_record_errors(@m2)
40
- { name: :name, account_id: :account, country: :country_id }.each do |c2, c1|
41
- assert_equal @m2.errors[c2], @m1.errors[c1], "c2: #{c2}, c1: #{c1}"
42
- end
43
- assert @m1.errors[:age].empty?
44
- end
45
-
46
- def test_fetch_record_errors_with_default_column
47
- @m1.fetch_record_errors(@m2, default_column: :other)
48
- assert_equal @m2.errors[:name], @m1.errors[:name]
49
- assert @m1.errors[:age].empty?
50
- assert_equal ['Myage: MYAGE_ERROR'], @m1.errors[:other]
51
- end
52
-
53
- def test_fetch_record_errors_with_skip_option
54
- @m1.fetch_record_errors(@m2, skip: [:name])
55
- assert @m1.errors[:name].empty?
56
- assert @m1.errors[:age].empty?
57
- end
58
-
59
- def test_fetch_record_errors_by_mapping
60
- @m1.fetch_record_errors_by_mapping(@m2, name: :name, myage: :age)
61
- assert_equal @m2.errors[:name], @m1.errors[:name]
62
- assert_equal @m2.errors[:myage], @m1.errors[:age]
63
- end
64
-
65
- private
66
-
67
- def reset_m1
68
- @m1 = M1.new
69
- assert @m1.errors.empty?
70
- end
71
-
72
- def reset_m2
73
- @m2 = M2.new
74
- assert_not @m2.valid?
75
- assert_not @m2.errors[:name].empty?
76
- assert_not @m2.errors[:myage].empty?
77
- end
78
- end
79
- end
80
- end
data/test/test_helper.rb DELETED
@@ -1,13 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- ENV['RAILS_ENV'] = 'test'
4
- require File.expand_path('../test/dummy/config/environment.rb', __dir__)
5
- require 'rails/test_help'
6
-
7
- module ActiveSupport
8
- class TestCase
9
- def reset_test_database
10
- ActiveRecord::Tasks::DatabaseTasks.load_schema_current(:ruby, ENV['SCHEMA'])
11
- end
12
- end
13
- end
@@ -1,35 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'test_helper'
4
-
5
- module EacRailsUtils
6
- class CpfValidatorTest < ActiveSupport::TestCase
7
- class M1
8
- include ActiveModel::Model
9
-
10
- attr_accessor :cpf
11
-
12
- validates :cpf, 'eac_rails_utils/cpf' => true, allow_nil: true
13
- end
14
-
15
- def setup
16
- @record = M1.new
17
- end
18
-
19
- def test_valid_cpfs
20
- ['85630275305', '66244374487', nil].each do |v|
21
- @record.cpf = v
22
- @record.valid?
23
- assert_equal [], @record.errors[:cpf], "CPF: \"#{v}\""
24
- end
25
- end
26
-
27
- def test_invalid_cpfs
28
- ['', ' ', 'abc', '856.302.753-05', '662.443.744-87', '85630275304'].each do |v|
29
- @record.cpf = v
30
- @record.valid?
31
- assert_not_equal [], @record.errors[:cpf], "CPF: \"#{v}\""
32
- end
33
- end
34
- end
35
- end