nfse-carioca 0.2.6 → 0.2.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (21) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/lib/nfse_carioca.rb +4 -0
  4. data/lib/nfse_carioca/gerar_nfse.rb +4 -0
  5. data/lib/nfse_carioca/gerar_nfse_xml.rb +121 -85
  6. data/lib/nfse_carioca/version.rb +1 -1
  7. data/nfse_carioca.gemspec +3 -2
  8. data/spec/fixtures/vcr_cassettes/NFSeCarioca_CancelarNFSe/_execute_/when_NFSeCarioca_rps_number_does_not_exist/returns_error_message.yml +4 -4
  9. data/spec/fixtures/vcr_cassettes/NFSeCarioca_CancelarNFSe/_execute_/when_NFSeCarioca_rps_number_does_not_exist/returns_false.yml +4 -4
  10. data/spec/fixtures/vcr_cassettes/NFSeCarioca_CancelarNFSe/_execute_/when_NFSeCarioca_rps_number_exist/returns_false.yml +8 -8
  11. data/spec/fixtures/vcr_cassettes/NFSeCarioca_GerarNFSe/_call/when_NFSeCarioca_rps_number_already_exist/responds_with_error.yml +14 -66
  12. data/spec/fixtures/vcr_cassettes/NFSeCarioca_GerarNFSe/_call/when_NFSeCarioca_rps_number_already_exist/responds_with_error_code_E10_.yml +248 -0
  13. data/spec/fixtures/vcr_cassettes/NFSeCarioca_GerarNFSe/_call/when_NFSeCarioca_rps_number_already_exist/responds_with_error_message_E10_.yml +248 -0
  14. data/spec/fixtures/vcr_cassettes/NFSeCarioca_GerarNFSe/_call/when_NFSeCarioca_rps_number_already_exist/responds_with_message_error_E10_.yml +14 -66
  15. data/spec/fixtures/vcr_cassettes/NFSeCarioca_GerarNFSe/_call/when_NFSeCarioca_rps_number_does_not_exist_yet/generates_NFSeCarioca.yml +22 -74
  16. data/spec/fixtures/vcr_cassettes/NFSeCarioca_GerarNFSe/_call/when_NfseCarioca_has_only_the_minimum_values/generates_NfseCarioca.yml +20 -59
  17. data/spec/lib/nfse_carioca/cancelar_nfse_spec.rb +1 -9
  18. data/spec/lib/nfse_carioca/gerar_nfse_spec.rb +58 -52
  19. data/spec/spec_helper.rb +17 -0
  20. metadata +23 -8
  21. data/spec/support/helpers.rb +0 -21
@@ -31,7 +31,7 @@ http_interactions:
31
31
  X-Powered-By:
32
32
  - ASP.NET
33
33
  Date:
34
- - Thu, 05 Feb 2015 19:59:03 GMT
34
+ - Mon, 13 Apr 2015 20:45:43 GMT
35
35
  Content-Length:
36
36
  - '1338'
37
37
  body:
@@ -169,80 +169,28 @@ http_interactions:
169
169
  \ <soap:address location=\"https://homologacao.notacarioca.rio.gov.br/WSNacional/nfse.asmx\"
170
170
  />\r\n </wsdl:port>\r\n </wsdl:service>\r\n</wsdl:definitions>"
171
171
  http_version:
172
- recorded_at: Thu, 05 Feb 2015 19:59:02 GMT
172
+ recorded_at: Mon, 13 Apr 2015 20:45:42 GMT
173
173
  - request:
174
174
  method: post
175
175
  uri: https://homologacao.notacarioca.rio.gov.br/WSNacional/nfse.asmx
176
176
  body:
177
177
  encoding: UTF-8
178
- string: |-
179
- <?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://notacarioca.rio.gov.br/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><GerarNfseRequest><inputXML>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
180
- &lt;GerarNfseEnvio xmlns=&quot;http://notacarioca.rio.gov.br/WSNacional/XSD/1/nfse_pcrj_v01.xsd&quot;&gt;
181
- &lt;Rps&gt;
182
- &lt;InfRps xmlns=&quot;http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd&quot; Id=&quot;1030&quot;&gt;
183
- &lt;IdentificacaoRps&gt;
184
- &lt;Numero&gt;1030&lt;/Numero&gt;
185
- &lt;Serie&gt;A&lt;/Serie&gt;
186
- &lt;Tipo&gt;1&lt;/Tipo&gt;
187
- &lt;/IdentificacaoRps&gt;
188
- &lt;DataEmissao&gt;2015-02-05T17:59:02&lt;/DataEmissao&gt;
189
- &lt;NaturezaOperacao&gt;1&lt;/NaturezaOperacao&gt;
190
- &lt;OptanteSimplesNacional&gt;1&lt;/OptanteSimplesNacional&gt;
191
- &lt;IncentivadorCultural&gt;2&lt;/IncentivadorCultural&gt;
192
- &lt;Status&gt;1&lt;/Status&gt;
193
- &lt;Servico&gt;
194
- &lt;Valores&gt;
195
- &lt;ValorServicos&gt;12.0&lt;/ValorServicos&gt;
196
- &lt;ValorPis&gt;0&lt;/ValorPis&gt;
197
- &lt;ValorCofins&gt;0&lt;/ValorCofins&gt;
198
- &lt;ValorInss&gt;0&lt;/ValorInss&gt;
199
- &lt;ValorIr&gt;0&lt;/ValorIr&gt;
200
- &lt;ValorCsll&gt;0&lt;/ValorCsll&gt;
201
- &lt;IssRetido&gt;2&lt;/IssRetido&gt;
202
- &lt;ValorIss&gt;0&lt;/ValorIss&gt;
203
- &lt;Aliquota&gt;0&lt;/Aliquota&gt;
204
- &lt;/Valores&gt;
205
- &lt;ItemListaServico&gt;0105&lt;/ItemListaServico&gt;
206
- &lt;CodigoTributacaoMunicipio&gt;010501&lt;/CodigoTributacaoMunicipio&gt;
207
- &lt;Discriminacao&gt;Venda do Serviço XYZ.&lt;/Discriminacao&gt;
208
- &lt;CodigoMunicipio&gt;3304557&lt;/CodigoMunicipio&gt;
209
- &lt;/Servico&gt;
210
- &lt;Prestador&gt;
211
- &lt;Cnpj&gt;12390095000186&lt;/Cnpj&gt;
212
- &lt;InscricaoMunicipal&gt;04807995&lt;/InscricaoMunicipal&gt;
213
- &lt;/Prestador&gt;
214
- &lt;Tomador&gt;
215
- &lt;IdentificacaoTomador&gt;
216
- &lt;CpfCnpj&gt;
217
- &lt;Cnpj&gt;98924674000187&lt;/Cnpj&gt;
218
- &lt;/CpfCnpj&gt;
219
- &lt;/IdentificacaoTomador&gt;
220
- &lt;RazaoSocial&gt;XPTO Tecnologia Ltda.&lt;/RazaoSocial&gt;
221
- &lt;Endereco&gt;
222
- &lt;Endereco&gt;Rua qualquer nome&lt;/Endereco&gt;
223
- &lt;Numero&gt;33&lt;/Numero&gt;
224
- &lt;Complemento&gt;Sala 1&lt;/Complemento&gt;
225
- &lt;Bairro&gt;Seu bairro&lt;/Bairro&gt;
226
- &lt;CodigoMunicipio&gt;3550308&lt;/CodigoMunicipio&gt;
227
- &lt;Uf&gt;SP&lt;/Uf&gt;
228
- &lt;Cep&gt;22255777&lt;/Cep&gt;
229
- &lt;/Endereco&gt;
230
- &lt;Contato&gt;
231
- &lt;Telefone&gt;2222-2222&lt;/Telefone&gt;
232
- &lt;Email&gt;customer@example.com&lt;/Email&gt;
233
- &lt;/Contato&gt;
234
- &lt;/Tomador&gt;
235
- &lt;/InfRps&gt;
236
- &lt;/Rps&gt;
237
- &lt;/GerarNfseEnvio&gt;
238
- </inputXML></GerarNfseRequest></soap:Body></soap:Envelope>
178
+ string: <?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
179
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://notacarioca.rio.gov.br/"
180
+ xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><GerarNfseRequest><inputXML>&lt;GerarNfseEnvio
181
+ xmlns=&quot;http://notacarioca.rio.gov.br/WSNacional/XSD/1/nfse_pcrj_v01.xsd&quot;&gt;&lt;Rps&gt;&lt;InfRps
182
+ xmlns=&quot;http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd&quot; Id=&quot;1030&quot;&gt;&lt;IdentificacaoRps&gt;&lt;Numero&gt;1030&lt;/Numero&gt;&lt;Serie&gt;A&lt;/Serie&gt;&lt;Tipo&gt;1&lt;/Tipo&gt;&lt;/IdentificacaoRps&gt;&lt;DataEmissao&gt;2015-04-13T17:45:36&lt;/DataEmissao&gt;&lt;NaturezaOperacao&gt;1&lt;/NaturezaOperacao&gt;&lt;OptanteSimplesNacional&gt;1&lt;/OptanteSimplesNacional&gt;&lt;IncentivadorCultural&gt;2&lt;/IncentivadorCultural&gt;&lt;Status&gt;1&lt;/Status&gt;&lt;Servico&gt;&lt;Valores&gt;&lt;ValorServicos&gt;12.0&lt;/ValorServicos&gt;&lt;ValorPis&gt;0&lt;/ValorPis&gt;&lt;ValorCofins&gt;0&lt;/ValorCofins&gt;&lt;ValorInss&gt;0&lt;/ValorInss&gt;&lt;ValorIr&gt;0&lt;/ValorIr&gt;&lt;ValorCsll&gt;0&lt;/ValorCsll&gt;&lt;IssRetido&gt;2&lt;/IssRetido&gt;&lt;ValorIss&gt;0&lt;/ValorIss&gt;&lt;Aliquota&gt;0&lt;/Aliquota&gt;&lt;/Valores&gt;&lt;ItemListaServico&gt;0105&lt;/ItemListaServico&gt;&lt;CodigoTributacaoMunicipio&gt;010501&lt;/CodigoTributacaoMunicipio&gt;&lt;Discriminacao&gt;Venda
183
+ do Serviço XYZ.&lt;/Discriminacao&gt;&lt;CodigoMunicipio&gt;3304557&lt;/CodigoMunicipio&gt;&lt;/Servico&gt;&lt;Prestador&gt;&lt;Cnpj&gt;12390095000186&lt;/Cnpj&gt;&lt;InscricaoMunicipal&gt;04807995&lt;/InscricaoMunicipal&gt;&lt;/Prestador&gt;&lt;Tomador&gt;&lt;IdentificacaoTomador&gt;&lt;CpfCnpj&gt;&lt;Cnpj&gt;98924674000187&lt;/Cnpj&gt;&lt;/CpfCnpj&gt;&lt;/IdentificacaoTomador&gt;&lt;RazaoSocial&gt;XPTO
184
+ Tecnologia Ltda.&lt;/RazaoSocial&gt;&lt;Endereco&gt;&lt;Endereco&gt;Rua qualquer
185
+ nome&lt;/Endereco&gt;&lt;Numero&gt;33&lt;/Numero&gt;&lt;Complemento&gt;Sala
186
+ 1&lt;/Complemento&gt;&lt;Bairro&gt;Seu bairro&lt;/Bairro&gt;&lt;CodigoMunicipio&gt;3550308&lt;/CodigoMunicipio&gt;&lt;Uf&gt;SP&lt;/Uf&gt;&lt;Cep&gt;22255777&lt;/Cep&gt;&lt;/Endereco&gt;&lt;Contato&gt;&lt;Telefone&gt;2222-2222&lt;/Telefone&gt;&lt;Email&gt;customer@example.com&lt;/Email&gt;&lt;/Contato&gt;&lt;/Tomador&gt;&lt;/InfRps&gt;&lt;/Rps&gt;&lt;/GerarNfseEnvio&gt;</inputXML></GerarNfseRequest></soap:Body></soap:Envelope>
239
187
  headers:
240
188
  Soapaction:
241
189
  - '"http://notacarioca.rio.gov.br/GerarNfse"'
242
190
  Content-Type:
243
191
  - text/xml;charset=UTF-8
244
192
  Content-Length:
245
- - '2989'
193
+ - '2420'
246
194
  Accept-Encoding:
247
195
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
248
196
  Accept:
@@ -267,7 +215,7 @@ http_interactions:
267
215
  X-Powered-By:
268
216
  - ASP.NET
269
217
  Date:
270
- - Thu, 05 Feb 2015 19:59:04 GMT
218
+ - Mon, 13 Apr 2015 20:45:43 GMT
271
219
  Content-Length:
272
220
  - '575'
273
221
  body:
@@ -296,5 +244,5 @@ http_interactions:
296
244
  PC9HZXJhck5mc2VSZXNwb25zZT48L3NvYXA6Qm9keT48L3NvYXA6RW52ZWxv
297
245
  cGU+
298
246
  http_version:
299
- recorded_at: Thu, 05 Feb 2015 19:59:03 GMT
247
+ recorded_at: Mon, 13 Apr 2015 20:45:43 GMT
300
248
  recorded_with: VCR 2.9.3
@@ -31,7 +31,7 @@ http_interactions:
31
31
  X-Powered-By:
32
32
  - ASP.NET
33
33
  Date:
34
- - Thu, 05 Feb 2015 19:59:01 GMT
34
+ - Mon, 13 Apr 2015 20:45:48 GMT
35
35
  Content-Length:
36
36
  - '1338'
37
37
  body:
@@ -169,80 +169,28 @@ http_interactions:
169
169
  \ <soap:address location=\"https://homologacao.notacarioca.rio.gov.br/WSNacional/nfse.asmx\"
170
170
  />\r\n </wsdl:port>\r\n </wsdl:service>\r\n</wsdl:definitions>"
171
171
  http_version:
172
- recorded_at: Thu, 05 Feb 2015 19:59:00 GMT
172
+ recorded_at: Mon, 13 Apr 2015 20:45:48 GMT
173
173
  - request:
174
174
  method: post
175
175
  uri: https://homologacao.notacarioca.rio.gov.br/WSNacional/nfse.asmx
176
176
  body:
177
177
  encoding: UTF-8
178
- string: |-
179
- <?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://notacarioca.rio.gov.br/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><GerarNfseRequest><inputXML>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
180
- &lt;GerarNfseEnvio xmlns=&quot;http://notacarioca.rio.gov.br/WSNacional/XSD/1/nfse_pcrj_v01.xsd&quot;&gt;
181
- &lt;Rps&gt;
182
- &lt;InfRps xmlns=&quot;http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd&quot; Id=&quot;1037&quot;&gt;
183
- &lt;IdentificacaoRps&gt;
184
- &lt;Numero&gt;1037&lt;/Numero&gt;
185
- &lt;Serie&gt;A&lt;/Serie&gt;
186
- &lt;Tipo&gt;1&lt;/Tipo&gt;
187
- &lt;/IdentificacaoRps&gt;
188
- &lt;DataEmissao&gt;2015-02-05T17:58:55&lt;/DataEmissao&gt;
189
- &lt;NaturezaOperacao&gt;1&lt;/NaturezaOperacao&gt;
190
- &lt;OptanteSimplesNacional&gt;1&lt;/OptanteSimplesNacional&gt;
191
- &lt;IncentivadorCultural&gt;2&lt;/IncentivadorCultural&gt;
192
- &lt;Status&gt;1&lt;/Status&gt;
193
- &lt;Servico&gt;
194
- &lt;Valores&gt;
195
- &lt;ValorServicos&gt;12.0&lt;/ValorServicos&gt;
196
- &lt;ValorPis&gt;0&lt;/ValorPis&gt;
197
- &lt;ValorCofins&gt;0&lt;/ValorCofins&gt;
198
- &lt;ValorInss&gt;0&lt;/ValorInss&gt;
199
- &lt;ValorIr&gt;0&lt;/ValorIr&gt;
200
- &lt;ValorCsll&gt;0&lt;/ValorCsll&gt;
201
- &lt;IssRetido&gt;2&lt;/IssRetido&gt;
202
- &lt;ValorIss&gt;0&lt;/ValorIss&gt;
203
- &lt;Aliquota&gt;0&lt;/Aliquota&gt;
204
- &lt;/Valores&gt;
205
- &lt;ItemListaServico&gt;0105&lt;/ItemListaServico&gt;
206
- &lt;CodigoTributacaoMunicipio&gt;010501&lt;/CodigoTributacaoMunicipio&gt;
207
- &lt;Discriminacao&gt;Venda do Serviço XYZ.&lt;/Discriminacao&gt;
208
- &lt;CodigoMunicipio&gt;3304557&lt;/CodigoMunicipio&gt;
209
- &lt;/Servico&gt;
210
- &lt;Prestador&gt;
211
- &lt;Cnpj&gt;12390095000186&lt;/Cnpj&gt;
212
- &lt;InscricaoMunicipal&gt;04807995&lt;/InscricaoMunicipal&gt;
213
- &lt;/Prestador&gt;
214
- &lt;Tomador&gt;
215
- &lt;IdentificacaoTomador&gt;
216
- &lt;CpfCnpj&gt;
217
- &lt;Cnpj&gt;98924674000187&lt;/Cnpj&gt;
218
- &lt;/CpfCnpj&gt;
219
- &lt;/IdentificacaoTomador&gt;
220
- &lt;RazaoSocial&gt;XPTO Tecnologia Ltda.&lt;/RazaoSocial&gt;
221
- &lt;Endereco&gt;
222
- &lt;Endereco&gt;Rua qualquer nome&lt;/Endereco&gt;
223
- &lt;Numero&gt;33&lt;/Numero&gt;
224
- &lt;Complemento&gt;Sala 1&lt;/Complemento&gt;
225
- &lt;Bairro&gt;Seu bairro&lt;/Bairro&gt;
226
- &lt;CodigoMunicipio&gt;3550308&lt;/CodigoMunicipio&gt;
227
- &lt;Uf&gt;SP&lt;/Uf&gt;
228
- &lt;Cep&gt;22255777&lt;/Cep&gt;
229
- &lt;/Endereco&gt;
230
- &lt;Contato&gt;
231
- &lt;Telefone&gt;2222-2222&lt;/Telefone&gt;
232
- &lt;Email&gt;customer@example.com&lt;/Email&gt;
233
- &lt;/Contato&gt;
234
- &lt;/Tomador&gt;
235
- &lt;/InfRps&gt;
236
- &lt;/Rps&gt;
237
- &lt;/GerarNfseEnvio&gt;
238
- </inputXML></GerarNfseRequest></soap:Body></soap:Envelope>
178
+ string: <?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
179
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://notacarioca.rio.gov.br/"
180
+ xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><GerarNfseRequest><inputXML>&lt;GerarNfseEnvio
181
+ xmlns=&quot;http://notacarioca.rio.gov.br/WSNacional/XSD/1/nfse_pcrj_v01.xsd&quot;&gt;&lt;Rps&gt;&lt;InfRps
182
+ xmlns=&quot;http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd&quot; Id=&quot;1042&quot;&gt;&lt;IdentificacaoRps&gt;&lt;Numero&gt;1042&lt;/Numero&gt;&lt;Serie&gt;A&lt;/Serie&gt;&lt;Tipo&gt;1&lt;/Tipo&gt;&lt;/IdentificacaoRps&gt;&lt;DataEmissao&gt;2015-04-13T17:45:47&lt;/DataEmissao&gt;&lt;NaturezaOperacao&gt;1&lt;/NaturezaOperacao&gt;&lt;OptanteSimplesNacional&gt;1&lt;/OptanteSimplesNacional&gt;&lt;IncentivadorCultural&gt;2&lt;/IncentivadorCultural&gt;&lt;Status&gt;1&lt;/Status&gt;&lt;Servico&gt;&lt;Valores&gt;&lt;ValorServicos&gt;12.0&lt;/ValorServicos&gt;&lt;ValorPis&gt;0&lt;/ValorPis&gt;&lt;ValorCofins&gt;0&lt;/ValorCofins&gt;&lt;ValorInss&gt;0&lt;/ValorInss&gt;&lt;ValorIr&gt;0&lt;/ValorIr&gt;&lt;ValorCsll&gt;0&lt;/ValorCsll&gt;&lt;IssRetido&gt;2&lt;/IssRetido&gt;&lt;ValorIss&gt;0&lt;/ValorIss&gt;&lt;Aliquota&gt;0&lt;/Aliquota&gt;&lt;/Valores&gt;&lt;ItemListaServico&gt;0105&lt;/ItemListaServico&gt;&lt;CodigoTributacaoMunicipio&gt;010501&lt;/CodigoTributacaoMunicipio&gt;&lt;Discriminacao&gt;Venda
183
+ do Serviço XYZ.&lt;/Discriminacao&gt;&lt;CodigoMunicipio&gt;3304557&lt;/CodigoMunicipio&gt;&lt;/Servico&gt;&lt;Prestador&gt;&lt;Cnpj&gt;12390095000186&lt;/Cnpj&gt;&lt;InscricaoMunicipal&gt;04807995&lt;/InscricaoMunicipal&gt;&lt;/Prestador&gt;&lt;Tomador&gt;&lt;IdentificacaoTomador&gt;&lt;CpfCnpj&gt;&lt;Cnpj&gt;98924674000187&lt;/Cnpj&gt;&lt;/CpfCnpj&gt;&lt;/IdentificacaoTomador&gt;&lt;RazaoSocial&gt;XPTO
184
+ Tecnologia Ltda.&lt;/RazaoSocial&gt;&lt;Endereco&gt;&lt;Endereco&gt;Rua qualquer
185
+ nome&lt;/Endereco&gt;&lt;Numero&gt;33&lt;/Numero&gt;&lt;Complemento&gt;Sala
186
+ 1&lt;/Complemento&gt;&lt;Bairro&gt;Seu bairro&lt;/Bairro&gt;&lt;CodigoMunicipio&gt;3550308&lt;/CodigoMunicipio&gt;&lt;Uf&gt;SP&lt;/Uf&gt;&lt;Cep&gt;22255777&lt;/Cep&gt;&lt;/Endereco&gt;&lt;Contato&gt;&lt;Telefone&gt;2222-2222&lt;/Telefone&gt;&lt;Email&gt;customer@example.com&lt;/Email&gt;&lt;/Contato&gt;&lt;/Tomador&gt;&lt;/InfRps&gt;&lt;/Rps&gt;&lt;/GerarNfseEnvio&gt;</inputXML></GerarNfseRequest></soap:Body></soap:Envelope>
239
187
  headers:
240
188
  Soapaction:
241
189
  - '"http://notacarioca.rio.gov.br/GerarNfse"'
242
190
  Content-Type:
243
191
  - text/xml;charset=UTF-8
244
192
  Content-Length:
245
- - '2989'
193
+ - '2420'
246
194
  Accept-Encoding:
247
195
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
248
196
  Accept:
@@ -267,9 +215,9 @@ http_interactions:
267
215
  X-Powered-By:
268
216
  - ASP.NET
269
217
  Date:
270
- - Thu, 05 Feb 2015 19:59:01 GMT
218
+ - Mon, 13 Apr 2015 20:45:50 GMT
271
219
  Content-Length:
272
- - '1267'
220
+ - '1269'
273
221
  body:
274
222
  encoding: ASCII-8BIT
275
223
  string: !binary |-
@@ -286,18 +234,18 @@ http_interactions:
286
234
  aW9uYWwvWFNELzEvbmZzZV9wY3JqX3YwMS54c2QiJmd0OyZsdDtDb21wTmZz
287
235
  ZSB4bWxucz0iaHR0cDovL3d3dy5hYnJhc2Yub3JnLmJyL0FCUkFTRi9hcnF1
288
236
  aXZvcy9uZnNlLnhzZCImZ3Q7Jmx0O05mc2UmZ3Q7Jmx0O0luZk5mc2UmZ3Q7
289
- Jmx0O051bWVybyZndDsyOCZsdDsvTnVtZXJvJmd0OyZsdDtDb2RpZ29WZXJp
290
- ZmljYWNhbyZndDtQNVJVLTNTSUsmbHQ7L0NvZGlnb1ZlcmlmaWNhY2FvJmd0
291
- OyZsdDtEYXRhRW1pc3NhbyZndDsyMDE1LTAyLTA1VDE3OjU4OjU3Jmx0Oy9E
237
+ Jmx0O051bWVybyZndDs3MCZsdDsvTnVtZXJvJmd0OyZsdDtDb2RpZ29WZXJp
238
+ ZmljYWNhbyZndDtMTEdGLVhNQ0ImbHQ7L0NvZGlnb1ZlcmlmaWNhY2FvJmd0
239
+ OyZsdDtEYXRhRW1pc3NhbyZndDsyMDE1LTA0LTEzVDE3OjQ1OjQ4Jmx0Oy9E
292
240
  YXRhRW1pc3NhbyZndDsmbHQ7SWRlbnRpZmljYWNhb1JwcyZndDsmbHQ7TnVt
293
- ZXJvJmd0OzEwMzcmbHQ7L051bWVybyZndDsmbHQ7U2VyaWUmZ3Q7QSZsdDsv
241
+ ZXJvJmd0OzEwNDImbHQ7L051bWVybyZndDsmbHQ7U2VyaWUmZ3Q7QSZsdDsv
294
242
  U2VyaWUmZ3Q7Jmx0O1RpcG8mZ3Q7MSZsdDsvVGlwbyZndDsmbHQ7L0lkZW50
295
- aWZpY2FjYW9ScHMmZ3Q7Jmx0O0RhdGFFbWlzc2FvUnBzJmd0OzIwMTUtMDIt
296
- MDUmbHQ7L0RhdGFFbWlzc2FvUnBzJmd0OyZsdDtOYXR1cmV6YU9wZXJhY2Fv
243
+ aWZpY2FjYW9ScHMmZ3Q7Jmx0O0RhdGFFbWlzc2FvUnBzJmd0OzIwMTUtMDQt
244
+ MTMmbHQ7L0RhdGFFbWlzc2FvUnBzJmd0OyZsdDtOYXR1cmV6YU9wZXJhY2Fv
297
245
  Jmd0OzEmbHQ7L05hdHVyZXphT3BlcmFjYW8mZ3Q7Jmx0O09wdGFudGVTaW1w
298
246
  bGVzTmFjaW9uYWwmZ3Q7MSZsdDsvT3B0YW50ZVNpbXBsZXNOYWNpb25hbCZn
299
247
  dDsmbHQ7SW5jZW50aXZhZG9yQ3VsdHVyYWwmZ3Q7MiZsdDsvSW5jZW50aXZh
300
- ZG9yQ3VsdHVyYWwmZ3Q7Jmx0O0NvbXBldGVuY2lhJmd0OzIwMTUtMDItMDVU
248
+ ZG9yQ3VsdHVyYWwmZ3Q7Jmx0O0NvbXBldGVuY2lhJmd0OzIwMTUtMDQtMTNU
301
249
  MDA6MDA6MDAmbHQ7L0NvbXBldGVuY2lhJmd0OyZsdDtTZXJ2aWNvJmd0OyZs
302
250
  dDtWYWxvcmVzJmd0OyZsdDtWYWxvclNlcnZpY29zJmd0OzEyJmx0Oy9WYWxv
303
251
  clNlcnZpY29zJmd0OyZsdDtJc3NSZXRpZG8mZ3Q7MiZsdDsvSXNzUmV0aWRv
@@ -342,5 +290,5 @@ http_interactions:
342
290
  UmVzcG9zdGEmZ3Q7PC9vdXRwdXRYTUw+PC9HZXJhck5mc2VSZXNwb25zZT48
343
291
  L3NvYXA6Qm9keT48L3NvYXA6RW52ZWxvcGU+
344
292
  http_version:
345
- recorded_at: Thu, 05 Feb 2015 19:59:00 GMT
293
+ recorded_at: Mon, 13 Apr 2015 20:45:49 GMT
346
294
  recorded_with: VCR 2.9.3
@@ -31,7 +31,7 @@ http_interactions:
31
31
  X-Powered-By:
32
32
  - ASP.NET
33
33
  Date:
34
- - Thu, 05 Feb 2015 19:59:01 GMT
34
+ - Mon, 13 Apr 2015 20:45:47 GMT
35
35
  Content-Length:
36
36
  - '1338'
37
37
  body:
@@ -169,65 +169,26 @@ http_interactions:
169
169
  \ <soap:address location=\"https://homologacao.notacarioca.rio.gov.br/WSNacional/nfse.asmx\"
170
170
  />\r\n </wsdl:port>\r\n </wsdl:service>\r\n</wsdl:definitions>"
171
171
  http_version:
172
- recorded_at: Thu, 05 Feb 2015 19:59:01 GMT
172
+ recorded_at: Mon, 13 Apr 2015 20:45:46 GMT
173
173
  - request:
174
174
  method: post
175
175
  uri: https://homologacao.notacarioca.rio.gov.br/WSNacional/nfse.asmx
176
176
  body:
177
177
  encoding: UTF-8
178
- string: |-
179
- <?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://notacarioca.rio.gov.br/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><GerarNfseRequest><inputXML>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
180
- &lt;GerarNfseEnvio xmlns=&quot;http://notacarioca.rio.gov.br/WSNacional/XSD/1/nfse_pcrj_v01.xsd&quot;&gt;
181
- &lt;Rps&gt;
182
- &lt;InfRps xmlns=&quot;http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd&quot; Id=&quot;1038&quot;&gt;
183
- &lt;IdentificacaoRps&gt;
184
- &lt;Numero&gt;1038&lt;/Numero&gt;
185
- &lt;Serie&gt;A&lt;/Serie&gt;
186
- &lt;Tipo&gt;1&lt;/Tipo&gt;
187
- &lt;/IdentificacaoRps&gt;
188
- &lt;DataEmissao&gt;2015-02-05T17:59:00&lt;/DataEmissao&gt;
189
- &lt;NaturezaOperacao&gt;1&lt;/NaturezaOperacao&gt;
190
- &lt;OptanteSimplesNacional&gt;1&lt;/OptanteSimplesNacional&gt;
191
- &lt;IncentivadorCultural&gt;2&lt;/IncentivadorCultural&gt;
192
- &lt;Status&gt;1&lt;/Status&gt;
193
- &lt;Servico&gt;
194
- &lt;Valores&gt;
195
- &lt;ValorServicos&gt;12.0&lt;/ValorServicos&gt;
196
- &lt;ValorPis&gt;0&lt;/ValorPis&gt;
197
- &lt;ValorCofins&gt;0&lt;/ValorCofins&gt;
198
- &lt;ValorInss&gt;0&lt;/ValorInss&gt;
199
- &lt;ValorIr&gt;0&lt;/ValorIr&gt;
200
- &lt;ValorCsll&gt;0&lt;/ValorCsll&gt;
201
- &lt;IssRetido&gt;2&lt;/IssRetido&gt;
202
- &lt;ValorIss&gt;0&lt;/ValorIss&gt;
203
- &lt;Aliquota&gt;0&lt;/Aliquota&gt;
204
- &lt;/Valores&gt;
205
- &lt;ItemListaServico&gt;0105&lt;/ItemListaServico&gt;
206
- &lt;CodigoTributacaoMunicipio&gt;010501&lt;/CodigoTributacaoMunicipio&gt;
207
- &lt;Discriminacao&gt;Venda do Serviço XYZ.&lt;/Discriminacao&gt;
208
- &lt;CodigoMunicipio&gt;3304557&lt;/CodigoMunicipio&gt;
209
- &lt;/Servico&gt;
210
- &lt;Prestador&gt;
211
- &lt;Cnpj&gt;12390095000186&lt;/Cnpj&gt;
212
- &lt;InscricaoMunicipal&gt;04807995&lt;/InscricaoMunicipal&gt;
213
- &lt;/Prestador&gt;
214
- &lt;Tomador&gt;
215
- &lt;RazaoSocial&gt;XPTO Tecnologia Ltda.&lt;/RazaoSocial&gt;
216
- &lt;Contato&gt;
217
- &lt;Email&gt;customer@example.com&lt;/Email&gt;
218
- &lt;/Contato&gt;
219
- &lt;/Tomador&gt;
220
- &lt;/InfRps&gt;
221
- &lt;/Rps&gt;
222
- &lt;/GerarNfseEnvio&gt;
223
- </inputXML></GerarNfseRequest></soap:Body></soap:Envelope>
178
+ string: <?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
179
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://notacarioca.rio.gov.br/"
180
+ xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><GerarNfseRequest><inputXML>&lt;GerarNfseEnvio
181
+ xmlns=&quot;http://notacarioca.rio.gov.br/WSNacional/XSD/1/nfse_pcrj_v01.xsd&quot;&gt;&lt;Rps&gt;&lt;InfRps
182
+ xmlns=&quot;http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd&quot; Id=&quot;1043&quot;&gt;&lt;IdentificacaoRps&gt;&lt;Numero&gt;1043&lt;/Numero&gt;&lt;Serie&gt;A&lt;/Serie&gt;&lt;Tipo&gt;1&lt;/Tipo&gt;&lt;/IdentificacaoRps&gt;&lt;DataEmissao&gt;2015-04-13T17:45:45&lt;/DataEmissao&gt;&lt;NaturezaOperacao&gt;1&lt;/NaturezaOperacao&gt;&lt;OptanteSimplesNacional&gt;1&lt;/OptanteSimplesNacional&gt;&lt;IncentivadorCultural&gt;2&lt;/IncentivadorCultural&gt;&lt;Status&gt;1&lt;/Status&gt;&lt;Servico&gt;&lt;Valores&gt;&lt;ValorServicos&gt;12.0&lt;/ValorServicos&gt;&lt;ValorPis&gt;0&lt;/ValorPis&gt;&lt;ValorCofins&gt;0&lt;/ValorCofins&gt;&lt;ValorInss&gt;0&lt;/ValorInss&gt;&lt;ValorIr&gt;0&lt;/ValorIr&gt;&lt;ValorCsll&gt;0&lt;/ValorCsll&gt;&lt;IssRetido&gt;2&lt;/IssRetido&gt;&lt;ValorIss&gt;0&lt;/ValorIss&gt;&lt;Aliquota&gt;0&lt;/Aliquota&gt;&lt;/Valores&gt;&lt;ItemListaServico&gt;0105&lt;/ItemListaServico&gt;&lt;CodigoTributacaoMunicipio&gt;010501&lt;/CodigoTributacaoMunicipio&gt;&lt;Discriminacao&gt;Venda
183
+ do Serviço XYZ.&lt;/Discriminacao&gt;&lt;CodigoMunicipio&gt;3304557&lt;/CodigoMunicipio&gt;&lt;/Servico&gt;&lt;Prestador&gt;&lt;Cnpj&gt;12390095000186&lt;/Cnpj&gt;&lt;InscricaoMunicipal&gt;04807995&lt;/InscricaoMunicipal&gt;&lt;/Prestador&gt;&lt;Tomador&gt;&lt;RazaoSocial&gt;XPTO
184
+ Tecnologia Ltda.&lt;/RazaoSocial&gt;&lt;Contato&gt;&lt;Email&gt;customer@example.com&lt;/Email&gt;&lt;/Contato&gt;&lt;/Tomador&gt;&lt;/InfRps&gt;&lt;/Rps&gt;&lt;/GerarNfseEnvio&gt;</inputXML></GerarNfseRequest></soap:Body></soap:Envelope>
224
185
  headers:
225
186
  Soapaction:
226
187
  - '"http://notacarioca.rio.gov.br/GerarNfse"'
227
188
  Content-Type:
228
189
  - text/xml;charset=UTF-8
229
190
  Content-Length:
230
- - '2355'
191
+ - '1945'
231
192
  Accept-Encoding:
232
193
  - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
233
194
  Accept:
@@ -252,9 +213,9 @@ http_interactions:
252
213
  X-Powered-By:
253
214
  - ASP.NET
254
215
  Date:
255
- - Thu, 05 Feb 2015 19:59:03 GMT
216
+ - Mon, 13 Apr 2015 20:45:48 GMT
256
217
  Content-Length:
257
- - '1138'
218
+ - '1144'
258
219
  body:
259
220
  encoding: ASCII-8BIT
260
221
  string: !binary |-
@@ -271,18 +232,18 @@ http_interactions:
271
232
  aW9uYWwvWFNELzEvbmZzZV9wY3JqX3YwMS54c2QiJmd0OyZsdDtDb21wTmZz
272
233
  ZSB4bWxucz0iaHR0cDovL3d3dy5hYnJhc2Yub3JnLmJyL0FCUkFTRi9hcnF1
273
234
  aXZvcy9uZnNlLnhzZCImZ3Q7Jmx0O05mc2UmZ3Q7Jmx0O0luZk5mc2UmZ3Q7
274
- Jmx0O051bWVybyZndDsyOSZsdDsvTnVtZXJvJmd0OyZsdDtDb2RpZ29WZXJp
275
- ZmljYWNhbyZndDtYVU1TLUVTVzMmbHQ7L0NvZGlnb1ZlcmlmaWNhY2FvJmd0
276
- OyZsdDtEYXRhRW1pc3NhbyZndDsyMDE1LTAyLTA1VDE3OjU4OjU3Jmx0Oy9E
235
+ Jmx0O051bWVybyZndDs2OSZsdDsvTnVtZXJvJmd0OyZsdDtDb2RpZ29WZXJp
236
+ ZmljYWNhbyZndDtJNFJLLU5VWUQmbHQ7L0NvZGlnb1ZlcmlmaWNhY2FvJmd0
237
+ OyZsdDtEYXRhRW1pc3NhbyZndDsyMDE1LTA0LTEzVDE3OjQ1OjQzJmx0Oy9E
277
238
  YXRhRW1pc3NhbyZndDsmbHQ7SWRlbnRpZmljYWNhb1JwcyZndDsmbHQ7TnVt
278
- ZXJvJmd0OzEwMzgmbHQ7L051bWVybyZndDsmbHQ7U2VyaWUmZ3Q7QSZsdDsv
239
+ ZXJvJmd0OzEwNDMmbHQ7L051bWVybyZndDsmbHQ7U2VyaWUmZ3Q7QSZsdDsv
279
240
  U2VyaWUmZ3Q7Jmx0O1RpcG8mZ3Q7MSZsdDsvVGlwbyZndDsmbHQ7L0lkZW50
280
- aWZpY2FjYW9ScHMmZ3Q7Jmx0O0RhdGFFbWlzc2FvUnBzJmd0OzIwMTUtMDIt
281
- MDUmbHQ7L0RhdGFFbWlzc2FvUnBzJmd0OyZsdDtOYXR1cmV6YU9wZXJhY2Fv
241
+ aWZpY2FjYW9ScHMmZ3Q7Jmx0O0RhdGFFbWlzc2FvUnBzJmd0OzIwMTUtMDQt
242
+ MTMmbHQ7L0RhdGFFbWlzc2FvUnBzJmd0OyZsdDtOYXR1cmV6YU9wZXJhY2Fv
282
243
  Jmd0OzEmbHQ7L05hdHVyZXphT3BlcmFjYW8mZ3Q7Jmx0O09wdGFudGVTaW1w
283
244
  bGVzTmFjaW9uYWwmZ3Q7MSZsdDsvT3B0YW50ZVNpbXBsZXNOYWNpb25hbCZn
284
245
  dDsmbHQ7SW5jZW50aXZhZG9yQ3VsdHVyYWwmZ3Q7MiZsdDsvSW5jZW50aXZh
285
- ZG9yQ3VsdHVyYWwmZ3Q7Jmx0O0NvbXBldGVuY2lhJmd0OzIwMTUtMDItMDVU
246
+ ZG9yQ3VsdHVyYWwmZ3Q7Jmx0O0NvbXBldGVuY2lhJmd0OzIwMTUtMDQtMTNU
286
247
  MDA6MDA6MDAmbHQ7L0NvbXBldGVuY2lhJmd0OyZsdDtTZXJ2aWNvJmd0OyZs
287
248
  dDtWYWxvcmVzJmd0OyZsdDtWYWxvclNlcnZpY29zJmd0OzEyJmx0Oy9WYWxv
288
249
  clNlcnZpY29zJmd0OyZsdDtJc3NSZXRpZG8mZ3Q7MiZsdDsvSXNzUmV0aWRv
@@ -318,5 +279,5 @@ http_interactions:
318
279
  R2VyYXJOZnNlUmVzcG9zdGEmZ3Q7PC9vdXRwdXRYTUw+PC9HZXJhck5mc2VS
319
280
  ZXNwb25zZT48L3NvYXA6Qm9keT48L3NvYXA6RW52ZWxvcGU+
320
281
  http_version:
321
- recorded_at: Thu, 05 Feb 2015 19:59:01 GMT
282
+ recorded_at: Mon, 13 Apr 2015 20:45:47 GMT
322
283
  recorded_with: VCR 2.9.3
@@ -1,12 +1,4 @@
1
1
  RSpec.describe NfseCarioca::CancelarNfse do
2
- before do
3
- NfseCarioca.configure do |config|
4
- config.cnpj = "12390095000186"
5
- config.inscricao_municipal = "04807995"
6
- config.test_mode = true
7
- end
8
- end
9
-
10
2
  describe "#execute!" do
11
3
  context 'when NFSeCarioca rps number does not exist', :vcr do
12
4
  let(:invoice_canceller) do
@@ -26,7 +18,7 @@ RSpec.describe NfseCarioca::CancelarNfse do
26
18
 
27
19
  context 'when NFSeCarioca rps number exist', :vcr do
28
20
  let(:invoice_canceller) do
29
- described_class.new("13")
21
+ described_class.new("70")
30
22
  end
31
23
 
32
24
  let(:response) { invoice_canceller.execute! }
@@ -1,4 +1,6 @@
1
1
  RSpec.describe NfseCarioca::GerarNfse do
2
+ let(:phone_number) { "2222-2222" }
3
+ let(:zipcode) { "22255777" }
2
4
  let(:nota_fiscal_info) do
3
5
  {
4
6
  identification_number: invoice_number,
@@ -8,7 +10,7 @@ RSpec.describe NfseCarioca::GerarNfse do
8
10
  document_type: "Cnpj",
9
11
  document_number: "98924674000187",
10
12
  name: "XPTO Tecnologia Ltda.",
11
- phone_number: "2222-2222",
13
+ phone_number: phone_number,
12
14
  email: "customer@example.com",
13
15
  address: {
14
16
  street: "Rua qualquer nome",
@@ -17,7 +19,7 @@ RSpec.describe NfseCarioca::GerarNfse do
17
19
  neighborhood: "Seu bairro",
18
20
  city_ibge_code: "3550308",
19
21
  state_code: "SP",
20
- zipcode: "22255777"
22
+ zipcode: zipcode
21
23
  }
22
24
  }
23
25
  }
@@ -25,71 +27,71 @@ RSpec.describe NfseCarioca::GerarNfse do
25
27
 
26
28
  let!(:invoice_generator) { described_class.new(nota_fiscal_info) }
27
29
 
28
- before do
29
- NfseCarioca.configure do |config|
30
- config.cnpj = "12390095000186"
31
- config.inscricao_municipal = "04807995"
32
- config.test_mode = true
33
-
34
- # config.cert_path = file_path("cert.pem")
35
- # config.cert_key_path = file_path("key.pem")
36
- # config.ca_cert_path = file_path("ca_cert.pem")
37
- # config.cert_key_password = "PASSWORD"
38
- end
39
- end
40
-
41
30
  describe '#to_xml' do
42
31
  let(:invoice_number) { "1024" }
43
32
  let(:xml) { invoice_generator.to_xml }
44
33
 
34
+ context "when everything is fine" do
35
+ it 'contains correct identification number' do
36
+ expect(xml).to include %{<Numero>1024</Numero>}
37
+ end
45
38
 
46
- it 'contains correct identification number' do
47
- expect(xml).to include %{<Numero>1024</Numero>}
48
- end
39
+ it 'contains correct description' do
40
+ expect(xml).to include %{<Discriminacao>Venda do Serviço XYZ.}
41
+ end
49
42
 
50
- it 'contains correct description' do
51
- expect(xml).to include %{<Discriminacao>Venda do Serviço XYZ.}
52
- end
43
+ it 'contains correct description' do
44
+ expect(xml).to include %{<ValorServicos>12.0</ValorServicos>}
45
+ end
53
46
 
54
- it 'contains correct description' do
55
- expect(xml).to include %{<ValorServicos>12.0</ValorServicos>}
47
+ it 'contains correct provider information' do
48
+ expect(xml).to include %{<Prestador><Cnpj>12390095000186</Cnpj><InscricaoMunicipal>04807995</InscricaoMunicipal></Prestador>}
49
+ end
50
+
51
+ it 'contains correct customer information' do
52
+ expect(xml).to include %{<IdentificacaoTomador><CpfCnpj><Cnpj>98924674000187</Cnpj></CpfCnpj></IdentificacaoTomador><RazaoSocial>XPTO Tecnologia Ltda.</RazaoSocial><Endereco><Endereco>Rua qualquer nome</Endereco><Numero>33</Numero><Complemento>Sala 1</Complemento><Bairro>Seu bairro</Bairro><CodigoMunicipio>3550308</CodigoMunicipio><Uf>SP</Uf><Cep>22255777</Cep></Endereco>}
53
+ end
56
54
  end
57
55
 
58
- it 'contains correct provider information' do
59
- expect(xml).to include %{<Prestador>
60
- <Cnpj>12390095000186</Cnpj>
61
- <InscricaoMunicipal>04807995</InscricaoMunicipal>
62
- </Prestador>}
56
+ context "when phone is wrong" do
57
+ context "when number is 551148073291" do
58
+ let(:phone_number) { "551148073291" }
59
+ it { expect(xml).to include %{<Telefone>1148073291</Telefone>} }
60
+ end
61
+
62
+ context "when number is 313184002584" do
63
+ let(:phone_number) { "313184002584" }
64
+ it { expect(xml).to include %{<Telefone>3184002584</Telefone>} }
65
+ end
66
+
67
+ context "when number is 011949860019" do
68
+ let(:phone_number) { "011949860019" }
69
+ it { expect(xml).to include %{<Telefone>11949860019</Telefone>} }
70
+ end
71
+
72
+ context "when number is (11) 94986-0019" do
73
+ let(:phone_number) { "(11) 94986-0019" }
74
+ it { expect(xml).to include %{<Telefone>11949860019</Telefone>} }
75
+ end
76
+
63
77
  end
64
78
 
65
- it 'contains correct customer information' do
66
- expect(xml).to include %{
67
- <IdentificacaoTomador>
68
- <CpfCnpj>
69
- <Cnpj>98924674000187</Cnpj>
70
- </CpfCnpj>
71
- </IdentificacaoTomador>
72
- <RazaoSocial>XPTO Tecnologia Ltda.</RazaoSocial>
73
- <Endereco>
74
- <Endereco>Rua qualquer nome</Endereco>
75
- <Numero>33</Numero>
76
- <Complemento>Sala 1</Complemento>
77
- <Bairro>Seu bairro</Bairro>
78
- <CodigoMunicipio>3550308</CodigoMunicipio>
79
- <Uf>SP</Uf>
80
- <Cep>22255777</Cep>
81
- </Endereco>}
79
+ context "when zipcode is wrong" do
80
+ context "when number is 05116-050" do
81
+ let(:zipcode) { "05116-050" }
82
+ it { expect(xml).to include %{<Cep>05116050</Cep>} }
83
+ end
82
84
  end
83
85
  end
84
86
 
85
87
  describe "#call" do
86
88
  context 'when NfseCarioca rps number does not exist yet', :vcr do
87
89
  let(:response) { invoice_generator.execute! }
88
- let(:invoice_number) { "1037" }
90
+ let(:invoice_number) { "1042" }
89
91
 
90
92
  it 'generates NfseCarioca' do
91
- expect(response.number).to eq "28"
92
- expect(response.verification_code).to eq "P5RU-3SIK"
93
+ expect(response.number).to eq "70"
94
+ expect(response.verification_code).to eq "LLGF-XMCB"
93
95
  end
94
96
  end
95
97
 
@@ -101,9 +103,13 @@ RSpec.describe NfseCarioca::GerarNfse do
101
103
  expect(response.error?).to be_truthy
102
104
  end
103
105
 
104
- it "responds with message error E10 " do
106
+ it "responds with error message E10 " do
105
107
  expect(response.error_message).to eq "RPS já informado."
106
108
  end
109
+
110
+ it "responds with error code E10 " do
111
+ expect(response.error_code).to eq "E10"
112
+ end
107
113
  end
108
114
 
109
115
  context "when NfseCarioca has only the minimum values", :vcr do
@@ -119,11 +125,11 @@ RSpec.describe NfseCarioca::GerarNfse do
119
125
  }
120
126
  end
121
127
  let(:response) { invoice_generator.execute! }
122
- let(:invoice_number) { "1038" }
128
+ let(:invoice_number) { "1043" }
123
129
 
124
130
  it 'generates NfseCarioca' do
125
- expect(response.number).to eq "29"
126
- expect(response.verification_code).to eq "XUMS-ESW3"
131
+ expect(response.number).to eq "69"
132
+ expect(response.verification_code).to eq "I4RK-NUYD"
127
133
  end
128
134
  end
129
135
  end