br_documents 0.2.0 → 0.2.1

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.
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