require 'spec_helper'
describe BrDanfe::DanfeLib::NfeLib::Issqn do
let(:base_dir) { './spec/fixtures/nfe/lib/' }
let(:output_pdf) { "#{base_dir}output.pdf" }
let(:pdf) { BrDanfe::DanfeLib::NfeLib::Document.new }
let(:xml) { BrDanfe::XML.new(xml_as_string) }
subject { described_class.new(pdf, xml) }
describe '#render' do
let(:xml_as_string) do
<<~XML
2345
#{issqn}
XML
end
let(:issqn) do
<<~XML
1.43
2.34
3.45
XML
end
before do
subject.render
File.delete(output_pdf) if File.exist?(output_pdf)
end
context 'with ISSQN' do
it 'renders xml to the pdf' do
expect(File.exist?(output_pdf)).to be_falsey
pdf.render_file output_pdf
expect("#{base_dir}issqn#render-with_issqn.pdf").to have_same_content_of file: output_pdf
end
context 'when there is only one issqn value' do
let(:issqn) { '1.43' }
it 'renders xml to the pdf' do
expect(File.exist?(output_pdf)).to be_falsey
pdf.render_file output_pdf
expect("#{base_dir}issqn#render-with_one_issqn_value.pdf").to have_same_content_of file: output_pdf
end
end
end
context 'without ISSQN' do
let(:issqn) { '' }
it 'renders xml to the pdf' do
expect(File.exist?(output_pdf)).to be_falsey
pdf.render_file output_pdf
expect("#{base_dir}issqn#render-without_issqn.pdf").to have_same_content_of file: output_pdf
end
end
end
end