rnfse 0.5.3 → 0.6.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 823d951d1fd9680cb3116a126dc6353489de7e24
4
- data.tar.gz: 63ab1b9d197b24ccebdfc94f5f96c832b2ed544f
3
+ metadata.gz: 3d3ab9632a4b088627df30fc724e454e27f4274a
4
+ data.tar.gz: 5f5edf8ee4af6cb1856c03891b712f65d67e125a
5
5
  SHA512:
6
- metadata.gz: 85554e57aa77471a9d0c2c69637da43d4b9bbd0f46ad1ca20f72916667597b8733e31dd94930b60236ba78f6acaf32c772cbbdf0af7da80318a6448673c87b74
7
- data.tar.gz: 6b73668b0e213da11d5f5c9032079ed1e999a492dfe49315594eac30e38d7ece059ed5cc70e88151a4212cdcce8def658ead9ef6a50efa70d552c206d68665dd
6
+ metadata.gz: cdc2e3cadd1c36b458d77657d224d49e63d20b9723dce53fd39ed0ff361ac74671348fb3a47a30df45e61fc5084190d161ee106e7423ec8a70be558e3718e4ef
7
+ data.tar.gz: 08ef6287aaa124463be2e8b7d200084ace1caecc5839f13ccad3076a66331bc7b468e853b731c8de576a9eee5998c033ff152c7854d3aa4b44a85b08dc741be0
@@ -33,7 +33,16 @@ module Rnfse::API::SpeedGov10
33
33
  end
34
34
 
35
35
  def consultar_lote_rps(hash = {})
36
- raise Rnfse::Error::NotImplemented
36
+ validate_options(hash)
37
+ header = xml_builder.build_header_xml()
38
+ parameters = xml_builder.build_consultar_lote_rps_envio_xml(hash)
39
+ response = self.soap_client.call(
40
+ :consultar_lote_rps,
41
+ soap_action: 'ConsultarLoteRps',
42
+ message_tag: 'nfse:ConsultarLoteRps',
43
+ message: { :'header!' => "<![CDATA[#{header}]]>",
44
+ :'parameters!' => "<![CDATA[#{parameters}]]>" })
45
+ parse_response(response)
37
46
  end
38
47
 
39
48
  def consultar_nfse_por_rps(hash = {})
@@ -55,7 +64,7 @@ module Rnfse::API::SpeedGov10
55
64
  header = xml_builder.build_header_xml()
56
65
  parameters = xml_builder.build_consultar_nfse_envio_xml(hash)
57
66
  response = self.soap_client.call(
58
- :consultar_situacao_lote_rps,
67
+ :consultar_nfse,
59
68
  soap_action: 'ConsultarNfse',
60
69
  message_tag: 'nfse:ConsultarNfse',
61
70
  message: { :'header!' => "<![CDATA[#{header}]]>",
@@ -1,3 +1,3 @@
1
1
  module Rnfse
2
- VERSION = '0.5.3'
2
+ VERSION = '0.6.0'
3
3
  end
@@ -83,6 +83,42 @@ module Rnfse::XMLBuilder::SpeedGov10
83
83
  }
84
84
  end
85
85
 
86
+ def build_consultar_situacao_lote_rps_envio_xml(hash = {})
87
+ hash = prepare_hash(hash)
88
+ hash = add_p_namespace(hash, /(Prestador|Protocolo)/)
89
+ inner_xml = ::Gyoku.xml(hash, key_converter: :none)
90
+ Nokogiri::XML::Builder.new(encoding: 'UTF-8') do |xml|
91
+ xml.send('p:ConsultarSituacaoLoteRpsEnvio'.to_sym, build_parameters_xmlns) do
92
+ xml << inner_xml
93
+ end
94
+ end.doc
95
+ end
96
+
97
+ def build_consultar_situacao_lote_rps_envio_xmlns()
98
+ {
99
+ 'xmlns:p' => "http://ws.speedgov.com.br/consultar_situacao_lote_rps_envio_v1.xsd",
100
+ 'xsi:schemaLocation' => "http://ws.speedgov.com.br/consultar_situacao_lote_rps_envio_v1.xsd"
101
+ }
102
+ end
103
+
104
+ def build_consultar_lote_rps_envio_xml(hash = {})
105
+ hash = prepare_hash(hash)
106
+ hash = add_p_namespace(hash, /(Prestador|Protocolo)/)
107
+ inner_xml = ::Gyoku.xml(hash, key_converter: :none)
108
+ Nokogiri::XML::Builder.new(encoding: 'UTF-8') do |xml|
109
+ xml.send('p:ConsultarLoteRpsEnvio'.to_sym, build_parameters_xmlns) do
110
+ xml << inner_xml
111
+ end
112
+ end.doc
113
+ end
114
+
115
+ def build_consultar_lote_rps_envio_xmlns()
116
+ {
117
+ 'xmlns:p' => "http://ws.speedgov.com.br/consultar_lote_rps_envio_v1.xsd",
118
+ 'xsi:schemaLocation' => "http://ws.speedgov.com.br/consultar_lote_rps_envio_v1.xsd"
119
+ }
120
+ end
121
+
86
122
  def build_parameters_xmlns
87
123
  {
88
124
  'xmlns:ds' => "http://www.w3.org/2000/09/xmldsig#",
@@ -231,8 +231,26 @@ describe Rnfse::API::SpeedGov10 do
231
231
  end
232
232
 
233
233
  describe '#consultar_lote_rps' do
234
- it { expect(client).to respond_to(:consultar_lote_rps) }
235
- it { expect { client.consultar_lote_rps() }.to raise_error(Rnfse::Error::NotImplemented) }
234
+ context 'quando parametros errados são passados,' do
235
+ it { expect{ client.consultar_lote_rps(bogus: :data) }.to raise_error(ArgumentError) }
236
+ end
237
+
238
+ it { expect(client).to respond_to(:consultar_lote_rps) }
239
+
240
+ subject do
241
+ VCR.use_cassette('speed_gov_1_0_consultar_lote_rps') do
242
+ client.consultar_lote_rps({
243
+ prestador: {
244
+ cnpj: '07.792.435/0009-12',
245
+ inscricao_municipal: '59274734'
246
+ },
247
+ protocolo: '717293e4-3601-4955-865c-5a022c2b5ff5'
248
+ })
249
+ end
250
+ end
251
+
252
+ it { should_not be_nil }
253
+ it { should be_kind_of(Hash) }
236
254
  end
237
255
 
238
256
  describe '#cancelar_nfse' do
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <p:ConsultarLoteRpsEnvio xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
3
+ xmlns:p="http://ws.speedgov.com.br/consultar_lote_rps_envio_v1.xsd"
4
+ xmlns:p1="http://ws.speedgov.com.br/tipos_v1.xsd"
5
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6
+ xsi:schemaLocation="http://ws.speedgov.com.br/consultar_lote_rps_envio_v1.xsd">
7
+ <p:Prestador>
8
+ <p1:Cnpj>07792435000912</p1:Cnpj>
9
+ <p1:InscricaoMunicipal>59274734</p1:InscricaoMunicipal>
10
+ </p:Prestador>
11
+ <p:Protocolo>3b2c9c94-4fb7-4858-a455-452009cc1fd0</p:Protocolo>
12
+ </p:ConsultarLoteRpsEnvio>
@@ -0,0 +1,76 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://speedgov.com.br/wsmod/Nfes
6
+ body:
7
+ encoding: UTF-8
8
+ string: |-
9
+ <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:nfse="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"><soapenv:Body><nfse:ConsultarLoteRps><header><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
10
+ <p:cabecalho xmlns:p="http://ws.speedgov.com.br/cabecalho_v1.xsd" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:p1="http://ws.speedgov.com.br/tipos_v1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" versao="1" xsi:schemaLocation="http://ws.speedgov.com.br/cabecalho_v1.xsd">
11
+ <versaoDados>1</versaoDados>
12
+ </p:cabecalho>
13
+ ]]></header><parameters><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
14
+ <p:ConsultarLoteRpsEnvio xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:p1="http://ws.speedgov.com.br/tipos_v1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://ws.speedgov.com.br/consultar_lote_rps_envio_v1.xsd" xsi:schemaLocation="http://ws.speedgov.com.br/consultar_lote_rps_envio_v1.xsd">
15
+ <p:Prestador>
16
+ <p1:Cnpj>07792435000912</p1:Cnpj>
17
+ <p1:InscricaoMunicipal>59274734</p1:InscricaoMunicipal>
18
+ </p:Prestador>
19
+ <p:Protocolo>717293e4-3601-4955-865c-5a022c2b5ff5</p:Protocolo>
20
+ </p:ConsultarLoteRpsEnvio>
21
+ ]]></parameters></nfse:ConsultarLoteRps></soapenv:Body></soapenv:Envelope>
22
+ headers:
23
+ Soapaction:
24
+ - '"ConsultarLoteRps"'
25
+ Content-Type:
26
+ - text/xml;charset=UTF-8
27
+ Content-Length:
28
+ - '1409'
29
+ Accept-Encoding:
30
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
31
+ Accept:
32
+ - "*/*"
33
+ User-Agent:
34
+ - Ruby
35
+ response:
36
+ status:
37
+ code: 200
38
+ message: OK
39
+ headers:
40
+ Cache-Control:
41
+ - no-cache="set-cookie"
42
+ Content-Type:
43
+ - text/xml;charset=utf-8
44
+ Date:
45
+ - Wed, 19 Nov 2014 21:19:32 GMT
46
+ Server:
47
+ - Apache-Coyote/1.1
48
+ Set-Cookie:
49
+ - AWSELB=33FDC97B088EC7D48E554EA7951916335FCF4DD333E9F4CF37B67BAA17D10F4435DE2C0093DB8C710ADD934016E3E395F23A28C3C0FFCDE212BD03A43B45B709B7813C9D87;PATH=/
50
+ Content-Length:
51
+ - '747'
52
+ Connection:
53
+ - keep-alive
54
+ body:
55
+ encoding: ASCII-8BIT
56
+ string: !binary |-
57
+ PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz48UzpFbnZl
58
+ bG9wZSB4bWxuczpTPSJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy9zb2Fw
59
+ L2VudmVsb3BlLyI+PFM6Qm9keT48bnMyOkNvbnN1bHRhckxvdGVScHNSZXNw
60
+ b25zZSB4bWxuczpuczI9Imh0dHA6Ly93d3cuYWJyYXNmLm9yZy5ici9BQlJB
61
+ U0YvYXJxdWl2b3MvbmZzZS54c2QiPjxyZXR1cm4+Jmx0Oz94bWwgdmVyc2lv
62
+ bj0mcXVvdDsxLjAmcXVvdDsgZW5jb2Rpbmc9JnF1b3Q7VVRGLTgmcXVvdDs/
63
+ Jmd0OwombHQ7Q29uc3VsdGFyTG90ZVJwc1Jlc3Bvc3RhJmd0OyZsdDtTdWNl
64
+ c3NvJmd0O2ZhbHNlJmx0Oy9TdWNlc3NvJmd0OyZsdDtEYXRhSG9yYSZndDsy
65
+ MDE0LTExLTE5VDA2OjE5OjMyJmx0Oy9EYXRhSG9yYSZndDsmbHQ7TWVuc2Fn
66
+ ZW1SZXRvcm5vJmd0OyZsdDtDb2RpZ28mZ3Q7RTE1NiZsdDsvQ29kaWdvJmd0
67
+ OyZsdDtNZW5zYWdlbSZndDtDTlBKIGRvIHByZXN0YWRvciBuw6NvIGF1dG9y
68
+ aXphZG8gYSBlbWl0aXIgTkZTLWUmbHQ7L01lbnNhZ2VtJmd0OyZsdDtDb3Jy
69
+ ZWNhbyZndDtTb2xpY2l0ZSBhdXRvcml6YcOnw6NvIHBhcmEgZW1pdGlyIE5G
70
+ Uy1lIHBhcmEgbyBDTlBKIGluZm9ybWFkby4mbHQ7L0NvcnJlY2FvJmd0OyZs
71
+ dDsvTWVuc2FnZW1SZXRvcm5vJmd0OyZsdDsvQ29uc3VsdGFyTG90ZVJwc1Jl
72
+ c3Bvc3RhJmd0OzwvcmV0dXJuPjwvbnMyOkNvbnN1bHRhckxvdGVScHNSZXNw
73
+ b25zZT48L1M6Qm9keT48L1M6RW52ZWxvcGU+
74
+ http_version:
75
+ recorded_at: Wed, 19 Nov 2014 21:19:32 GMT
76
+ recorded_with: VCR 2.9.3
@@ -218,6 +218,25 @@ describe Rnfse::XMLBuilder::IssNet10 do
218
218
  it { should be_kind_of(Nokogiri::XML::Document) }
219
219
  end
220
220
 
221
+ describe '#build_consultar_lote_rps_envio_xml' do
222
+ let(:xml) do
223
+ Nokogiri::XML(File.read(File.join(xml_path, 'consultar_lote_rps_envio.xml')))
224
+ end
225
+
226
+ subject do
227
+ builder.build_consultar_lote_rps_envio_xml({
228
+ prestador: {
229
+ cnpj: '07.792.435/0009-12',
230
+ inscricao_municipal: '59274734'
231
+ },
232
+ protocolo: '3b2c9c94-4fb7-4858-a455-452009cc1fd0'
233
+ })
234
+ end
235
+
236
+ it { should be_equivalent_to(xml) }
237
+ it { should be_kind_of(Nokogiri::XML::Document) }
238
+ end
239
+
221
240
  describe '#build_header_xml' do
222
241
  let(:xml) do
223
242
  Nokogiri::XML(File.read(File.join(xml_path, 'header.xml')))
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rnfse
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.3
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Renan Mendes Carvalho
@@ -409,6 +409,7 @@ files:
409
409
  - spec/fixtures/iss_net_1_0/consultar_situacao_lote_rps_envio.xml
410
410
  - spec/fixtures/iss_net_1_0/enviar_lote_rps_envio.xml
411
411
  - spec/fixtures/key.pem
412
+ - spec/fixtures/speed_gov_1_0/consultar_lote_rps_envio.xml
412
413
  - spec/fixtures/speed_gov_1_0/consultar_nfse_envio.xml
413
414
  - spec/fixtures/speed_gov_1_0/consultar_nfse_rps_envio.xml
414
415
  - spec/fixtures/speed_gov_1_0/consultar_situacao_lote_rps_envio.xml
@@ -420,6 +421,7 @@ files:
420
421
  - spec/fixtures/vcr_cassettes/iss_net_1_0_consultar_nfse_por_rps.yml
421
422
  - spec/fixtures/vcr_cassettes/iss_net_1_0_consultar_situacao_lote_rps.yml
422
423
  - spec/fixtures/vcr_cassettes/iss_net_1_0_recepcionar_lote_rps.yml
424
+ - spec/fixtures/vcr_cassettes/speed_gov_1_0_consultar_lote_rps.yml
423
425
  - spec/fixtures/vcr_cassettes/speed_gov_1_0_consultar_nfse.yml
424
426
  - spec/fixtures/vcr_cassettes/speed_gov_1_0_consultar_nfse_por_rps.yml
425
427
  - spec/fixtures/vcr_cassettes/speed_gov_1_0_consultar_situacao_lote_rps.yml
@@ -486,6 +488,7 @@ test_files:
486
488
  - spec/fixtures/iss_net_1_0/consultar_situacao_lote_rps_envio.xml
487
489
  - spec/fixtures/iss_net_1_0/enviar_lote_rps_envio.xml
488
490
  - spec/fixtures/key.pem
491
+ - spec/fixtures/speed_gov_1_0/consultar_lote_rps_envio.xml
489
492
  - spec/fixtures/speed_gov_1_0/consultar_nfse_envio.xml
490
493
  - spec/fixtures/speed_gov_1_0/consultar_nfse_rps_envio.xml
491
494
  - spec/fixtures/speed_gov_1_0/consultar_situacao_lote_rps_envio.xml
@@ -497,6 +500,7 @@ test_files:
497
500
  - spec/fixtures/vcr_cassettes/iss_net_1_0_consultar_nfse_por_rps.yml
498
501
  - spec/fixtures/vcr_cassettes/iss_net_1_0_consultar_situacao_lote_rps.yml
499
502
  - spec/fixtures/vcr_cassettes/iss_net_1_0_recepcionar_lote_rps.yml
503
+ - spec/fixtures/vcr_cassettes/speed_gov_1_0_consultar_lote_rps.yml
500
504
  - spec/fixtures/vcr_cassettes/speed_gov_1_0_consultar_nfse.yml
501
505
  - spec/fixtures/vcr_cassettes/speed_gov_1_0_consultar_nfse_por_rps.yml
502
506
  - spec/fixtures/vcr_cassettes/speed_gov_1_0_consultar_situacao_lote_rps.yml