br_danfe 0.5.1 → 0.5.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 +4 -4
- data/Dockerfile +20 -0
- data/Gemfile +1 -1
- data/README.md +21 -12
- data/docker-compose.yml +8 -0
- data/lib/br_danfe/danfe.rb +1 -1
- data/lib/br_danfe/danfe_lib/emit_header.rb +22 -9
- data/lib/br_danfe/danfe_lib/logo_options.rb +28 -0
- data/lib/br_danfe/danfe_lib/options.rb +1 -0
- data/lib/br_danfe/version.rb +1 -1
- data/spec/features/danfe_spec.rb +1 -0
- data/spec/fixtures/nfe/lib/emit_header#render-with_logo.pdf +6 -6
- data/spec/fixtures/nfe/lib/emit_header#render-without_logo.pdf +1 -1
- data/spec/fixtures/nfe/v2.00/custom_options.fixture.pdf +7 -7
- data/spec/fixtures/nfe/v2.00/nfe_simples_nacional.xml.fixture.pdf +2 -2
- data/spec/fixtures/nfe/v2.00/nfe_with_extra_volumes.xml.fixture.pdf +1 -1
- data/spec/fixtures/nfe/v2.00/nfe_with_fci.xml.fixture.pdf +2 -2
- data/spec/fixtures/nfe/v2.00/nfe_with_ns.xml.fixture.pdf +1 -1
- data/spec/fixtures/nfe/v2.00/nfe_without_ns.xml.fixture.pdf +1 -1
- data/spec/fixtures/nfe/v3.10/nfe_simples_nacional.xml.fixture.pdf +1 -1
- data/spec/lib/danfe_lib/emit_header_spec.rb +2 -2
- data/spec/lib/danfe_lib/logo_options_spec.rb +82 -0
- data/spec/lib/danfe_lib/options_spec.rb +6 -1
- metadata +106 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d394becb075780bdb77c14db3fa0020a2bbea472
|
4
|
+
data.tar.gz: 17dab17f8cc0f36dbddecea3ecda54212eaa0815
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0bf049fcbce978d4c153054a1224b8289e211eb39587792e03c63227858b1e3b39a968d4a51e866cb60b53f4a665dfaa990d180e040f2573a619877446e11532
|
7
|
+
data.tar.gz: f16c0a7e2e430afec9d717107f2322b3a14839ec9920d7637e5f68c952429fe1aaec07cbab3bc71d28b4800a8a9e57227f6fb1697d6abbdf5752379ef9f7ae5e
|
data/Dockerfile
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
FROM ruby:2.2.5
|
2
|
+
|
3
|
+
# MACHINE
|
4
|
+
RUN apt-get update -qq && apt-get install -y build-essential
|
5
|
+
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
6
|
+
|
7
|
+
# SOURCE DIR
|
8
|
+
RUN mkdir /src
|
9
|
+
WORKDIR /src
|
10
|
+
|
11
|
+
# LINK GEMS
|
12
|
+
ADD ./lib/br_danfe/version.rb ./lib/br_danfe/version.rb
|
13
|
+
ADD ./br_danfe.gemspec ./br_danfe.gemspec
|
14
|
+
ADD ./Gemfile ./Gemfile
|
15
|
+
|
16
|
+
RUN bundle
|
17
|
+
|
18
|
+
# LINK SOURCE
|
19
|
+
ADD ./ ./
|
20
|
+
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -84,31 +84,40 @@ By default, your rails application must be configured to `pt-Br`.
|
|
84
84
|
|
85
85
|
If you need to customize some message or field label, you can override the content of pt-Br.yml file.
|
86
86
|
|
87
|
-
## Development
|
87
|
+
## Development - With Docker
|
88
88
|
|
89
|
-
|
89
|
+
You needs to build docker container like above:
|
90
90
|
|
91
|
-
|
91
|
+
$ docker-compose build
|
92
92
|
|
93
|
-
|
93
|
+
You can run all RSpec specs using:
|
94
|
+
|
95
|
+
$ docker-compose run br_danfe rspec
|
94
96
|
|
95
|
-
### Tests
|
96
97
|
|
97
|
-
|
98
|
+
## Development - Without Docker
|
98
99
|
|
99
|
-
You
|
100
|
+
You needs to install all necessaries dependencies using bunder like above:
|
101
|
+
|
102
|
+
$ bundle install
|
103
|
+
|
104
|
+
|
105
|
+
You can run all RSpec specs using:
|
100
106
|
|
101
107
|
$ rspec
|
102
108
|
|
103
|
-
If you modify something that caused general visual changes at output pdfs, so you have to rebuild the fixtures pdf files.
|
104
109
|
|
105
|
-
|
110
|
+
## About tests
|
111
|
+
|
112
|
+
> If you modify something that caused general visual changes at output pdfs, so you have to rebuild the fixtures pdf files.
|
113
|
+
>
|
114
|
+
> You can do this simply deleting the fixture pdf file. The `have_same_content_of` matcher will recreate the fixture in the next time you run the `rspec` command.
|
106
115
|
|
107
|
-
|
116
|
+
### Code coverage
|
108
117
|
|
109
118
|
Code coverage is available through of SimpleCov. Just run `rspec` and open the coverage report in your browser.
|
110
119
|
|
111
|
-
|
120
|
+
### Fake data for generating new fixtures
|
112
121
|
|
113
122
|
If you need to generate new danfes for using as fixtures, please don't use real data.
|
114
123
|
|
@@ -171,7 +180,7 @@ IE | 964.508.990.089
|
|
171
180
|
|
172
181
|
You can generate new data using [4devs generators](http://www.4devs.com.br).
|
173
182
|
|
174
|
-
|
183
|
+
## Building and publishing
|
175
184
|
|
176
185
|
You can build using one of the above tasks
|
177
186
|
|
data/docker-compose.yml
ADDED
data/lib/br_danfe/danfe.rb
CHANGED
@@ -58,7 +58,7 @@ module BrDanfe
|
|
58
58
|
|
59
59
|
def repeat_on_each_page
|
60
60
|
DanfeLib::Ticket.new(@pdf, @xml).render
|
61
|
-
DanfeLib::EmitHeader.new(@pdf, @xml, @options.logo).render
|
61
|
+
DanfeLib::EmitHeader.new(@pdf, @xml, @options.logo, @options.logo_dimensions).render
|
62
62
|
DanfeLib::Emit.new(@pdf, @xml).render
|
63
63
|
DanfeLib::Dest.new(@pdf, @xml).render
|
64
64
|
DanfeLib::Dup.new(@pdf, @xml).render
|
@@ -1,34 +1,37 @@
|
|
1
1
|
module BrDanfe
|
2
2
|
module DanfeLib
|
3
3
|
class EmitHeader
|
4
|
-
def initialize(pdf, xml, logo)
|
4
|
+
def initialize(pdf, xml, logo, logo_dimensions)
|
5
5
|
@pdf = pdf
|
6
6
|
@xml = xml
|
7
7
|
@logo = logo
|
8
|
+
@logo_dimensions = logo_dimensions
|
8
9
|
end
|
9
10
|
|
10
11
|
def render
|
11
|
-
|
12
|
+
company_box
|
12
13
|
danfe_box
|
13
14
|
access_key_box
|
14
15
|
sefaz_box
|
15
16
|
end
|
16
17
|
|
17
18
|
private
|
18
|
-
|
19
|
+
|
20
|
+
def company_box
|
19
21
|
@pdf.ibox 3.92, 7.46, 0.75, 3.96
|
20
22
|
|
21
|
-
@pdf.ibox 3.92, 7.46, 0.75,
|
23
|
+
@pdf.ibox 3.92, 7.46, 0.75, 3.96, "", @xml["emit/xNome"],
|
22
24
|
{ size: 12, align: :center, border: 0, style: :bold }
|
23
25
|
|
26
|
+
address_company
|
27
|
+
end
|
28
|
+
|
29
|
+
def address_company
|
24
30
|
if @logo.blank?
|
25
31
|
@pdf.ibox 3.92, 7.46, 1.25, 5.42, "", address, { align: :left, border: 0 }
|
26
32
|
else
|
27
|
-
@pdf.ibox 3.92, 7.46, 3.
|
28
|
-
|
29
|
-
|
30
|
-
@pdf.image @logo, at: [1.0.cm, Helper.invert(5.42.cm)],
|
31
|
-
width: 2.cm
|
33
|
+
@pdf.ibox 3.92, 7.46, 3.60, 5.42, "", address, { size: 8, align: :left, border: 0 }
|
34
|
+
logo
|
32
35
|
end
|
33
36
|
end
|
34
37
|
|
@@ -49,6 +52,16 @@ module BrDanfe
|
|
49
52
|
Cep.format(@xml["enderEmit/CEP"])
|
50
53
|
end
|
51
54
|
|
55
|
+
def logo
|
56
|
+
bounding_box_size = 80
|
57
|
+
logo_options = BrDanfe::DanfeLib::LogoOptions.new(bounding_box_size, @logo_dimensions).options
|
58
|
+
|
59
|
+
@pdf.move_down 105
|
60
|
+
@pdf.bounding_box([0.83.cm, @pdf.cursor], width: bounding_box_size, height: bounding_box_size) do
|
61
|
+
@pdf.image @logo, logo_options
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
52
65
|
def danfe_box
|
53
66
|
@pdf.ibox 3.92, 2.08, 8.21, 3.96
|
54
67
|
|
@@ -0,0 +1,28 @@
|
|
1
|
+
module BrDanfe
|
2
|
+
module DanfeLib
|
3
|
+
class LogoOptions
|
4
|
+
def initialize(bounding_box_size, logo_dimensions)
|
5
|
+
@bounding_box_size = bounding_box_size
|
6
|
+
@logo_width = logo_dimensions[:width]
|
7
|
+
@logo_height = logo_dimensions[:height]
|
8
|
+
end
|
9
|
+
|
10
|
+
def options
|
11
|
+
logo_options = dimensions
|
12
|
+
logo_options[:position] = :center
|
13
|
+
logo_options[:vposition] = :center
|
14
|
+
logo_options
|
15
|
+
end
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
def dimensions
|
20
|
+
@logo_width > @logo_height ? { width: calculate_size(@logo_width) } : { height: calculate_size(@logo_height) }
|
21
|
+
end
|
22
|
+
|
23
|
+
def calculate_size(size)
|
24
|
+
size < @bounding_box_size ? size : @bounding_box_size
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/lib/br_danfe/version.rb
CHANGED
data/spec/features/danfe_spec.rb
CHANGED
@@ -29,6 +29,7 @@ describe BrDanfe::Danfe do
|
|
29
29
|
danfe.options.logo = "spec/fixtures/logo.png"
|
30
30
|
danfe.options.products_unit_price_precision = 4
|
31
31
|
danfe.options.products_quantity_precision = 4
|
32
|
+
danfe.options.logo_dimensions = { width: 100, height: 100 }
|
32
33
|
|
33
34
|
danfe.save_pdf output_pdf
|
34
35
|
|
@@ -26,42 +26,42 @@ q
|
|
26
26
|
S
|
27
27
|
|
28
28
|
BT
|
29
|
-
61.5081
|
29
|
+
61.5081 753.4418 Td
|
30
30
|
/F2.0 12 Tf
|
31
31
|
[<4e6f6d6520646f2052656d6574656e7465204c746461>] TJ
|
32
32
|
ET
|
33
33
|
|
34
34
|
|
35
35
|
BT
|
36
|
-
|
36
|
+
104.0472 714.788 Td
|
37
37
|
/F1.0 8 Tf
|
38
38
|
[<52756120646f2052656d6574656e74652c20436173612c20313233>] TJ
|
39
39
|
ET
|
40
40
|
|
41
41
|
|
42
42
|
BT
|
43
|
-
|
43
|
+
104.0472 705.86 Td
|
44
44
|
/F1.0 8 Tf
|
45
45
|
[<42616972726f20646f2052656d6574656e7465202d2031322e3334352d363738>] TJ
|
46
46
|
ET
|
47
47
|
|
48
48
|
|
49
49
|
BT
|
50
|
-
|
50
|
+
104.0472 696.932 Td
|
51
51
|
/F1.0 8 Tf
|
52
52
|
[<5341> 55 <4f2050> 92 <41> 55 <554c4f2f5350>] TJ
|
53
53
|
ET
|
54
54
|
|
55
55
|
|
56
56
|
BT
|
57
|
-
|
57
|
+
104.0472 688.004 Td
|
58
58
|
/F1.0 8 Tf
|
59
59
|
[<2831312920313233342d3536373820666f6f40626172> 55 <2e636f6d>] TJ
|
60
60
|
ET
|
61
61
|
|
62
62
|
|
63
63
|
q
|
64
|
-
|
64
|
+
80.0 0.0 0.0 80.0 23.5276 656.89 cm
|
65
65
|
/I1 Do
|
66
66
|
Q
|
67
67
|
232.7244 654.5197 58.9606 111.1181 re
|
@@ -740,49 +740,49 @@ ET
|
|
740
740
|
S
|
741
741
|
|
742
742
|
BT
|
743
|
-
59.2881
|
743
|
+
59.2881 753.4418 Td
|
744
744
|
/F2.0 12 Tf
|
745
745
|
[<4b52> 30 <4f4e20494e535452> 30 <554d454e54> 18 <4f53>] TJ
|
746
746
|
ET
|
747
747
|
|
748
748
|
|
749
749
|
BT
|
750
|
-
74.5761
|
750
|
+
74.5761 739.6058 Td
|
751
751
|
/F2.0 12 Tf
|
752
752
|
[<454c45545249434f53204c> 92 <5444> 35 <41>] TJ
|
753
753
|
ET
|
754
754
|
|
755
755
|
|
756
756
|
BT
|
757
|
-
|
757
|
+
104.0472 714.788 Td
|
758
758
|
/F1.0 8 Tf
|
759
759
|
[<52> 40 <55> 40 <4120414c4558414e445245204445204755534d41> 55 <4f2c20323738>] TJ
|
760
760
|
ET
|
761
761
|
|
762
762
|
|
763
763
|
BT
|
764
|
-
|
764
|
+
104.0472 705.86 Td
|
765
765
|
/F1.0 8 Tf
|
766
766
|
[<534f434f5252> 40 <4f202d2030342e3736302d303230>] TJ
|
767
767
|
ET
|
768
768
|
|
769
769
|
|
770
770
|
BT
|
771
|
-
|
771
|
+
104.0472 696.932 Td
|
772
772
|
/F1.0 8 Tf
|
773
773
|
[<5341> 55 <4f2050> 92 <41> 55 <554c4f2f5350>] TJ
|
774
774
|
ET
|
775
775
|
|
776
776
|
|
777
777
|
BT
|
778
|
-
|
778
|
+
104.0472 688.004 Td
|
779
779
|
/F1.0 8 Tf
|
780
780
|
[<2831312920353532352d32303030>] TJ
|
781
781
|
ET
|
782
782
|
|
783
783
|
|
784
784
|
q
|
785
|
-
|
785
|
+
80.0 0.0 0.0 80.0 23.5276 656.89 cm
|
786
786
|
/I1 Do
|
787
787
|
Q
|
788
788
|
232.7244 654.5197 58.9606 111.1181 re
|
@@ -738,14 +738,14 @@ ET
|
|
738
738
|
S
|
739
739
|
|
740
740
|
BT
|
741
|
-
59.2881
|
741
|
+
59.2881 753.4418 Td
|
742
742
|
/F2.0 12 Tf
|
743
743
|
[<4b52> 30 <4f4e20494e535452> 30 <554d454e54> 18 <4f53>] TJ
|
744
744
|
ET
|
745
745
|
|
746
746
|
|
747
747
|
BT
|
748
|
-
74.5761
|
748
|
+
74.5761 739.6058 Td
|
749
749
|
/F2.0 12 Tf
|
750
750
|
[<454c45545249434f53204c> 92 <5444> 35 <41>] TJ
|
751
751
|
ET
|
@@ -414,14 +414,14 @@ ET
|
|
414
414
|
S
|
415
415
|
|
416
416
|
BT
|
417
|
-
59.2881
|
417
|
+
59.2881 753.4418 Td
|
418
418
|
/F2.0 12 Tf
|
419
419
|
[<4b52> 30 <4f4e20494e535452> 30 <554d454e54> 18 <4f53>] TJ
|
420
420
|
ET
|
421
421
|
|
422
422
|
|
423
423
|
BT
|
424
|
-
74.5761
|
424
|
+
74.5761 739.6058 Td
|
425
425
|
/F2.0 12 Tf
|
426
426
|
[<454c45545249434f53204c> 92 <5444> 35 <41>] TJ
|
427
427
|
ET
|
@@ -48,7 +48,7 @@ describe BrDanfe::DanfeLib::EmitHeader do
|
|
48
48
|
end
|
49
49
|
|
50
50
|
context "without logo" do
|
51
|
-
subject { described_class.new(pdf, xml, "") }
|
51
|
+
subject { described_class.new(pdf, xml, "", { width: 100, height: 100 }) }
|
52
52
|
|
53
53
|
it "renders xml to the pdf" do
|
54
54
|
expect(File.exist?(output_pdf)).to be_falsey
|
@@ -62,7 +62,7 @@ describe BrDanfe::DanfeLib::EmitHeader do
|
|
62
62
|
context "with logo" do
|
63
63
|
let(:logo) { "spec/fixtures/logo.png" }
|
64
64
|
|
65
|
-
subject { described_class.new(pdf, xml, logo) }
|
65
|
+
subject { described_class.new(pdf, xml, logo, { width: 100, height: 100 }) }
|
66
66
|
|
67
67
|
it "renders xml to the pdf" do
|
68
68
|
expect(File.exist?(output_pdf)).to be_falsey
|
@@ -0,0 +1,82 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
RSpec.describe BrDanfe::DanfeLib::LogoOptions do
|
4
|
+
let(:box_size) { 100 }
|
5
|
+
let(:logo_dimensions) do
|
6
|
+
{ width: 50, height: 50 }
|
7
|
+
end
|
8
|
+
|
9
|
+
subject { described_class.new(box_size, logo_dimensions) }
|
10
|
+
|
11
|
+
describe "#options" do
|
12
|
+
context "when the logo dimensions are smaller than the dimensions of the box" do
|
13
|
+
context "when the logo is square" do
|
14
|
+
it "returns the options with logo height" do
|
15
|
+
expect(subject.options).to eq(height: 50, position: :center, vposition: :center)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
context "when logo width is larger than logo height" do
|
20
|
+
let(:logo_dimensions) do
|
21
|
+
{ width: 75, height: 50 }
|
22
|
+
end
|
23
|
+
|
24
|
+
it "returns the options with logo width" do
|
25
|
+
expect(subject.options).to eq(width: 75, position: :center, vposition: :center)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
context "when logo height is larger than logo width" do
|
30
|
+
let(:logo_dimensions) do
|
31
|
+
{ width: 50, height: 75 }
|
32
|
+
end
|
33
|
+
|
34
|
+
it "returns the options with logo height" do
|
35
|
+
expect(subject.options).to eq(height: 75, position: :center, vposition: :center)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
context "when the logo dimensions are equal to the dimensions of the box" do
|
41
|
+
let(:logo_dimensions) do
|
42
|
+
{ width: 100, height: 100 }
|
43
|
+
end
|
44
|
+
|
45
|
+
it "returns the options with box size" do
|
46
|
+
expect(subject.options).to eq(height: 100, position: :center, vposition: :center)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
context "when the logo dimensions are larger than the dimensions of the box" do
|
51
|
+
context "when the logo is square" do
|
52
|
+
let(:logo_dimensions) do
|
53
|
+
{ width: 150, height: 150 }
|
54
|
+
end
|
55
|
+
|
56
|
+
it "returns the options with box size" do
|
57
|
+
expect(subject.options).to eq(height: 100, position: :center, vposition: :center)
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
context "when logo width is larger than logo height" do
|
62
|
+
let(:logo_dimensions) do
|
63
|
+
{ width: 175, height: 150 }
|
64
|
+
end
|
65
|
+
|
66
|
+
it "returns the options with box size" do
|
67
|
+
expect(subject.options).to eq(width: 100, position: :center, vposition: :center)
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
context "when logo height is larger than logo width" do
|
72
|
+
let(:logo_dimensions) do
|
73
|
+
{ width: 150, height: 175 }
|
74
|
+
end
|
75
|
+
|
76
|
+
it "returns the options with box size" do
|
77
|
+
expect(subject.options).to eq(height: 100, position: :center, vposition: :center)
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
end
|
@@ -4,17 +4,22 @@ describe BrDanfe::DanfeLib::Options do
|
|
4
4
|
it "returns the default config set in the code" do
|
5
5
|
options = BrDanfe::DanfeLib::Options.new
|
6
6
|
expect(options.logo).to eq("")
|
7
|
+
expect(options.logo_dimensions).to eq({})
|
8
|
+
|
7
9
|
expect(options.products_unit_price_precision).to eq(2)
|
8
10
|
expect(options.products_quantity_precision).to eq(2)
|
9
11
|
end
|
10
12
|
|
11
13
|
it "returns the config set in params" do
|
12
14
|
custom_options = { logo: "/fake/path/file.png",
|
13
|
-
products_unit_price_precision: 3, products_quantity_precision: 4
|
15
|
+
products_unit_price_precision: 3, products_quantity_precision: 4,
|
16
|
+
logo_dimensions: { width: 50, height: 50}
|
17
|
+
}
|
14
18
|
|
15
19
|
options = BrDanfe::DanfeLib::Options.new(custom_options)
|
16
20
|
expect(options.logo).to eq("/fake/path/file.png")
|
17
21
|
expect(options.products_unit_price_precision).to eq(3)
|
18
22
|
expect(options.products_quantity_precision).to eq(4)
|
23
|
+
expect(options.logo_dimensions).to eq({ width: 50, height: 50})
|
19
24
|
end
|
20
25
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: br_danfe
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ASSEINFO
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-09-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|
@@ -159,12 +159,14 @@ files:
|
|
159
159
|
- ".codeclimate.yml"
|
160
160
|
- ".gitignore"
|
161
161
|
- ".rspec"
|
162
|
+
- Dockerfile
|
162
163
|
- Gemfile
|
163
164
|
- README.md
|
164
165
|
- Rakefile
|
165
166
|
- br_danfe.gemspec
|
166
167
|
- circle.yml
|
167
168
|
- config/locales/pt-BR.yml
|
169
|
+
- docker-compose.yml
|
168
170
|
- lib/br_danfe.rb
|
169
171
|
- lib/br_danfe/cce.rb
|
170
172
|
- lib/br_danfe/cce_lib/barcode.rb
|
@@ -189,6 +191,7 @@ files:
|
|
189
191
|
- lib/br_danfe/danfe_lib/icmstot.rb
|
190
192
|
- lib/br_danfe/danfe_lib/infadic.rb
|
191
193
|
- lib/br_danfe/danfe_lib/issqn.rb
|
194
|
+
- lib/br_danfe/danfe_lib/logo_options.rb
|
192
195
|
- lib/br_danfe/danfe_lib/options.rb
|
193
196
|
- lib/br_danfe/danfe_lib/phone.rb
|
194
197
|
- lib/br_danfe/danfe_lib/plate.rb
|
@@ -286,6 +289,7 @@ files:
|
|
286
289
|
- spec/lib/danfe_lib/icmstot_spec.rb
|
287
290
|
- spec/lib/danfe_lib/infadic_spec.rb
|
288
291
|
- spec/lib/danfe_lib/issqn_spec.rb
|
292
|
+
- spec/lib/danfe_lib/logo_options_spec.rb
|
289
293
|
- spec/lib/danfe_lib/options_spec.rb
|
290
294
|
- spec/lib/danfe_lib/phone_spec.rb
|
291
295
|
- spec/lib/danfe_lib/plate_spec.rb
|
@@ -320,4 +324,103 @@ rubygems_version: 2.4.8
|
|
320
324
|
signing_key:
|
321
325
|
specification_version: 4
|
322
326
|
summary: DANFE pdf generator for Brazilian invoices.
|
323
|
-
test_files:
|
327
|
+
test_files:
|
328
|
+
- spec/features/cce_spec.rb
|
329
|
+
- spec/features/danfe_spec.rb
|
330
|
+
- spec/fixtures/cce/lib/barcode#render.pdf
|
331
|
+
- spec/fixtures/cce/lib/correction#render.pdf
|
332
|
+
- spec/fixtures/cce/lib/document#box.pdf
|
333
|
+
- spec/fixtures/cce/lib/document#box.with.block.pdf
|
334
|
+
- spec/fixtures/cce/lib/document#text.align.pdf
|
335
|
+
- spec/fixtures/cce/lib/document#text.pad.pdf
|
336
|
+
- spec/fixtures/cce/lib/document#text.simple.pdf
|
337
|
+
- spec/fixtures/cce/lib/document#text.size.pdf
|
338
|
+
- spec/fixtures/cce/lib/document#text.style.pdf
|
339
|
+
- spec/fixtures/cce/lib/footer#render.pdf
|
340
|
+
- spec/fixtures/cce/lib/header#render.pdf
|
341
|
+
- spec/fixtures/cce/lib/nfe_key#render.pdf
|
342
|
+
- spec/fixtures/cce/lib/protocol#render.pdf
|
343
|
+
- spec/fixtures/cce/v1.00/cce.fixture.pdf
|
344
|
+
- spec/fixtures/cce/v1.00/cce.xml
|
345
|
+
- spec/fixtures/logo.png
|
346
|
+
- spec/fixtures/nfe/lib/dest#render-v2.00.pdf
|
347
|
+
- spec/fixtures/nfe/lib/dest#render-v3.10.pdf
|
348
|
+
- spec/fixtures/nfe/lib/dest#render-with_cnpj.pdf
|
349
|
+
- spec/fixtures/nfe/lib/dest#render-with_cpf.pdf
|
350
|
+
- spec/fixtures/nfe/lib/dest#render-with_ie.pdf
|
351
|
+
- spec/fixtures/nfe/lib/det_body#render-csosn.pdf
|
352
|
+
- spec/fixtures/nfe/lib/det_body#render-cst.pdf
|
353
|
+
- spec/fixtures/nfe/lib/det_body#render-fci.pdf
|
354
|
+
- spec/fixtures/nfe/lib/det_body#render-icms_st.pdf
|
355
|
+
- spec/fixtures/nfe/lib/det_body#render-quantity_with_custom_precision.pdf
|
356
|
+
- spec/fixtures/nfe/lib/det_body#render-unit_price_with_custom_precision.pdf
|
357
|
+
- spec/fixtures/nfe/lib/det_header#render.pdf
|
358
|
+
- spec/fixtures/nfe/lib/document#lcnpj-blank.pdf
|
359
|
+
- spec/fixtures/nfe/lib/document#lcnpj-invalid.pdf
|
360
|
+
- spec/fixtures/nfe/lib/document#lcnpj-valid.pdf
|
361
|
+
- spec/fixtures/nfe/lib/document#lie-blank.pdf
|
362
|
+
- spec/fixtures/nfe/lib/document#lie-invalid.pdf
|
363
|
+
- spec/fixtures/nfe/lib/document#lie-valid.pdf
|
364
|
+
- spec/fixtures/nfe/lib/dup#render.pdf
|
365
|
+
- spec/fixtures/nfe/lib/emit#render.pdf
|
366
|
+
- spec/fixtures/nfe/lib/emit_header#render-with_logo.pdf
|
367
|
+
- spec/fixtures/nfe/lib/emit_header#render-without_logo.pdf
|
368
|
+
- spec/fixtures/nfe/lib/icmstot#render.pdf
|
369
|
+
- spec/fixtures/nfe/lib/infadic#render-difal.pdf
|
370
|
+
- spec/fixtures/nfe/lib/infadic#render-extra_volume.pdf
|
371
|
+
- spec/fixtures/nfe/lib/infadic#render-extra_volume_difal.pdf
|
372
|
+
- spec/fixtures/nfe/lib/infadic#render.pdf
|
373
|
+
- spec/fixtures/nfe/lib/issqn#render.pdf
|
374
|
+
- spec/fixtures/nfe/lib/ticket#render.pdf
|
375
|
+
- spec/fixtures/nfe/lib/transp#render-modfrete_0.pdf
|
376
|
+
- spec/fixtures/nfe/lib/transp#render-modfrete_1.pdf
|
377
|
+
- spec/fixtures/nfe/lib/transp#render-modfrete_2.pdf
|
378
|
+
- spec/fixtures/nfe/lib/transp#render-modfrete_9.pdf
|
379
|
+
- spec/fixtures/nfe/lib/transp#render.pdf
|
380
|
+
- spec/fixtures/nfe/lib/vol#render-blank-boxes.pdf
|
381
|
+
- spec/fixtures/nfe/lib/vol#render.pdf
|
382
|
+
- spec/fixtures/nfe/v2.00/custom_options.fixture.pdf
|
383
|
+
- spec/fixtures/nfe/v2.00/nfe_simples_nacional.xml
|
384
|
+
- spec/fixtures/nfe/v2.00/nfe_simples_nacional.xml.fixture.pdf
|
385
|
+
- spec/fixtures/nfe/v2.00/nfe_with_extra_volumes.xml
|
386
|
+
- spec/fixtures/nfe/v2.00/nfe_with_extra_volumes.xml.fixture.pdf
|
387
|
+
- spec/fixtures/nfe/v2.00/nfe_with_fci.xml
|
388
|
+
- spec/fixtures/nfe/v2.00/nfe_with_fci.xml.fixture.pdf
|
389
|
+
- spec/fixtures/nfe/v2.00/nfe_with_logo.xml
|
390
|
+
- spec/fixtures/nfe/v2.00/nfe_with_ns.xml
|
391
|
+
- spec/fixtures/nfe/v2.00/nfe_with_ns.xml.fixture.pdf
|
392
|
+
- spec/fixtures/nfe/v2.00/nfe_without_ns.xml
|
393
|
+
- spec/fixtures/nfe/v2.00/nfe_without_ns.xml.fixture.pdf
|
394
|
+
- spec/fixtures/nfe/v3.10/nfe_simples_nacional.xml
|
395
|
+
- spec/fixtures/nfe/v3.10/nfe_simples_nacional.xml.fixture.pdf
|
396
|
+
- spec/lib/cce_lib/barcode_spec.rb
|
397
|
+
- spec/lib/cce_lib/correction_spec.rb
|
398
|
+
- spec/lib/cce_lib/document_spec.rb
|
399
|
+
- spec/lib/cce_lib/footer_spec.rb
|
400
|
+
- spec/lib/cce_lib/header_spec.rb
|
401
|
+
- spec/lib/cce_lib/nfe_key_spec.rb
|
402
|
+
- spec/lib/cce_lib/protocol_spec.rb
|
403
|
+
- spec/lib/danfe_lib/cep_spec.rb
|
404
|
+
- spec/lib/danfe_lib/cst_spec.rb
|
405
|
+
- spec/lib/danfe_lib/dest_spec.rb
|
406
|
+
- spec/lib/danfe_lib/det_body_spec.rb
|
407
|
+
- spec/lib/danfe_lib/det_header_spec.rb
|
408
|
+
- spec/lib/danfe_lib/document_spec.rb
|
409
|
+
- spec/lib/danfe_lib/dup_spec.rb
|
410
|
+
- spec/lib/danfe_lib/emit_header_spec.rb
|
411
|
+
- spec/lib/danfe_lib/emit_spec.rb
|
412
|
+
- spec/lib/danfe_lib/helper_spec.rb
|
413
|
+
- spec/lib/danfe_lib/icmstot_spec.rb
|
414
|
+
- spec/lib/danfe_lib/infadic_spec.rb
|
415
|
+
- spec/lib/danfe_lib/issqn_spec.rb
|
416
|
+
- spec/lib/danfe_lib/logo_options_spec.rb
|
417
|
+
- spec/lib/danfe_lib/options_spec.rb
|
418
|
+
- spec/lib/danfe_lib/phone_spec.rb
|
419
|
+
- spec/lib/danfe_lib/plate_spec.rb
|
420
|
+
- spec/lib/danfe_lib/ticket_spec.rb
|
421
|
+
- spec/lib/danfe_lib/transp_spec.rb
|
422
|
+
- spec/lib/danfe_lib/vol_spec.rb
|
423
|
+
- spec/lib/danfe_lib/xml_spec.rb
|
424
|
+
- spec/lib/danfe_lib/xprod_spec.rb
|
425
|
+
- spec/spec_helper.rb
|
426
|
+
- spec/support/have_same_content_of.rb
|