br_danfe 0.5.1 → 0.5.2

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
2
  SHA1:
3
- metadata.gz: d2f5317a482b552f18b98288189e62ebb8543ced
4
- data.tar.gz: 998323f1c9d60ac76a97463116583a075bc195d8
3
+ metadata.gz: d394becb075780bdb77c14db3fa0020a2bbea472
4
+ data.tar.gz: 17dab17f8cc0f36dbddecea3ecda54212eaa0815
5
5
  SHA512:
6
- metadata.gz: 23fc0c24cabdb273990ad058525c42a79aa9eba5613c42a75f16dd8dc4c9a3256bece7da8cc12c89c454103f34a811eac31529ba53e4c831d842b667c0437f48
7
- data.tar.gz: 0c4a632de0771b144e63981b8bbd8f3e34498a94d0d51961eb3b9fcbda8b83f498ebabec1ef33756e36961f8589bb9d0c99c1597c06468f85f5070001350a2c3
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
@@ -1,5 +1,5 @@
1
1
  source "https://rubygems.org"
2
- ruby "2.2.2"
2
+ ruby "2.2.5"
3
3
 
4
4
  gemspec
5
5
 
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
- ### Installing dependencies
89
+ You needs to build docker container like above:
90
90
 
91
- You can install all necessaries dependencies using bunder like above:
91
+ $ docker-compose build
92
92
 
93
- $ bundle install
93
+ You can run all RSpec specs using:
94
+
95
+ $ docker-compose run br_danfe rspec
94
96
 
95
- ### Tests
96
97
 
97
- #### Automated tests with RSpec
98
+ ## Development - Without Docker
98
99
 
99
- You can run all specs using:
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
- 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.
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
- #### Code coverage
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
- #### Fake data for generating new fixtures
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
- ### Building and publishing
183
+ ## Building and publishing
175
184
 
176
185
  You can build using one of the above tasks
177
186
 
@@ -0,0 +1,8 @@
1
+ version: "2"
2
+ services:
3
+ br_danfe:
4
+ build: .
5
+ volumes:
6
+ - .:/src
7
+ environment:
8
+ - TZ=America/Sao_Paulo
@@ -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
- address_box
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
- def address_box
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, 4.22, "", @xml["emit/xNome"],
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.25, 5.42, "", address,
28
- { size: 8, align: :left, border: 0 }
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
@@ -3,6 +3,7 @@ module BrDanfe
3
3
  class Options < OpenStruct
4
4
  DEFAULTOPTIONS = {
5
5
  logo: "",
6
+ logo_dimensions: {},
6
7
  products_quantity_precision: 2,
7
8
  products_unit_price_precision: 2
8
9
  }
@@ -1,3 +1,3 @@
1
1
  module BrDanfe
2
- VERSION = "0.5.1"
2
+ VERSION = "0.5.2"
3
3
  end
@@ -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 746.0717 Td
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
- 94.126 714.788 Td
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
- 94.126 705.86 Td
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
- 94.126 696.932 Td
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
- 94.126 688.004 Td
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
- 56.6929 0.0 0.0 56.6929 28.3465 667.5591 cm
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
@@ -26,7 +26,7 @@ q
26
26
  S
27
27
 
28
28
  BT
29
- 61.5081 746.0717 Td
29
+ 61.5081 753.4418 Td
30
30
  /F2.0 12 Tf
31
31
  [<4e6f6d6520646f2052656d6574656e7465204c746461>] TJ
32
32
  ET
@@ -740,49 +740,49 @@ ET
740
740
  S
741
741
 
742
742
  BT
743
- 59.2881 746.0717 Td
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 732.2357 Td
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
- 94.126 714.788 Td
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
- 94.126 705.86 Td
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
- 94.126 696.932 Td
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
- 94.126 688.004 Td
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
- 56.6929 0.0 0.0 56.6929 28.3465 667.5591 cm
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 746.0717 Td
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 732.2357 Td
748
+ 74.5761 739.6058 Td
749
749
  /F2.0 12 Tf
750
750
  [<454c45545249434f53204c> 92 <5444> 35 <41>] TJ
751
751
  ET
@@ -2122,7 +2122,7 @@ ET
2122
2122
  S
2123
2123
 
2124
2124
  BT
2125
- 99.8241 746.0717 Td
2125
+ 99.8241 753.4418 Td
2126
2126
  /F2.0 12 Tf
2127
2127
  [<41> 55 <434d45205341>] TJ
2128
2128
  ET
@@ -414,14 +414,14 @@ ET
414
414
  S
415
415
 
416
416
  BT
417
- 59.2881 746.0717 Td
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 732.2357 Td
424
+ 74.5761 739.6058 Td
425
425
  /F2.0 12 Tf
426
426
  [<454c45545249434f53204c> 92 <5444> 35 <41>] TJ
427
427
  ET
@@ -2122,7 +2122,7 @@ ET
2122
2122
  S
2123
2123
 
2124
2124
  BT
2125
- 99.8241 746.0717 Td
2125
+ 99.8241 753.4418 Td
2126
2126
  /F2.0 12 Tf
2127
2127
  [<41> 55 <434d45205341>] TJ
2128
2128
  ET
@@ -819,7 +819,7 @@ ET
819
819
  S
820
820
 
821
821
  BT
822
- 99.8241 746.0717 Td
822
+ 99.8241 753.4418 Td
823
823
  /F2.0 12 Tf
824
824
  [<41> 55 <434d45205341>] TJ
825
825
  ET
@@ -1879,7 +1879,7 @@ ET
1879
1879
  S
1880
1880
 
1881
1881
  BT
1882
- 61.5081 746.0717 Td
1882
+ 61.5081 753.4418 Td
1883
1883
  /F2.0 12 Tf
1884
1884
  [<4e6f6d6520646f2052656d6574656e7465204c746461>] TJ
1885
1885
  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.1
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-08-22 00:00:00.000000000 Z
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