rnfse 0.0.2 → 0.0.3

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: 0c710203581f39483d2dd311ce33f436a55504d0
4
- data.tar.gz: c5c816935ef898a3c6ccd774f9e02ec23a1bd51e
3
+ metadata.gz: 57bacd30d14f244a516b1450692d899e4a6c9405
4
+ data.tar.gz: fbc533a265e6f06a51a307b1f209ee0910e183c0
5
5
  SHA512:
6
- metadata.gz: 3b0f935d1fab6b018e00645f430de4fd234867cf8d819ec08ed279762f2fe3c5c93764f637febfc601eaeace8e23198088e1024df7554d1826d3c49feb77c88b
7
- data.tar.gz: 2141412f4b9822883f5d0718afc120d9c72cd28c0508645893e2b7730539797463ffdd10000cc22c9ae3c79aee841ebca3ee06844e518e519a33420d807eb390
6
+ metadata.gz: 59501202f33fc9ebc1be6caef1d394dad00cab1ca6dbaf7dc2206aabf7cf884593152d060bce7ba677aa1f8f3f847b36f27e5d689e28bc9e478054ea3e664e73
7
+ data.tar.gz: adcbf584b8962aec828bc70784bc41709a020aa554b13b31b07ddc25917e60c0cf69669c9014cd726bcd91211e17c00a8fbfb32263993d5990c92170a4e45e89
data/CHANGELOG.md CHANGED
@@ -1,4 +1,7 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.0.2 @ 2014-07-11
4
+ * BUGFIX ao usar o provedor ISS.net utilizar a api iss_net_1_0
5
+
3
6
  ## 0.0.1 @ 2014-07-11
4
7
  * Suporte para a action recepcionar_lote_rps do provedor ISS.net
data/lib/rnfse.rb CHANGED
@@ -12,6 +12,7 @@ require 'rnfse/version'
12
12
  require 'rnfse/configuration'
13
13
  require 'rnfse/hash'
14
14
  require 'rnfse/string'
15
+ require 'rnfse/call_chain'
15
16
 
16
17
  require 'rnfse/api'
17
18
  require 'rnfse/api/abrasf_1_0'
@@ -6,32 +6,55 @@ module Rnfse::API::Abrasf10
6
6
  module ClassMethods
7
7
 
8
8
  def recepcionar_lote_rps(hash = {})
9
- file = get_filepath('recepcionar_lote_rps.json')
10
- json = Rnfse::Hash.camelize_and_symbolize_keys(hash, false).to_json
11
- errors = JSON::Validator.fully_validate(file, json)
12
- if errors.empty?
13
- xml = xml_builder.build_recepcionar_lote_rps_xml(hash)
14
- xml.sign!(certificate: File.read(self.certificate), key: File.read(self.key))
15
- response = self.soap_client.call(
16
- :recepcionar_lote_rps,
17
- soap_action: 'RecepcionarLoteRps',
18
- message_tag: 'RecepcionarLoteRps',
19
- message: { :'xml!' => "<![CDATA[#{xml}]]>" })
20
- parse_response(response)
21
- else
22
- raise ArgumentError, errors, caller
23
- end
9
+ validate(hash)
10
+ xml = xml_builder.build_recepcionar_lote_rps_xml(hash)
11
+ xml.sign!(certificate: File.read(self.certificate), key: File.read(self.key))
12
+ response = self.soap_client.call(
13
+ :recepcionar_lote_rps,
14
+ soap_action: 'RecepcionarLoteRps',
15
+ message_tag: 'RecepcionarLoteRps',
16
+ message: { :'xml!' => "<![CDATA[#{xml}]]>" })
17
+ parse_response(response)
18
+ end
19
+
20
+ def consultar_lote_rps(hash = {})
21
+ validate(hash)
22
+ xml = xml_builder.build_consultar_lote_rps_xml(hash)
23
+ response = self.soap_client.call(
24
+ :consultar_lote_rps,
25
+ soap_action: 'ConsultarLoteRps',
26
+ message_tag: 'ConsultarLoteRps',
27
+ message: { :'xml!' => "<![CDATA[#{xml}]]>" })
28
+ parse_response(response)
29
+ end
30
+
31
+ def consultar_situacao_lote_rps(hash = {})
32
+ validate(hash)
33
+ xml = xml_builder.build_consultar_situacao_lote_rps_xml(hash)
34
+ response = self.soap_client.call(
35
+ :consultar_situacao_lote_rps,
36
+ soap_action: 'ConsultarSituacaoLoteRps',
37
+ message_tag: 'ConsultarSituacaoLoteRps',
38
+ message: { :'xml!' => "<![CDATA[#{xml}]]>" })
39
+ parse_response(response)
24
40
  end
25
41
 
26
42
  private
27
43
 
44
+ def validate(hash)
45
+ file = get_filepath("#{Rnfse::CallChain.caller_method}.json")
46
+ json = Rnfse::Hash.camelize_and_symbolize_keys(hash, false).to_json
47
+ errors = JSON::Validator.fully_validate(file, json)
48
+ raise ArgumentError, errors, caller unless errors.empty?
49
+ end
50
+
28
51
  def parse_response(response)
29
52
  hash = Rnfse::Hash.new(response.body)
30
- lote_rps_response = hash[:recepcionar_lote_rps_response]
31
- if !lote_rps_response.empty? and lote_rps_response[:recepcionar_lote_rps_result]
32
- xml = hash[:recepcionar_lote_rps_response][:recepcionar_lote_rps_result]
33
- hash[:recepcionar_lote_rps_response][:recepcionar_lote_rps_result] =
34
- Nori.new.parse(xml)
53
+ response_key = hash.keys.select { |k| k =~ /response$/ }.first
54
+ result_key = hash[response_key].keys.select { |k| k =~ /result$/ }.first
55
+ if !hash[response_key].nil? and hash[response_key]
56
+ xml = hash[response_key][result_key]
57
+ hash[response_key][result_key] = Nori.new.parse(xml)
35
58
  end
36
59
  hash.underscore_and_symbolize_keys
37
60
  end
@@ -0,0 +1,13 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "title": "Consulta de Lote de RPS",
4
+ "description": "Esse serviço permite ao contribuinte obter as NFS-e que foram geradas a partir do Lote de RPS enviado, quando o processamento ocorrer sem problemas; ou obter a lista de erros e/ou inconsistências encontradas nos RPS. Na validação do lote, devem ser retornados todos os erros verificados. Excepcionalmente, havendo uma excessiva quantidade de erros, poderá ser definido um limitador para a quantidade de erros retornados.",
5
+
6
+ "type": "object",
7
+ "properties": {
8
+ "prestador": { "$ref": "definitions.json#/identificacaoPrestador"},
9
+ "protocolo": { "$ref": "definitions.json#/numeroProtocolo"}
10
+ },
11
+ "required": ["prestador", "protocolo"],
12
+ "additionalProperties": false
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "title": "Consulta de Situação de Lote de RPS",
4
+ "description": "Esse serviço efetua a consulta da situação de um lote de RPS já enviado.",
5
+
6
+ "type": "object",
7
+ "properties": {
8
+ "prestador": { "$ref": "definitions.json#/identificacaoPrestador"},
9
+ "protocolo": { "$ref": "definitions.json#/numeroProtocolo"}
10
+ },
11
+ "required": ["prestador", "protocolo"],
12
+ "additionalProperties": false
13
+ }
@@ -192,6 +192,7 @@
192
192
  },
193
193
  "numeroProtocolo": {
194
194
  "description": "Número do protocolo de recebimento do RPS",
195
+ "type": "string",
195
196
  "maxLength": 50
196
197
  },
197
198
  "situacaoLoteRps": {
@@ -275,13 +276,26 @@
275
276
  },
276
277
  "identificacaoPrestador": {
277
278
  "description": "Representa dados para identificação do prestador de serviço",
278
- "type": "object",
279
- "properties": {
280
- "cnpj": { "$ref": "#/cnpj" },
281
- "inscricaoMunicipal": { "$ref": "#/inscricaoMunicipal" }
282
- },
283
- "required": ["cnpj"],
284
- "additionalProperties": false
279
+ "oneOf": [
280
+ {
281
+ "type": "object",
282
+ "properties": {
283
+ "inscricaoMunicipal": { "$ref": "#/inscricaoMunicipal" },
284
+ "cnpj": { "$ref": "#/cnpj" }
285
+ },
286
+ "required": ["cnpj"],
287
+ "additionalProperties": false
288
+ },
289
+ {
290
+ "type": "object",
291
+ "properties": {
292
+ "inscricaoMunicipal": { "$ref": "#/inscricaoMunicipal" },
293
+ "cpf": { "$ref": "#/cpf" }
294
+ },
295
+ "required": ["cpf"],
296
+ "additionalProperties": false
297
+ }
298
+ ]
285
299
  },
286
300
  "dadosTomador": {
287
301
  "description": "Representa dados do tomador de serviço",
@@ -364,6 +378,7 @@
364
378
  },
365
379
  "dadosConstrucaoCivil": {
366
380
  "description": "Representa dados para identificação de intermediário do serviço",
381
+ "type": "object",
367
382
  "properties": {
368
383
  "codigoObra": { "$ref": "#/codigoObra" },
369
384
  "art": { "$ref": "#/art" }
@@ -3,4 +3,16 @@ require 'json-schema'
3
3
 
4
4
  module Rnfse::API::IssNet10
5
5
  include Rnfse::API::Abrasf10
6
+
7
+ def consultar_situacao_lote_rps(hash = {})
8
+ validate(hash)
9
+ xml = xml_builder.build_consultar_situacao_lote_rps_xml(hash)
10
+ response = self.soap_client.call(
11
+ :consultar_situacao_lote_rps,
12
+ soap_action: 'ConsultarSituacaoLoteRPS',
13
+ message_tag: 'ConsultarSituacaoLoteRPS',
14
+ message: { :'xml!' => "<![CDATA[#{xml}]]>" })
15
+ parse_response(response)
16
+ end
17
+
6
18
  end
@@ -0,0 +1,22 @@
1
+ module Rnfse
2
+
3
+ class CallChain
4
+ def self.caller_method(depth=1)
5
+ parse_caller(caller(depth+1).first).last
6
+ end
7
+
8
+ private
9
+
10
+ # Stolen from ActionMailer, where this was used but was not made
11
+ # reusable
12
+ def self.parse_caller(at)
13
+ if /^(.+?):(\d+)(?::in `(.*)')?/ =~ at
14
+ file = Regexp.last_match[1]
15
+ line = Regexp.last_match[2].to_i
16
+ method = Regexp.last_match[3]
17
+ [file, line, method]
18
+ end
19
+ end
20
+ end
21
+
22
+ end
data/lib/rnfse/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Rnfse
2
- VERSION = '0.0.2'
2
+ VERSION = '0.0.3'
3
3
  end
@@ -5,13 +5,25 @@ module Rnfse::XMLBuilder::Abrasf10
5
5
  module ClassMethods
6
6
 
7
7
  def build_recepcionar_lote_rps_xml(hash = {})
8
- hash = prepare_hash(hash)
9
- inner_xml = ::Gyoku.xml(hash, key_converter: :none)
10
- xml_builder('EnviarLoteRpsEnvio', inner_xml).doc
8
+ build_xml('EnviarLoteRpsEnvio', hash)
9
+ end
10
+
11
+ def build_consultar_lote_rps_xml(hash = {})
12
+ build_xml('ConsultarLoteRpsEnvio', hash)
13
+ end
14
+
15
+ def build_consultar_situacao_lote_rps_xml(hash = {})
16
+ build_xml('ConsultarSituacaoLoteRpsEnvio', hash)
11
17
  end
12
18
 
13
19
  private
14
20
 
21
+ def build_xml(wrapper, hash = {})
22
+ hash = prepare_hash(hash)
23
+ inner_xml = ::Gyoku.xml(hash, key_converter: :none)
24
+ xml_builder(wrapper, inner_xml).doc
25
+ end
26
+
15
27
  # prepara um hash para ser convertido a xml com o Gyoku
16
28
  def prepare_hash(hash)
17
29
  hash = camelize_hash(hash)
@@ -53,29 +65,56 @@ module Rnfse::XMLBuilder::Abrasf10
53
65
  def wrap_rps(hash)
54
66
  hash[:LoteRps][:ListaRps] = {
55
67
  :Rps => { :InfRps => hash[:LoteRps][:ListaRps] }
56
- }
68
+ } if hash[:LoteRps]
57
69
  hash
58
70
  end
59
71
 
60
- # adiciona o namespace tc nas tags dentro de loteRps
72
+ # adiciona o namespace tc nas tags dentro de loteRps ou prestador
61
73
  def add_tc_namespace(hash)
62
- hash[:LoteRps] = Rnfse::Hash.transform_keys(hash[:LoteRps]) { |key| "tc:#{key}".to_sym }
74
+ tag = case
75
+ when !hash[:LoteRps].nil? then :LoteRps
76
+ when !hash[:Prestador].nil? then :Prestador
77
+ end
78
+ if hash[tag]
79
+ hash[tag] = Rnfse::Hash.transform_keys(hash[tag]) { |key| "tc:#{key}".to_sym }
80
+ end
63
81
  hash
64
82
  end
65
83
 
66
- def xmlns
67
- 'http://www.abrasf.org.br/servico_enviar_lote_rps_envio.xsd'
68
- end
69
-
70
84
  # namespace dos tipos complexos
71
85
  def xmlns_tc
72
86
  'http://www.abrasf.org.br/tipos_complexos.xsd'
73
87
  end
74
88
 
89
+ # namespaces do xml recepcionar_lote_rps
90
+ def build_recepcionar_lote_rps_xmlns
91
+ {
92
+ 'xmlns' => 'http://www.abrasf.org.br/servico_enviar_lote_rps_envio.xsd',
93
+ 'xmlns:tc' => xmlns_tc
94
+ }
95
+ end
96
+
97
+ # namespaces do xml consultar_lote_rps
98
+ def build_consultar_lote_rps_xmlns
99
+ {
100
+ 'xmlns' => 'http://www.abrasf.org.br/servico_consultar_lote_rps_envio.xsd',
101
+ 'xmlns:tc' => xmlns_tc
102
+ }
103
+ end
104
+
105
+ # namespaces do xml consultar_situacao_lote_rps
106
+ def build_consultar_situacao_lote_rps_xmlns
107
+ {
108
+ 'xmlns' => 'http://www.abrasf.org.br/servico_consultar_situacao_lote_rps_envio.xsd',
109
+ 'xmlns:tc' => xmlns_tc
110
+ }
111
+ end
112
+
75
113
  # instancia o builder a ser utilizado na geracao do xml
76
- def xml_builder(root, inner_xml)
114
+ def xml_builder(root, inner_xml, xmlns = {})
115
+ xmlns = self.send("#{Rnfse::CallChain.caller_method(2)}ns") if xmlns.empty?
77
116
  Nokogiri::XML::Builder.new(encoding: 'utf-8') do |xml|
78
- xml.send(root.to_sym, 'xmlns' => xmlns, 'xmlns:tc' => xmlns_tc) do
117
+ xml.send(root.to_sym, xmlns) do
79
118
  xml << inner_xml
80
119
  end
81
120
  end
@@ -59,12 +59,39 @@ module Rnfse::XMLBuilder::IssNet10
59
59
  end
60
60
  end
61
61
 
62
- def xmlns
63
- 'http://www.issnetonline.com.br/webserviceabrasf/vsd/servico_enviar_lote_rps_envio.xsd'
64
- end
65
-
62
+ # namespace dos tipos complexos
66
63
  def xmlns_tc
67
64
  'http://www.issnetonline.com.br/webserviceabrasf/vsd/tipos_complexos.xsd'
68
65
  end
69
66
 
67
+ # namespace dos tipos simples
68
+ def xmlns_ts
69
+ 'http://www.issnetonline.com.br/webserviceabrasf/vsd/tipos_simples.xsd'
70
+ end
71
+
72
+ # namespaces do xml recepcionar_lote_rps
73
+ def build_recepcionar_lote_rps_xmlns
74
+ {
75
+ 'xmlns' => 'http://www.issnetonline.com.br/webserviceabrasf/vsd/servico_enviar_lote_rps_envio.xsd',
76
+ 'xmlns:tc' => xmlns_tc
77
+ }
78
+ end
79
+
80
+ # namespaces do xml consultar_situacao_lote_rps
81
+ def build_consultar_situacao_lote_rps_xmlns
82
+ {
83
+ 'xmlns' => 'http://www.issnetonline.com.br/webserviceabrasf/vsd/servico_consultar_situacao_lote_rps_envio.xsd',
84
+ 'xmlns:tc' => xmlns_tc
85
+ }
86
+ end
87
+
88
+ # namespaces do xml consultar_lote_rps
89
+ def build_consultar_lote_rps_xmlns
90
+ {
91
+ 'xmlns' => 'http://www.issnetonline.com.br/webserviceabrasf/vsd/servico_consultar_lote_rps_envio.xsd',
92
+ 'xmlns:tc' => xmlns_tc,
93
+ 'xmlns:ts' => xmlns_ts
94
+ }
95
+ end
96
+
70
97
  end
@@ -5,6 +5,7 @@ describe Rnfse::API::IssNet10 do
5
5
  let(:certificate) { File.join($ROOT, 'spec', 'fixtures', 'certificate.pem') }
6
6
  let(:key) { File.join($ROOT, 'spec', 'fixtures', 'key.pem') }
7
7
 
8
+
8
9
  let(:client) do
9
10
  Rnfse::API.new(padrao: :iss_net_1_0,
10
11
  namespace: 'http://www.issnetonline.com.br/webservice/nfd',
@@ -27,7 +28,7 @@ describe Rnfse::API::IssNet10 do
27
28
  lote_rps: {
28
29
  numero_lote: 1,
29
30
  cnpj: "14.576.582/0001-63",
30
- inscricao_municipal: "812005",
31
+ inscricao_municipal: "124762",
31
32
  quantidade_rps: 1,
32
33
  lista_rps: [
33
34
  {
@@ -62,7 +63,7 @@ describe Rnfse::API::IssNet10 do
62
63
  codigo_municipio: 999
63
64
  },
64
65
  prestador: {
65
- cnpj: "11.006.269/0001-00",
66
+ cnpj: "14.576.582/0001-63",
66
67
  inscricao_municipal: "124762"
67
68
  },
68
69
  tomador: {
@@ -91,9 +92,56 @@ describe Rnfse::API::IssNet10 do
91
92
  it { should be_kind_of(Hash) }
92
93
  end
93
94
 
95
+ describe '#consultar_lote_rps' do
96
+ context 'quando parametros errados são passados,' do
97
+ it { expect{ client.consultar_lote_rps(bogus: :data) }.to raise_error(ArgumentError) }
98
+ end
99
+
100
+ it { expect(client).to respond_to(:consultar_lote_rps) }
101
+
102
+ subject do
103
+ VCR.use_cassette('iss_net_1_0_consultar_lote_rps') do
104
+ client.consultar_lote_rps({
105
+ prestador: {
106
+ cpf: "301.463.748-35",
107
+ inscricao_municipal: "124762"
108
+ },
109
+ protocolo: "db1c3e91-6aea-4450-a3fc-5b6a7fba7dc7"
110
+ })
111
+ end
112
+ end
113
+
114
+ it { should_not be_nil }
115
+ it { should be_kind_of(Hash) }
116
+ end
117
+
118
+ describe '#consultar_situacao_lote_rps' do
119
+ context 'quando parametros errados são passados,' do
120
+ it { expect{ client.consultar_situacao_lote_rps(bogus: :data) }.to raise_error(ArgumentError) }
121
+ end
122
+
123
+ it { expect(client).to respond_to(:consultar_situacao_lote_rps) }
124
+
125
+ subject do
126
+ VCR.use_cassette('iss_net_1_0_consultar_situacao_lote_rps') do
127
+ client.consultar_situacao_lote_rps({
128
+ prestador: {
129
+ cnpj: "14.576.582/0001-63",
130
+ inscricao_municipal: "124762"
131
+ },
132
+ protocolo: "79be6415-5562-4728-b6cf-e9388b804c76"
133
+ })
134
+ end
135
+ end
136
+
137
+ it { should_not be_nil }
138
+ it { should be_kind_of(Hash) }
139
+ end
140
+
94
141
  describe '#cancelar_nfse'
95
142
  describe '#consultar_nfse_por_rps'
96
- describe '#consulta_situacao_lote_rps'
143
+ describe '#consultar_nfse'
97
144
  describe '#consultar_url_visualizacao_nfse'
98
145
  describe '#consultar_url_visualizacao_nfse_serie'
146
+ describe '#consulta_situacao_lote_rps'
99
147
  end
@@ -0,0 +1,10 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <ConsultarLoteRpsEnvio
3
+ xmlns="http://www.abrasf.org.br/servico_consultar_lote_rps_envio.xsd"
4
+ xmlns:tc="http://www.abrasf.org.br/tipos_complexos.xsd">
5
+ <Prestador>
6
+ <tc:Cpf>97004731120</tc:Cpf>
7
+ <tc:InscricaoMunicipal>812005</tc:InscricaoMunicipal>
8
+ </Prestador>
9
+ <Protocolo>5afd8f42-cc1e-4657-9249-8fbc3f133ebf</Protocolo>
10
+ </ConsultarLoteRpsEnvio>
@@ -0,0 +1,10 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <ConsultarSituacaoLoteRpsEnvio
3
+ xmlns="http://www.abrasf.org.br/servico_consultar_situacao_lote_rps_envio.xsd"
4
+ xmlns:tc="http://www.abrasf.org.br/tipos_complexos.xsd">
5
+ <Prestador>
6
+ <tc:Cnpj>14576582000163</tc:Cnpj>
7
+ <tc:InscricaoMunicipal>124762</tc:InscricaoMunicipal>
8
+ </Prestador>
9
+ <Protocolo>db1c3e91-6aea-4450-a3fc-5b6a7fba7dc7</Protocolo>
10
+ </ConsultarSituacaoLoteRpsEnvio>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <ConsultarSituacaoLoteRpsEnvio xmlns="http://www.abrasf.org.br/servico_consultar_situacao_lote_rps_envio.xsd" xmlns:tc="http://www.abrasf.org.br/tipos_complexos.xsd">
3
+ <Prestador>
4
+ <tc:Cnpj>14576582000163</tc:Cnpj>
5
+ <tc:InscricaoMunicipal>124762</tc:InscricaoMunicipal>
6
+ </Prestador>
7
+ <Protocolo>db1c3e91-6aea-4450-a3fc-5b6a7fba7dc7</Protocolo>
8
+ </ConsultarSituacaoLoteRpsEnvio>
@@ -0,0 +1,13 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <ConsultarLoteRpsEnvio
3
+ xmlns="http://www.issnetonline.com.br/webserviceabrasf/vsd/servico_consultar_lote_rps_envio.xsd"
4
+ xmlns:ts="http://www.issnetonline.com.br/webserviceabrasf/vsd/tipos_simples.xsd"
5
+ xmlns:tc="http://www.issnetonline.com.br/webserviceabrasf/vsd/tipos_complexos.xsd">
6
+ <Prestador>
7
+ <tc:CpfCnpj>
8
+ <tc:Cpf>97004731120</tc:Cpf>
9
+ </tc:CpfCnpj>
10
+ <tc:InscricaoMunicipal>812005</tc:InscricaoMunicipal>
11
+ </Prestador>
12
+ <Protocolo>5afd8f42-cc1e-4657-9249-8fbc3f133ebf</Protocolo>
13
+ </ConsultarLoteRpsEnvio>
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <ConsultarSituacaoLoteRpsEnvio
3
+ xmlns="http://www.issnetonline.com.br/webserviceabrasf/vsd/servico_consultar_situacao_lote_rps_envio.xsd"
4
+ xmlns:tc="http://www.issnetonline.com.br/webserviceabrasf/vsd/tipos_complexos.xsd">
5
+ <Prestador>
6
+ <tc:CpfCnpj>
7
+ <tc:Cnpj>14576582000163</tc:Cnpj>
8
+ </tc:CpfCnpj>
9
+ <tc:InscricaoMunicipal>124762</tc:InscricaoMunicipal>
10
+ </Prestador>
11
+ <Protocolo>db1c3e91-6aea-4450-a3fc-5b6a7fba7dc7</Protocolo>
12
+ </ConsultarSituacaoLoteRpsEnvio>
@@ -0,0 +1,85 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://www.issnetonline.com.br/webserviceabrasf/homologacao/servicos.asmx
6
+ body:
7
+ encoding: UTF-8
8
+ string: |-
9
+ <?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.issnetonline.com.br/webservice/nfd" xmlns:soap="http://www.w3.org/2003/05/soap-envelope"><soap:Body><ConsultarLoteRps><xml><![CDATA[<?xml version="1.0" encoding="utf-8"?>
10
+ <ConsultarLoteRpsEnvio xmlns="http://www.issnetonline.com.br/webserviceabrasf/vsd/servico_consultar_lote_rps_envio.xsd" xmlns:tc="http://www.issnetonline.com.br/webserviceabrasf/vsd/tipos_complexos.xsd" xmlns:ts="http://www.issnetonline.com.br/webserviceabrasf/vsd/tipos_simples.xsd">
11
+ <Prestador>
12
+ <tc:CpfCnpj>
13
+ <tc:Cpf>30146374835</tc:Cpf>
14
+ </tc:CpfCnpj>
15
+ <tc:InscricaoMunicipal>124762</tc:InscricaoMunicipal>
16
+ </Prestador>
17
+ <Protocolo>db1c3e91-6aea-4450-a3fc-5b6a7fba7dc7</Protocolo>
18
+ </ConsultarLoteRpsEnvio>
19
+ ]]></xml></ConsultarLoteRps></soap:Body></soap:Envelope>
20
+ headers:
21
+ Soapaction:
22
+ - '"ConsultarLoteRps"'
23
+ Content-Type:
24
+ - application/soap+xml;charset=UTF-8
25
+ Content-Length:
26
+ - '926'
27
+ Accept-Encoding:
28
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
29
+ Accept:
30
+ - "*/*"
31
+ User-Agent:
32
+ - Ruby
33
+ response:
34
+ status:
35
+ code: 200
36
+ message: OK
37
+ headers:
38
+ Date:
39
+ - Fri, 18 Jul 2014 05:56:20 GMT
40
+ Server:
41
+ - Microsoft-IIS/6.0
42
+ X-Powered-By:
43
+ - ASP.NET
44
+ X-Aspnet-Version:
45
+ - 2.0.50727
46
+ Cache-Control:
47
+ - private, max-age=0
48
+ Content-Type:
49
+ - application/soap+xml; charset=utf-8
50
+ Content-Length:
51
+ - '1221'
52
+ body:
53
+ encoding: ASCII-8BIT
54
+ string: !binary |-
55
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c29hcDpF
56
+ bnZlbG9wZSB4bWxuczpzb2FwPSJodHRwOi8vd3d3LnczLm9yZy8yMDAzLzA1
57
+ L3NvYXAtZW52ZWxvcGUiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcv
58
+ MjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOnhzZD0iaHR0cDovL3d3
59
+ dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPjxzb2FwOkJvZHk+PENvbnN1bHRh
60
+ ckxvdGVScHNSZXNwb25zZSB4bWxucz0iaHR0cDovL3d3dy5pc3NuZXRvbmxp
61
+ bmUuY29tLmJyL3dlYnNlcnZpY2UvbmZkIj48Q29uc3VsdGFyTG90ZVJwc1Jl
62
+ c3VsdD4mbHQ7P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtOCI/
63
+ Jmd0Ow0KJmx0O0NvbnN1bHRhckxvdGVScHNSZXNwb3N0YSB4bWxucz0iaHR0
64
+ cDovL3d3dy5pc3NuZXRvbmxpbmUuY29tLmJyL3dlYnNlcnZpY2VhYnJhc2Yv
65
+ dnNkL3NlcnZpY29fY29uc3VsdGFyX2xvdGVfcnBzX3Jlc3Bvc3RhLnhzZCIg
66
+ eG1sbnM6dGM9Imh0dHA6Ly93d3cuaXNzbmV0b25saW5lLmNvbS5ici93ZWJz
67
+ ZXJ2aWNlYWJyYXNmL3ZzZC90aXBvc19jb21wbGV4b3MueHNkIiZndDsNCiAg
68
+ Jmx0O0xpc3RhTWVuc2FnZW1SZXRvcm5vJmd0Ow0KICAgICZsdDtNZW5zYWdl
69
+ bVJldG9ybm8mZ3Q7DQogICAgICAmbHQ7dGM6SWRlbnRpZmljYWNhb1JwcyZn
70
+ dDsNCiAgICAgICAgJmx0O3RjOk51bWVybyZndDsxNSZsdDsvdGM6TnVtZXJv
71
+ Jmd0Ow0KICAgICAgICAmbHQ7dGM6U2VyaWUmZ3Q7OCZsdDsvdGM6U2VyaWUm
72
+ Z3Q7DQogICAgICAgICZsdDt0YzpUaXBvJmd0OzEmbHQ7L3RjOlRpcG8mZ3Q7
73
+ DQogICAgICAmbHQ7L3RjOklkZW50aWZpY2FjYW9ScHMmZ3Q7DQogICAgICAm
74
+ bHQ7dGM6Q29kaWdvJmd0O0wwMTgmbHQ7L3RjOkNvZGlnbyZndDsNCiAgICAg
75
+ ICZsdDt0YzpNZW5zYWdlbSZndDsgQSBlbXByZXNhIG7Do28gZXN0w6EgaGFi
76
+ aWxpdGFkYSBubyBhbWJpZW50ZSBkZSBpbnRlZ3Jhw6fDo28uICBOw7ptZXJv
77
+ IGRvIFJQUyBlbSBxdWUgb2NvcnJldSBvIGVycm86IDE1Jmx0Oy90YzpNZW5z
78
+ YWdlbSZndDsNCiAgICAmbHQ7L01lbnNhZ2VtUmV0b3JubyZndDsNCiAgJmx0
79
+ Oy9MaXN0YU1lbnNhZ2VtUmV0b3JubyZndDsNCiZsdDsvQ29uc3VsdGFyTG90
80
+ ZVJwc1Jlc3Bvc3RhJmd0OzwvQ29uc3VsdGFyTG90ZVJwc1Jlc3VsdD48L0Nv
81
+ bnN1bHRhckxvdGVScHNSZXNwb25zZT48L3NvYXA6Qm9keT48L3NvYXA6RW52
82
+ ZWxvcGU+
83
+ http_version:
84
+ recorded_at: Fri, 18 Jul 2014 05:56:21 GMT
85
+ recorded_with: VCR 2.9.2
@@ -0,0 +1,62 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://www.issnetonline.com.br/webserviceabrasf/homologacao/servicos.asmx
6
+ body:
7
+ encoding: UTF-8
8
+ string: |-
9
+ <?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.issnetonline.com.br/webservice/nfd" xmlns:soap="http://www.w3.org/2003/05/soap-envelope"><soap:Body><ConsultarSituacaoLoteRPS><xml><![CDATA[<?xml version="1.0" encoding="utf-8"?>
10
+ <ConsultarSituacaoLoteRpsEnvio xmlns="http://www.issnetonline.com.br/webserviceabrasf/vsd/servico_consultar_situacao_lote_rps_envio.xsd" xmlns:tc="http://www.issnetonline.com.br/webserviceabrasf/vsd/tipos_complexos.xsd">
11
+ <Prestador>
12
+ <tc:CpfCnpj>
13
+ <tc:Cnpj>14576582000163</tc:Cnpj>
14
+ </tc:CpfCnpj>
15
+ <tc:InscricaoMunicipal>124762</tc:InscricaoMunicipal>
16
+ </Prestador>
17
+ <Protocolo>79be6415-5562-4728-b6cf-e9388b804c76</Protocolo>
18
+ </ConsultarSituacaoLoteRpsEnvio>
19
+ ]]></xml></ConsultarSituacaoLoteRPS></soap:Body></soap:Envelope>
20
+ headers:
21
+ Soapaction:
22
+ - '"ConsultarSituacaoLoteRPS"'
23
+ Content-Type:
24
+ - application/soap+xml;charset=UTF-8
25
+ Content-Length:
26
+ - '891'
27
+ Accept-Encoding:
28
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
29
+ Accept:
30
+ - "*/*"
31
+ User-Agent:
32
+ - Ruby
33
+ response:
34
+ status:
35
+ code: 200
36
+ message: OK
37
+ headers:
38
+ Date:
39
+ - Fri, 18 Jul 2014 06:33:38 GMT
40
+ Server:
41
+ - Microsoft-IIS/6.0
42
+ X-Powered-By:
43
+ - ASP.NET
44
+ X-Aspnet-Version:
45
+ - 2.0.50727
46
+ Cache-Control:
47
+ - private, max-age=0
48
+ Content-Type:
49
+ - application/soap+xml; charset=utf-8
50
+ Content-Length:
51
+ - '751'
52
+ body:
53
+ encoding: UTF-8
54
+ string: "<?xml version=\"1.0\" encoding=\"utf-8\"?><soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\"
55
+ xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"><soap:Body><ConsultarSituacaoLoteRPSResponse
56
+ xmlns=\"http://www.issnetonline.com.br/webservice/nfd\"><ConsultarSituacaoLoteRPSResult>&lt;?xml
57
+ version=\"1.0\" encoding=\"utf-8\"?&gt;\r\n&lt;ConsultarSituacaoLoteRpsResposta
58
+ xmlns=\"http://www.issnetonline.com.br/webserviceabrasf/vsd/servico_consultar_situacao_lote_rps_resposta.xsd\"&gt;\r\n
59
+ \ &lt;NumeroLote&gt;23&lt;/NumeroLote&gt;\r\n &lt;Situacao&gt;4&lt;/Situacao&gt;\r\n&lt;/ConsultarSituacaoLoteRpsResposta&gt;</ConsultarSituacaoLoteRPSResult></ConsultarSituacaoLoteRPSResponse></soap:Body></soap:Envelope>"
60
+ http_version:
61
+ recorded_at: Fri, 18 Jul 2014 06:33:38 GMT
62
+ recorded_with: VCR 2.9.2
@@ -13,7 +13,7 @@ http_interactions:
13
13
  <tc:CpfCnpj>
14
14
  <tc:Cnpj>14576582000163</tc:Cnpj>
15
15
  </tc:CpfCnpj>
16
- <tc:InscricaoMunicipal>812005</tc:InscricaoMunicipal>
16
+ <tc:InscricaoMunicipal>124762</tc:InscricaoMunicipal>
17
17
  <tc:QuantidadeRps>1</tc:QuantidadeRps>
18
18
  <tc:ListaRps>
19
19
  <tc:Rps>
@@ -53,7 +53,7 @@ http_interactions:
53
53
  </tc:Servico>
54
54
  <tc:Prestador>
55
55
  <tc:CpfCnpj>
56
- <tc:Cnpj>11006269000100</tc:Cnpj>
56
+ <tc:Cnpj>14576582000163</tc:Cnpj>
57
57
  </tc:CpfCnpj>
58
58
  <tc:InscricaoMunicipal>124762</tc:InscricaoMunicipal>
59
59
  </tc:Prestador>
@@ -87,15 +87,15 @@ http_interactions:
87
87
  <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
88
88
  </Transforms>
89
89
  <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
90
- <DigestValue>wBKH90N6CSrgbPo134OwY7xPFX8=</DigestValue>
90
+ <DigestValue>8AXJf2h4iLh6Q5wv9ELO2WRmH9s=</DigestValue>
91
91
  </Reference>
92
92
  </SignedInfo>
93
- <SignatureValue>EkvAUi/aZQ8CjfDr3Iys33HJ0Gkd2Iu0vVGQ3OL68OX6XDHAZhVF++GNYqfvla5j
94
- z9jFsTLUetNGyMwQZXB//0RPff3nL4SEQ1qypM0SECu1aTtRlra2crCjv12wghde
95
- pa0C//DXGkqX52LOsIbDZtHf0l+56JMaIVS9YW79aQfJq0XxthvjMH68TGClb9r+
96
- 3kKvMI6qy8ym21niEJiuoW5Q4u1CXmNfk/Q30ZRlp97+bXR0xi7DxI1V9di5lRMh
97
- 77Ih/2tH2cPkDZp/0/H2WNc90tVMYyZnzBKdKG+nIMPXUeGbQKEO9c8knrUHhA17
98
- FPMQAPRpWlxE0XVnJb0mDA==</SignatureValue>
93
+ <SignatureValue>kQXJoLSYxFZriX113XrVKICb1DTI3rHHgtXEUKab08Nc3DMNyyUu07YYlpEVvXEE
94
+ mkCxDNXOLzDCRLC7+jaKwEIAlOX3G8ikD9GQFqX+j7AT3J99zMULmst8g09ERGJB
95
+ FFmM7SH/R1rdgfavUyWWRQjjOXe9t7z3hyUF+V0CJR2zO/q/gJqz2K4ZBRvf5am6
96
+ P7/sSNsq6y/u7d34iZlcEK16KVtNz+eLa5hvJKQaQMyF3ri5H79sVpaWEIbBSbST
97
+ q2GyP2neYzU4CFfcuTBO7OBWa0B54+BjAERslQRqaG9btc+7KXkQaVA6bJJstIZx
98
+ L/dlRyxXXJKSCQbcIlmUyA==</SignatureValue>
99
99
  <KeyInfo>
100
100
  <X509Data>
101
101
  <X509Certificate>MIIH7jCCBdagAwIBAgIIebwmN9dD4mUwDQYJKoZIhvcNAQELBQAwTDELMAkGA1UE
@@ -165,7 +165,7 @@ http_interactions:
165
165
  message: OK
166
166
  headers:
167
167
  Date:
168
- - Fri, 11 Jul 2014 07:16:20 GMT
168
+ - Fri, 11 Jul 2014 08:56:56 GMT
169
169
  Server:
170
170
  - Microsoft-IIS/6.0
171
171
  X-Powered-By:
@@ -177,38 +177,15 @@ http_interactions:
177
177
  Content-Type:
178
178
  - application/soap+xml; charset=utf-8
179
179
  Content-Length:
180
- - '1256'
180
+ - '799'
181
181
  body:
182
- encoding: ASCII-8BIT
183
- string: !binary |-
184
- PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c29hcDpF
185
- bnZlbG9wZSB4bWxuczpzb2FwPSJodHRwOi8vd3d3LnczLm9yZy8yMDAzLzA1
186
- L3NvYXAtZW52ZWxvcGUiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcv
187
- MjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOnhzZD0iaHR0cDovL3d3
188
- dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiPjxzb2FwOkJvZHk+PFJlY2VwY2lv
189
- bmFyTG90ZVJwc1Jlc3BvbnNlIHhtbG5zPSJodHRwOi8vd3d3Lmlzc25ldG9u
190
- bGluZS5jb20uYnIvd2Vic2VydmljZS9uZmQiPjxSZWNlcGNpb25hckxvdGVS
191
- cHNSZXN1bHQ+Jmx0Oz94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRm
192
- LTgiPyZndDsNCiZsdDtFbnZpYXJMb3RlUnBzUmVzcG9zdGEgeG1sbnM9Imh0
193
- dHA6Ly93d3cuaXNzbmV0b25saW5lLmNvbS5ici93ZWJzZXJ2aWNlYWJyYXNm
194
- L3ZzZC9zZXJ2aWNvX2Vudmlhcl9sb3RlX3Jwc19yZXNwb3N0YS54c2QiJmd0
195
- Ow0KICAmbHQ7TGlzdGFNZW5zYWdlbVJldG9ybm8mZ3Q7DQogICAgJmx0O01l
196
- bnNhZ2VtUmV0b3JubyZndDsNCiAgICAgICZsdDtDb2RpZ28geG1sbnM9Imh0
197
- dHA6Ly93d3cuaXNzbmV0b25saW5lLmNvbS5ici93ZWJzZXJ2aWNlYWJyYXNm
198
- L3ZzZC90aXBvc19jb21wbGV4b3MueHNkIiZndDtFMTU3Jmx0Oy9Db2RpZ28m
199
- Z3Q7DQogICAgICAmbHQ7TWVuc2FnZW0geG1sbnM9Imh0dHA6Ly93d3cuaXNz
200
- bmV0b25saW5lLmNvbS5ici93ZWJzZXJ2aWNlYWJyYXNmL3ZzZC90aXBvc19j
201
- b21wbGV4b3MueHNkIiZndDsgVXN1w6FyaW8gbsOjbyBlc3TDoSBhdXRvcml6
202
- YWRvIGEgdXRpbGl6YXIgZXNzZSBzZXJ2acOnbyBwYXJhIGVzc2UgY29udHJp
203
- YnVpbnRlLiAmbHQ7L01lbnNhZ2VtJmd0Ow0KICAgICAgJmx0O0NvcnJlY2Fv
204
- IHhtbG5zPSJodHRwOi8vd3d3Lmlzc25ldG9ubGluZS5jb20uYnIvd2Vic2Vy
205
- dmljZWFicmFzZi92c2QvdGlwb3NfY29tcGxleG9zLnhzZCImZ3Q7U29saWNp
206
- dGUgYW8gY29udHJpYnVpbnRlIGF1dG9yaXphw6fDo28gcGFyYSB1dGlsaXph
207
- ciBvIHNlcnZpw6dvIGVtIHNldSBub21lLiZsdDsvQ29ycmVjYW8mZ3Q7DQog
208
- ICAgJmx0Oy9NZW5zYWdlbVJldG9ybm8mZ3Q7DQogICZsdDsvTGlzdGFNZW5z
209
- YWdlbVJldG9ybm8mZ3Q7DQombHQ7L0VudmlhckxvdGVScHNSZXNwb3N0YSZn
210
- dDs8L1JlY2VwY2lvbmFyTG90ZVJwc1Jlc3VsdD48L1JlY2VwY2lvbmFyTG90
211
- ZVJwc1Jlc3BvbnNlPjwvc29hcDpCb2R5Pjwvc29hcDpFbnZlbG9wZT4=
182
+ encoding: UTF-8
183
+ string: "<?xml version=\"1.0\" encoding=\"utf-8\"?><soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\"
184
+ xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"><soap:Body><RecepcionarLoteRpsResponse
185
+ xmlns=\"http://www.issnetonline.com.br/webservice/nfd\"><RecepcionarLoteRpsResult>&lt;?xml
186
+ version=\"1.0\" encoding=\"utf-8\"?&gt;\r\n&lt;EnviarLoteRpsResposta xmlns=\"http://www.issnetonline.com.br/webserviceabrasf/vsd/servico_enviar_lote_rps_resposta.xsd\"&gt;\r\n
187
+ \ &lt;NumeroLote&gt;1&lt;/NumeroLote&gt;\r\n &lt;DataRecebimento&gt;2014-07-11T05:56:56&lt;/DataRecebimento&gt;\r\n
188
+ \ &lt;Protocolo&gt;db1c3e91-6aea-4450-a3fc-5b6a7fba7dc7&lt;/Protocolo&gt;\r\n&lt;/EnviarLoteRpsResposta&gt;</RecepcionarLoteRpsResult></RecepcionarLoteRpsResponse></soap:Body></soap:Envelope>"
212
189
  http_version:
213
- recorded_at: Fri, 11 Jul 2014 07:16:22 GMT
190
+ recorded_at: Fri, 11 Jul 2014 08:56:58 GMT
214
191
  recorded_with: VCR 2.9.2
@@ -5,14 +5,51 @@ describe Rnfse::XMLBuilder::Abrasf10 do
5
5
 
6
6
  let(:builder) { Rnfse::XMLBuilder.new(padrao: :abrasf_1_0) }
7
7
 
8
+
9
+ describe '#build_consultar_situacao_lote_rps_xml' do
10
+ let(:xml) do
11
+ Nokogiri::XML(File.read(File.join($ROOT, 'spec', 'fixtures', 'abrasf_1_0',
12
+ 'consultar_situacao_lote_rps_envio.xml')))
13
+ end
14
+
15
+ subject do
16
+ builder.build_consultar_situacao_lote_rps_xml({
17
+ prestador: {
18
+ cnpj: "14.576.582/0001-63",
19
+ inscricao_municipal: "124762"
20
+ },
21
+ protocolo: "db1c3e91-6aea-4450-a3fc-5b6a7fba7dc7"
22
+ })
23
+ end
24
+
25
+ it { should be_equivalent_to(xml) }
26
+ it { should be_kind_of(Nokogiri::XML::Document) }
27
+ end
28
+
29
+ describe "#build_consultar_lote_rps_xml" do
30
+ let(:xml) do
31
+ Nokogiri::XML(File.read(File.join($ROOT, 'spec', 'fixtures', 'abrasf_1_0',
32
+ 'consultar_lote_rps_envio.xml')))
33
+ end
34
+
35
+ subject do
36
+ builder.build_consultar_lote_rps_xml({
37
+ prestador: {
38
+ cpf: "970.047.311-20",
39
+ inscricao_municipal: "812005"
40
+ },
41
+ protocolo: "5afd8f42-cc1e-4657-9249-8fbc3f133ebf"
42
+ })
43
+ end
44
+
45
+ it { should be_equivalent_to(xml) }
46
+ it { should be_kind_of(Nokogiri::XML::Document) }
47
+ end
48
+
8
49
  describe "#build_recepcionar_lote_rps_xml" do
9
50
  let(:xml) do
10
- Nokogiri::XML(
11
- File.read(
12
- File.join($ROOT, 'spec', 'fixtures', 'abrasf_1_0',
13
- 'enviar_lote_rps_envio.xml')
14
- )
15
- )
51
+ Nokogiri::XML(File.read(File.join($ROOT, 'spec', 'fixtures', 'abrasf_1_0',
52
+ 'enviar_lote_rps_envio.xml')))
16
53
  end
17
54
 
18
55
  subject do
@@ -5,14 +5,52 @@ describe Rnfse::XMLBuilder::IssNet10 do
5
5
 
6
6
  let(:builder) { Rnfse::XMLBuilder.new(padrao: :iss_net_1_0) }
7
7
 
8
+ describe '#build_consultar_situacao_lote_rps_xml' do
9
+ let(:xml) do
10
+ Nokogiri::XML(File.read(File.join($ROOT, 'spec', 'fixtures', 'iss_net_1_0',
11
+ 'consultar_situacao_lote_rps_envio.xml')))
12
+ end
13
+
14
+ subject do
15
+ builder.build_consultar_situacao_lote_rps_xml({
16
+ prestador: {
17
+ cnpj: "14.576.582/0001-63",
18
+ inscricao_municipal: "124762"
19
+ },
20
+ protocolo: "db1c3e91-6aea-4450-a3fc-5b6a7fba7dc7"
21
+ })
22
+ end
23
+
24
+ it { should be_equivalent_to(xml) }
25
+ it { should be_kind_of(Nokogiri::XML::Document) }
26
+ end
27
+
28
+
29
+ describe "#build_consultar_lote_rps_xml" do
30
+ let(:xml) do
31
+ Nokogiri::XML(File.read(File.join($ROOT, 'spec', 'fixtures', 'iss_net_1_0',
32
+ 'consultar_lote_rps_envio.xml')))
33
+ end
34
+
35
+ subject do
36
+ builder.build_consultar_lote_rps_xml({
37
+ prestador: {
38
+ cpf: "970.047.311-20",
39
+ inscricao_municipal: "812005"
40
+ },
41
+ protocolo: "5afd8f42-cc1e-4657-9249-8fbc3f133ebf"
42
+ })
43
+ end
44
+
45
+ it { should be_equivalent_to(xml) }
46
+ it { should be_kind_of(Nokogiri::XML::Document) }
47
+ end
48
+
49
+
8
50
  describe "#build_recepcionar_lote_rps_xml" do
9
51
  let(:xml) do
10
- Nokogiri::XML(
11
- File.read(
12
- File.join($ROOT, 'spec', 'fixtures', 'iss_net_1_0',
13
- 'enviar_lote_rps_envio.xml')
14
- )
15
- )
52
+ Nokogiri::XML(File.read(File.join($ROOT, 'spec', 'fixtures', 'iss_net_1_0',
53
+ 'enviar_lote_rps_envio.xml')))
16
54
  end
17
55
 
18
56
  subject do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rnfse
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Renan Mendes Carvalho
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-11 00:00:00.000000000 Z
11
+ date: 2014-07-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -369,9 +369,12 @@ files:
369
369
  - lib/rnfse.rb
370
370
  - lib/rnfse/api.rb
371
371
  - lib/rnfse/api/abrasf_1_0.rb
372
+ - lib/rnfse/api/abrasf_1_0/consultar_lote_rps.json
373
+ - lib/rnfse/api/abrasf_1_0/consultar_situacao_lote_rps.json
372
374
  - lib/rnfse/api/abrasf_1_0/definitions.json
373
375
  - lib/rnfse/api/abrasf_1_0/recepcionar_lote_rps.json
374
376
  - lib/rnfse/api/iss_net_1_0.rb
377
+ - lib/rnfse/call_chain.rb
375
378
  - lib/rnfse/configuration.rb
376
379
  - lib/rnfse/core.rb
377
380
  - lib/rnfse/hash.rb
@@ -386,11 +389,18 @@ files:
386
389
  - spec/api/iss_net_1_0_spec.rb
387
390
  - spec/api_spec.rb
388
391
  - spec/core_spec.rb
392
+ - spec/fixtures/abrasf_1_0/consultar_lote_rps_envio.xml
393
+ - spec/fixtures/abrasf_1_0/consultar_situacao_lote_rps_envio.xml
389
394
  - spec/fixtures/abrasf_1_0/enviar_lote_rps_envio.xml
390
395
  - spec/fixtures/abrasf_1_0/nfse.xsd
396
+ - spec/fixtures/abrasf_1_0/teste.xml
391
397
  - spec/fixtures/certificate.pem
398
+ - spec/fixtures/iss_net_1_0/consultar_lote_rps_envio.xml
399
+ - spec/fixtures/iss_net_1_0/consultar_situacao_lote_rps_envio.xml
392
400
  - spec/fixtures/iss_net_1_0/enviar_lote_rps_envio.xml
393
401
  - spec/fixtures/key.pem
402
+ - spec/fixtures/vcr_cassettes/iss_net_1_0_consultar_lote_rps.yml
403
+ - spec/fixtures/vcr_cassettes/iss_net_1_0_consultar_situacao_lote_rps.yml
394
404
  - spec/fixtures/vcr_cassettes/iss_net_1_0_recepcionar_lote_rps.yml
395
405
  - spec/hash_spec.rb
396
406
  - spec/spec_helper.rb
@@ -431,11 +441,18 @@ test_files:
431
441
  - spec/api/iss_net_1_0_spec.rb
432
442
  - spec/api_spec.rb
433
443
  - spec/core_spec.rb
444
+ - spec/fixtures/abrasf_1_0/consultar_lote_rps_envio.xml
445
+ - spec/fixtures/abrasf_1_0/consultar_situacao_lote_rps_envio.xml
434
446
  - spec/fixtures/abrasf_1_0/enviar_lote_rps_envio.xml
435
447
  - spec/fixtures/abrasf_1_0/nfse.xsd
448
+ - spec/fixtures/abrasf_1_0/teste.xml
436
449
  - spec/fixtures/certificate.pem
450
+ - spec/fixtures/iss_net_1_0/consultar_lote_rps_envio.xml
451
+ - spec/fixtures/iss_net_1_0/consultar_situacao_lote_rps_envio.xml
437
452
  - spec/fixtures/iss_net_1_0/enviar_lote_rps_envio.xml
438
453
  - spec/fixtures/key.pem
454
+ - spec/fixtures/vcr_cassettes/iss_net_1_0_consultar_lote_rps.yml
455
+ - spec/fixtures/vcr_cassettes/iss_net_1_0_consultar_situacao_lote_rps.yml
439
456
  - spec/fixtures/vcr_cassettes/iss_net_1_0_recepcionar_lote_rps.yml
440
457
  - spec/hash_spec.rb
441
458
  - spec/spec_helper.rb