br_documents 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/config.yml +11 -25
  3. data/.rubocop.yml +29 -21
  4. data/.tool-versions +1 -0
  5. data/Gemfile.lock +6 -3
  6. data/Rakefile +1 -1
  7. data/br_documents.gemspec +3 -0
  8. data/lib/br_documents/cnpj_cpf/document.rb +1 -1
  9. data/lib/br_documents/{gtin/gtin.rb → gtin.rb} +2 -2
  10. data/lib/br_documents/ie/ba.rb +1 -1
  11. data/lib/br_documents/ie_validator.rb +1 -1
  12. data/lib/br_documents/suframa.rb +46 -0
  13. data/lib/br_documents/version.rb +1 -1
  14. data/spec/{cnpj_cpf → br_documents/cnpj_cpf}/cnpj_spec.rb +13 -13
  15. data/spec/{cnpj_cpf → br_documents/cnpj_cpf}/cpf_spec.rb +13 -13
  16. data/spec/br_documents/cnpj_validator_spec.rb +36 -0
  17. data/spec/br_documents/cpf_validator_spec.rb +36 -0
  18. data/spec/{gtin → br_documents}/gtin_spec.rb +2 -2
  19. data/spec/{gtin_validator_spec.rb → br_documents/gtin_validator_spec.rb} +3 -3
  20. data/spec/{ie → br_documents/ie}/ac_spec.rb +3 -3
  21. data/spec/{ie → br_documents/ie}/al_spec.rb +2 -2
  22. data/spec/{ie → br_documents/ie}/am_spec.rb +3 -3
  23. data/spec/{ie → br_documents/ie}/ap_spec.rb +2 -2
  24. data/spec/{ie → br_documents/ie}/ba_spec.rb +4 -4
  25. data/spec/{ie → br_documents/ie}/ce_spec.rb +0 -0
  26. data/spec/{ie → br_documents/ie}/df_spec.rb +3 -3
  27. data/spec/{ie → br_documents/ie}/es_spec.rb +0 -0
  28. data/spec/{ie → br_documents/ie}/factory_spec.rb +28 -28
  29. data/spec/{ie → br_documents/ie}/go_spec.rb +3 -3
  30. data/spec/{ie → br_documents/ie}/ma_spec.rb +0 -0
  31. data/spec/{ie → br_documents/ie}/mg_spec.rb +3 -3
  32. data/spec/{ie → br_documents/ie}/ms_spec.rb +0 -0
  33. data/spec/{ie → br_documents/ie}/mt_spec.rb +3 -3
  34. data/spec/{ie → br_documents/ie}/pa_spec.rb +3 -3
  35. data/spec/{ie → br_documents/ie}/pb_spec.rb +0 -0
  36. data/spec/{ie → br_documents/ie}/pe_spec.rb +4 -4
  37. data/spec/{ie → br_documents/ie}/pi_spec.rb +0 -0
  38. data/spec/{ie → br_documents/ie}/pr_spec.rb +2 -2
  39. data/spec/{ie → br_documents/ie}/rj_spec.rb +3 -3
  40. data/spec/{ie → br_documents/ie}/rn_spec.rb +4 -4
  41. data/spec/{ie → br_documents/ie}/ro_spec.rb +4 -4
  42. data/spec/{ie → br_documents/ie}/rr_spec.rb +3 -3
  43. data/spec/{ie → br_documents/ie}/rs_spec.rb +3 -3
  44. data/spec/{ie → br_documents/ie}/sc_spec.rb +3 -3
  45. data/spec/{ie → br_documents/ie}/se_spec.rb +0 -0
  46. data/spec/{ie → br_documents/ie}/shared_examples_for_pattern1.rb +3 -3
  47. data/spec/{ie → br_documents/ie}/shared_examples_for_to_remove_all_masks.rb +0 -0
  48. data/spec/{ie → br_documents/ie}/sp_spec.rb +2 -2
  49. data/spec/{ie → br_documents/ie}/to_spec.rb +6 -6
  50. data/spec/{ie_validator_spec.rb → br_documents/ie_validator_spec.rb} +7 -6
  51. data/spec/br_documents/suframa_spec.rb +73 -0
  52. data/spec/{suframa_validator_spec.rb → br_documents/suframa_validator_spec.rb} +4 -4
  53. metadata +97 -82
  54. data/lib/br_documents/suframa/suframa.rb +0 -60
  55. data/spec/cnpj_validator_spec.rb +0 -36
  56. data/spec/cpf_validator_spec.rb +0 -36
  57. data/spec/suframa/suframa_spec.rb +0 -109
@@ -13,21 +13,21 @@ describe BrDocuments::IE::GO do
13
13
  it 'is invalid with malformed number' do
14
14
  ['01.390415.9', '280541-600', '1C78150A5'].each do |number|
15
15
  ie = described_class.new(number)
16
- expect(ie).to_not be_valid
16
+ expect(ie).not_to be_valid
17
17
  end
18
18
  end
19
19
 
20
20
  it 'is invalid with length different to 9' do
21
21
  ['1234567', '122345678901'].each do |number|
22
22
  ie = described_class.new(number)
23
- expect(ie).to_not be_valid
23
+ expect(ie).not_to be_valid
24
24
  end
25
25
  end
26
26
 
27
27
  it 'is invalid with invalid check number' do
28
28
  ['903473566', '493184742'].each do |number|
29
29
  ie = described_class.new(number)
30
- expect(ie).to_not be_valid
30
+ expect(ie).not_to be_valid
31
31
  end
32
32
  end
33
33
 
File without changes
@@ -13,21 +13,21 @@ RSpec.describe BrDocuments::IE::MG do
13
13
  it 'is invalid with malformed number' do
14
14
  ['36.311.266.571-75', '4.168.836.973-423', '560.139.778.87-BA'].each do |number|
15
15
  ie = described_class.new(number)
16
- expect(ie).to_not be_valid
16
+ expect(ie).not_to be_valid
17
17
  end
18
18
  end
19
19
 
20
20
  it 'is invalid with length different to 13' do
21
21
  ['123456789', '1234567890123'].each do |number|
22
22
  ie = described_class.new(number)
23
- expect(ie).to_not be_valid
23
+ expect(ie).not_to be_valid
24
24
  end
25
25
  end
26
26
 
27
27
  it 'is invalid with invalid check number' do
28
28
  ['4193434759812', '9427301981832'].each do |number|
29
29
  ie = described_class.new(number)
30
- expect(ie).to_not be_valid
30
+ expect(ie).not_to be_valid
31
31
  end
32
32
  end
33
33
 
File without changes
@@ -13,7 +13,7 @@ RSpec.describe BrDocuments::IE::MT do
13
13
  it 'is invalid with malformed number' do
14
14
  ['82.060.187.373', '528843171-72', 'AD402552219'].each do |number|
15
15
  ie = described_class.new(number)
16
- expect(ie).to_not be_valid
16
+ expect(ie).not_to be_valid
17
17
  end
18
18
  end
19
19
 
@@ -21,14 +21,14 @@ RSpec.describe BrDocuments::IE::MT do
21
21
  subject { described_class.new('123456789012') }
22
22
 
23
23
  it 'is invalid' do
24
- expect(subject).to_not be_valid
24
+ expect(subject).not_to be_valid
25
25
  end
26
26
  end
27
27
 
28
28
  it 'is invalid with invalid check number' do
29
29
  ['00404609123', '83646580222'].each do |number|
30
30
  ie = described_class.new(number)
31
- expect(ie).to_not be_valid
31
+ expect(ie).not_to be_valid
32
32
  end
33
33
  end
34
34
 
@@ -13,21 +13,21 @@ describe BrDocuments::IE::PA do
13
13
  it 'is invalid with malformed number' do
14
14
  ['15.361.802-7', '15-48556-93', '15-4AB752-7'].each do |number|
15
15
  ie = described_class.new(number)
16
- expect(ie).to_not be_valid
16
+ expect(ie).not_to be_valid
17
17
  end
18
18
  end
19
19
 
20
20
  it 'is invalid with length different to 9' do
21
21
  ['1234567', '12345678901'].each do |number|
22
22
  ie = described_class.new(number)
23
- expect(ie).to_not be_valid
23
+ expect(ie).not_to be_valid
24
24
  end
25
25
  end
26
26
 
27
27
  it 'is invalid with invalid check number' do
28
28
  ['152653852', '157252799'].each do |number|
29
29
  ie = described_class.new(number)
30
- expect(ie).to_not be_valid
30
+ expect(ie).not_to be_valid
31
31
  end
32
32
  end
33
33
 
File without changes
@@ -22,21 +22,21 @@ describe BrDocuments::IE::PE do
22
22
  it 'is invalid with malformed number' do
23
23
  ['15711188-1', '3.661.165-41', '3AB8287-00', '18.1.001.000000-49'].each do |number|
24
24
  ie = described_class.new(number)
25
- expect(ie).to_not be_valid
25
+ expect(ie).not_to be_valid
26
26
  end
27
27
  end
28
28
 
29
29
  it 'is invalid with length different to 9 or 14' do
30
30
  ['1234567', '12345678901', '0123456789012345'].each do |number|
31
31
  ie = described_class.new(number)
32
- expect(ie).to_not be_valid
32
+ expect(ie).not_to be_valid
33
33
  end
34
34
  end
35
35
 
36
36
  context 'when having 9 digits' do
37
37
  it 'is invalid with invalid check number' do
38
38
  ie = described_class.new('838872602')
39
- expect(ie).to_not be_valid
39
+ expect(ie).not_to be_valid
40
40
  end
41
41
 
42
42
  it 'is valid with valid number' do
@@ -48,7 +48,7 @@ describe BrDocuments::IE::PE do
48
48
  context 'when having 14 digits' do
49
49
  it 'is invalid with invalid check number' do
50
50
  ie = described_class.new('18100100000048')
51
- expect(ie).to_not be_valid
51
+ expect(ie).not_to be_valid
52
52
  end
53
53
 
54
54
  it 'is valid with valid number' do
File without changes
@@ -13,14 +13,14 @@ describe BrDocuments::IE::PR do
13
13
  it 'is invalid with malformed number' do
14
14
  ['1016323-850', '10163238.50'].each do |number|
15
15
  ie = described_class.new(number)
16
- expect(ie).to_not be_valid
16
+ expect(ie).not_to be_valid
17
17
  end
18
18
  end
19
19
 
20
20
  it 'is invalid with invalid check number' do
21
21
  ['10163238-51', '10163238-40'].each do |number|
22
22
  ie = described_class.new(number)
23
- expect(ie).to_not be_valid
23
+ expect(ie).not_to be_valid
24
24
  end
25
25
  end
26
26
 
@@ -13,21 +13,21 @@ describe BrDocuments::IE::RJ do
13
13
  it 'is invalid with malformed number' do
14
14
  ['00.55.55.25', '34.09.25-08', '0A220C18'].each do |number|
15
15
  ie = described_class.new(number)
16
- expect(ie).to_not be_valid
16
+ expect(ie).not_to be_valid
17
17
  end
18
18
  end
19
19
 
20
20
  it 'is invalid with length different to 8' do
21
21
  ['1234567890', '12345'].each do |number|
22
22
  ie = described_class.new(number)
23
- expect(ie).to_not be_valid
23
+ expect(ie).not_to be_valid
24
24
  end
25
25
  end
26
26
 
27
27
  it 'is invalid with invalid check number' do
28
28
  ['99228676', '48388923'].each do |number|
29
29
  ie = described_class.new(number)
30
- expect(ie).to_not be_valid
30
+ expect(ie).not_to be_valid
31
31
  end
32
32
  end
33
33
 
@@ -22,21 +22,21 @@ describe BrDocuments::IE::RN do
22
22
  it 'is invalid with malformed number' do
23
23
  ['9.012.207-95', '617.964.80-7', '25.9AB.924-6'].each do |number|
24
24
  ie = described_class.new(number)
25
- expect(ie).to_not be_valid
25
+ expect(ie).not_to be_valid
26
26
  end
27
27
  end
28
28
 
29
29
  it 'is invalid with length different to 9 or 10' do
30
30
  ['12345678', '12345678901'].each do |number|
31
31
  ie = described_class.new(number)
32
- expect(ie).to_not be_valid
32
+ expect(ie).not_to be_valid
33
33
  end
34
34
  end
35
35
 
36
36
  context 'when having 9 digits' do
37
37
  it 'is invalid with invalid check number' do
38
38
  ie = described_class.new('794050643')
39
- expect(ie).to_not be_valid
39
+ expect(ie).not_to be_valid
40
40
  end
41
41
 
42
42
  it 'is valid with valid number' do
@@ -48,7 +48,7 @@ describe BrDocuments::IE::RN do
48
48
  context 'when having 10 digits' do
49
49
  it 'is invalid with invalid check number' do
50
50
  ie = described_class.new('1153296142')
51
- expect(ie).to_not be_valid
51
+ expect(ie).not_to be_valid
52
52
  end
53
53
 
54
54
  it 'is valid with valid number' do
@@ -22,21 +22,21 @@ describe BrDocuments::IE::RO do
22
22
  it 'is invalid with malformed number' do
23
23
  ['20.049.788-6', '2.004.978-86', '937.03AB1-6'].each do |number|
24
24
  ie = described_class.new(number)
25
- expect(ie).to_not be_valid
25
+ expect(ie).not_to be_valid
26
26
  end
27
27
  end
28
28
 
29
29
  it 'is invalid with length different to 9 or 14' do
30
30
  ['1234567', '123456789012', '12345678901234567'].each do |number|
31
31
  ie = described_class.new(number)
32
- expect(ie).to_not be_valid
32
+ expect(ie).not_to be_valid
33
33
  end
34
34
  end
35
35
 
36
36
  context 'when having 9 digits' do
37
37
  it 'is invalid with invalid check number' do
38
38
  ie = described_class.new('134725252')
39
- expect(ie).to_not be_valid
39
+ expect(ie).not_to be_valid
40
40
  end
41
41
 
42
42
  it 'is valid with valid number' do
@@ -48,7 +48,7 @@ describe BrDocuments::IE::RO do
48
48
  context 'when having 14 digits' do
49
49
  it 'is invalid with invalid check number' do
50
50
  ie = described_class.new('02539835229263')
51
- expect(ie).to_not be_valid
51
+ expect(ie).not_to be_valid
52
52
  end
53
53
 
54
54
  it 'is valid with valid number' do
@@ -13,21 +13,21 @@ describe BrDocuments::IE::RR do
13
13
  it 'is invalid with malformed number' do
14
14
  ['24.410.109-5', '2456128-32', '24AB0559-6'].each do |number|
15
15
  ie = described_class.new(number)
16
- expect(ie).to_not be_valid
16
+ expect(ie).not_to be_valid
17
17
  end
18
18
  end
19
19
 
20
20
  it 'is invalid with length different to 9' do
21
21
  ['1234567', '123456789'].each do |number|
22
22
  ie = described_class.new(number)
23
- expect(ie).to_not be_valid
23
+ expect(ie).not_to be_valid
24
24
  end
25
25
  end
26
26
 
27
27
  it 'is invalid with invalid check number' do
28
28
  ['242131962', '247318099'].each do |number|
29
29
  ie = described_class.new(number)
30
- expect(ie).to_not be_valid
30
+ expect(ie).not_to be_valid
31
31
  end
32
32
  end
33
33
 
@@ -12,20 +12,20 @@ describe BrDocuments::IE::RS do
12
12
  describe '#valid?' do
13
13
  it 'is invalid with malformed number' do
14
14
  ie = described_class.new('17/70169293')
15
- expect(ie).to_not be_valid
15
+ expect(ie).not_to be_valid
16
16
  end
17
17
 
18
18
  it 'is invalid with length different to 10' do
19
19
  ['123456789', '12345678901'].each do |number|
20
20
  ie = described_class.new(number)
21
- expect(ie).to_not be_valid
21
+ expect(ie).not_to be_valid
22
22
  end
23
23
  end
24
24
 
25
25
  it 'is invalid with invalid check number' do
26
26
  ['1770169292', '034/0112114'].each do |number|
27
27
  ie = described_class.new(number)
28
- expect(ie).to_not be_valid
28
+ expect(ie).not_to be_valid
29
29
  end
30
30
  end
31
31
 
@@ -13,21 +13,21 @@ describe BrDocuments::IE::SC do
13
13
  it 'is invalid with malformed number' do
14
14
  ['253.66.7852', '25.4062.407', 'A12345678'].each do |number|
15
15
  ie = described_class.new(number)
16
- expect(ie).to_not be_valid
16
+ expect(ie).not_to be_valid
17
17
  end
18
18
  end
19
19
 
20
20
  it 'is invalid with length different to 9' do
21
21
  ['1234567890', '12345678'].each do |number|
22
22
  ie = described_class.new(number)
23
- expect(ie).to_not be_valid
23
+ expect(ie).not_to be_valid
24
24
  end
25
25
  end
26
26
 
27
27
  it 'is invalid with invalid check number' do
28
28
  ['253667853', '254.062.408'].each do |number|
29
29
  ie = described_class.new(number)
30
- expect(ie).to_not be_valid
30
+ expect(ie).not_to be_valid
31
31
  end
32
32
  end
33
33
 
File without changes
@@ -5,21 +5,21 @@ shared_examples 'a pattern1' do |uf|
5
5
  it 'is invalid with malformed number' do
6
6
  ['1922212-21', '72.219.398-0', '63BA9943-8'].each do |number|
7
7
  ie = described_class.create(uf, number)
8
- expect(ie).to_not be_valid
8
+ expect(ie).not_to be_valid
9
9
  end
10
10
  end
11
11
 
12
12
  it 'is invalid with length different to 9' do
13
13
  ['1234567', '12345678901'].each do |number|
14
14
  ie = described_class.create(uf, number)
15
- expect(ie).to_not be_valid
15
+ expect(ie).not_to be_valid
16
16
  end
17
17
  end
18
18
 
19
19
  it 'is invalid with invalid check number' do
20
20
  ['226905727', '662637732'].each do |number|
21
21
  ie = described_class.create(uf, number)
22
- expect(ie).to_not be_valid
22
+ expect(ie).not_to be_valid
23
23
  end
24
24
  end
25
25
 
@@ -22,14 +22,14 @@ describe BrDocuments::IE::SP do
22
22
  it 'is invalid with malformed number' do
23
23
  ['36.9107.395114', '527.08212.8110'].each do |number|
24
24
  ie = described_class.new(number)
25
- expect(ie).to_not be_valid
25
+ expect(ie).not_to be_valid
26
26
  end
27
27
  end
28
28
 
29
29
  it 'is invalid with invalid check number' do
30
30
  ['110042490113', '110.042.491.114', 'P-01100424.4/002'].each do |number|
31
31
  ie = described_class.new(number)
32
- expect(ie).to_not be_valid
32
+ expect(ie).not_to be_valid
33
33
  end
34
34
  end
35
35
 
@@ -24,14 +24,14 @@ describe BrDocuments::IE::TO do
24
24
  it 'is invalid with malformed number' do
25
25
  ['2.903.593.362-3', '29.02.79268-45', '29.02.5AB420-5'].each do |number|
26
26
  ie = described_class.new(number)
27
- expect(ie).to_not be_valid
27
+ expect(ie).not_to be_valid
28
28
  end
29
29
  end
30
30
 
31
31
  it 'is invalid with length different of 9 or 11' do
32
32
  ['12345678', '1234567890', '123456789012'].each do |number|
33
33
  ie = described_class.new(number)
34
- expect(ie).to_not be_valid
34
+ expect(ie).not_to be_valid
35
35
  end
36
36
  end
37
37
 
@@ -39,14 +39,14 @@ describe BrDocuments::IE::TO do
39
39
  it 'is invalid with invalid check number' do
40
40
  ['290227835', '294083153'].each do |number|
41
41
  ie = described_class.new(number)
42
- expect(ie).to_not be_valid
42
+ expect(ie).not_to be_valid
43
43
  end
44
44
  end
45
45
 
46
46
  it 'is invalid with correct check number but invalid mask' do
47
47
  ['29-022783-6', '29.408315.4'].each do |number|
48
48
  ie = described_class.new(number)
49
- expect(ie).to_not be_valid
49
+ expect(ie).not_to be_valid
50
50
  end
51
51
  end
52
52
 
@@ -69,14 +69,14 @@ describe BrDocuments::IE::TO do
69
69
  it 'is invalid with invalid check number' do
70
70
  ['29023864406', '29023864409'].each do |number|
71
71
  ie = described_class.new(number)
72
- expect(ie).to_not be_valid
72
+ expect(ie).not_to be_valid
73
73
  end
74
74
  end
75
75
 
76
76
  it 'is invalid with correct check number but invalid mask' do
77
77
  ['29-99.200143-6', '29.99.231741.7'].each do |number|
78
78
  ie = described_class.new(number)
79
- expect(ie).to_not be_valid
79
+ expect(ie).not_to be_valid
80
80
  end
81
81
  end
82
82
 
@@ -1,10 +1,12 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  RSpec.describe IeValidator do
4
- let(:record) { double('model') }
4
+ subject { described_class.new(attributes: 'ie', uf: 'uf') }
5
+
6
+ let(:record) { instance_double('model') }
5
7
 
6
8
  before do
7
- allow(record).to receive(:uf) { 'SC' }
9
+ allow(record).to receive(:uf).and_return('SC')
8
10
  allow(record).to receive(:errors).and_return({})
9
11
  allow(record.errors).to receive(:messages).and_return({})
10
12
  allow(record.errors).to receive(:add) do |attribute, error|
@@ -14,8 +16,6 @@ RSpec.describe IeValidator do
14
16
  end
15
17
  end
16
18
 
17
- subject { IeValidator.new(attributes: 'ie', uf: 'uf') }
18
-
19
19
  context "when IE's number is valid" do
20
20
  before { subject.validate_each(record, 'ie', '253667852') }
21
21
 
@@ -50,7 +50,7 @@ RSpec.describe IeValidator do
50
50
 
51
51
  context 'when UF is invalid' do
52
52
  before do
53
- allow(record).to receive(:uf) { 'XX' }
53
+ allow(record).to receive(:uf).and_return('XX')
54
54
  subject.validate_each(record, 'ie', '253667852')
55
55
  end
56
56
 
@@ -73,7 +73,8 @@ RSpec.describe IeValidator do
73
73
  end
74
74
 
75
75
  context 'when attribute uf is not defined' do
76
- subject { IeValidator.new(attributes: 'ie') }
76
+ subject { described_class.new(attributes: 'ie') }
77
+
77
78
  before { subject.validate_each(record, 'ie', '253667852') }
78
79
 
79
80
  it 'adds error in model' do