br_nfe 2.1.0 → 2.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (257) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.travis.yml +0 -1
  4. data/Gemfile.lock +1 -1
  5. data/README.markdown +264 -106
  6. data/lib/br_nfe/{helper → association}/have_address.rb +1 -1
  7. data/lib/br_nfe/{helper → association}/have_condicao_pagamento.rb +1 -1
  8. data/lib/br_nfe/association/have_destinatario.rb +22 -0
  9. data/lib/br_nfe/association/have_emitente.rb +24 -0
  10. data/lib/br_nfe/base.rb +37 -27
  11. data/lib/br_nfe/condicao_pagamento.rb +2 -0
  12. data/lib/br_nfe/constants.rb +33 -0
  13. data/lib/br_nfe/endereco.rb +10 -0
  14. data/lib/br_nfe/helper/string_methods.rb +4 -0
  15. data/lib/br_nfe/{emitente.rb → person.rb} +11 -7
  16. data/lib/br_nfe/product/base.rb +82 -0
  17. data/lib/br_nfe/product/consulta_status_servico.rb +35 -0
  18. data/lib/br_nfe/product/emitente.rb +8 -0
  19. data/lib/br_nfe/product/gateway/base.rb +62 -0
  20. data/lib/br_nfe/product/gateway/web_service_svrs.rb +39 -0
  21. data/lib/br_nfe/product/value_nf.rb +9 -0
  22. data/lib/br_nfe/product/xml/soap_env.xml.slim +8 -0
  23. data/lib/br_nfe/product/xml/v3_10/XSD/consReciNFe_v3.10.xsd +9 -0
  24. data/lib/br_nfe/product/xml/v3_10/XSD/consSitNFe_v3.10.xsd +9 -0
  25. data/lib/br_nfe/product/xml/v3_10/XSD/consStatServ_v3.10.xsd +9 -0
  26. data/lib/br_nfe/product/xml/v3_10/XSD/enviNFe_v3.10.xsd +9 -0
  27. data/lib/br_nfe/product/xml/v3_10/XSD/inutNFe_v3.10.xsd +9 -0
  28. data/lib/br_nfe/product/xml/v3_10/XSD/leiauteConsSitNFe_v3.10.xsd +502 -0
  29. data/lib/br_nfe/product/xml/v3_10/XSD/leiauteConsStatServ_v3.10.xsd +98 -0
  30. data/lib/br_nfe/product/xml/v3_10/XSD/leiauteInutNFe_v3.10.xsd +193 -0
  31. data/lib/br_nfe/product/xml/v3_10/XSD/leiauteNFe_v3.10.xsd +6060 -0
  32. data/lib/br_nfe/product/xml/v3_10/XSD/nfe_v3.10.xsd +9 -0
  33. data/lib/br_nfe/product/xml/v3_10/XSD/procInutNFe_v3.10.xsd +9 -0
  34. data/lib/br_nfe/product/xml/v3_10/XSD/procNFe_v3.10.xsd +9 -0
  35. data/lib/br_nfe/product/xml/v3_10/XSD/retConsReciNFe_v3.10.xsd +9 -0
  36. data/lib/br_nfe/product/xml/v3_10/XSD/retConsSitNFe_v3.10.xsd +9 -0
  37. data/lib/br_nfe/product/xml/v3_10/XSD/retConsStatServ_v3.10.xsd +9 -0
  38. data/lib/br_nfe/product/xml/v3_10/XSD/retEnviNFe_v3.10.xsd +9 -0
  39. data/lib/br_nfe/product/xml/v3_10/XSD/retInutNFe_v3.10.xsd +9 -0
  40. data/lib/br_nfe/product/xml/v3_10/XSD/tiposBasico_v3.10.xsd +571 -0
  41. data/lib/br_nfe/product/xml/v3_10/XSD/xmldsig-core-schema_v1.01.xsd +98 -0
  42. data/lib/br_nfe/product/xml/v3_10/consulta_status_servico.xml.slim +4 -0
  43. data/lib/br_nfe/service/association/have_intermediario.rb +26 -0
  44. data/lib/br_nfe/service/association/have_rps.rb +36 -0
  45. data/lib/br_nfe/service/base.rb +24 -20
  46. data/lib/br_nfe/service/betha/v1/cancela_nfse.rb +43 -0
  47. data/lib/br_nfe/service/betha/v1/consulta_lote_rps.rb +20 -6
  48. data/lib/br_nfe/service/betha/v1/consulta_nfs_por_rps.rb +17 -6
  49. data/lib/br_nfe/service/betha/v1/consulta_nfse.rb +16 -5
  50. data/lib/br_nfe/service/betha/v1/consulta_situacao_lote_rps.rb +15 -6
  51. data/lib/br_nfe/service/betha/v1/gateway.rb +4 -0
  52. data/lib/br_nfe/service/betha/v1/recepcao_lote_rps.rb +13 -5
  53. data/lib/br_nfe/service/betha/v1/xml/_tc_identificacao_prestador.xml.slim +3 -0
  54. data/lib/br_nfe/service/betha/v1/xml/_tc_pedido_cancelamento.xml.slim +4 -0
  55. data/lib/br_nfe/service/concerns/rules/cancelamento_nfs.rb +8 -0
  56. data/lib/br_nfe/service/concerns/rules/consulta_nfs_por_rps.rb +1 -1
  57. data/lib/br_nfe/service/concerns/rules/consulta_nfse.rb +5 -2
  58. data/lib/br_nfe/service/concerns/values_ts/service_v1.rb +319 -0
  59. data/lib/br_nfe/service/destinatario.rb +7 -0
  60. data/lib/br_nfe/service/emitente.rb +8 -0
  61. data/lib/br_nfe/service/intermediario.rb +1 -12
  62. data/lib/br_nfe/service/item.rb +7 -7
  63. data/lib/br_nfe/service/response/build/base.rb +166 -0
  64. data/lib/br_nfe/service/response/build/cancelamento.rb +62 -0
  65. data/lib/br_nfe/service/response/build/consulta_lote_rps.rb +25 -0
  66. data/lib/br_nfe/service/response/build/consulta_nfs_por_rps.rb +25 -0
  67. data/lib/br_nfe/service/response/build/consulta_nfse.rb +24 -0
  68. data/lib/br_nfe/service/response/build/consulta_situacao_lote_rps.rb +56 -0
  69. data/lib/br_nfe/service/response/build/invoice_build.rb +359 -0
  70. data/lib/br_nfe/service/response/build/recepcao_lote_rps.rb +69 -0
  71. data/lib/br_nfe/service/response/cancelamento.rb +22 -0
  72. data/lib/br_nfe/service/response/consulta_lote_rps.rb +18 -0
  73. data/lib/br_nfe/service/response/consulta_nfs_por_rps.rb +10 -0
  74. data/lib/br_nfe/service/response/consulta_nfse.rb +10 -0
  75. data/lib/br_nfe/service/response/consulta_situacao_lote_rps.rb +74 -0
  76. data/lib/br_nfe/service/response/default.rb +93 -0
  77. data/lib/br_nfe/{response/service → service/response}/nota_fiscal.rb +19 -12
  78. data/lib/br_nfe/service/response/paths/v1/tc_nfse.rb +275 -0
  79. data/lib/br_nfe/service/response/recepcao_lote_rps.rb +35 -0
  80. data/lib/br_nfe/service/rps.rb +30 -27
  81. data/lib/br_nfe/service/sc/florianopolis/xml/_service_item.xml.slim +4 -4
  82. data/lib/br_nfe/service/sc/florianopolis/xml/inf_requisicao.xml.slim +4 -4
  83. data/lib/br_nfe/service/simpliss/v1/cancela_nfse.rb +16 -6
  84. data/lib/br_nfe/service/simpliss/v1/consulta_lote_rps.rb +20 -12
  85. data/lib/br_nfe/service/simpliss/v1/consulta_nfs_por_rps.rb +21 -6
  86. data/lib/br_nfe/service/simpliss/v1/consulta_nfse.rb +20 -6
  87. data/lib/br_nfe/service/simpliss/v1/consulta_situacao_lote_rps.rb +17 -6
  88. data/lib/br_nfe/service/simpliss/v1/recepcao_lote_rps.rb +16 -4
  89. data/lib/br_nfe/service/simpliss/v1/xml/_tc_item_servico.xml.slim +2 -2
  90. data/lib/br_nfe/service/thema/v1/cancela_nfse.rb +21 -19
  91. data/lib/br_nfe/service/thema/v1/consulta_lote_rps.rb +21 -19
  92. data/lib/br_nfe/service/thema/v1/consulta_nfs_por_rps.rb +25 -18
  93. data/lib/br_nfe/service/thema/v1/consulta_nfse.rb +20 -20
  94. data/lib/br_nfe/service/thema/v1/consulta_situacao_lote_rps.rb +14 -20
  95. data/lib/br_nfe/service/thema/v1/recepcao_lote_rps.rb +11 -16
  96. data/lib/br_nfe/service/thema/v1/recepcao_lote_rps_limitado.rb +8 -6
  97. data/lib/br_nfe/service/xml/v1/_tc_identificacao_nfse.xml.slim +1 -1
  98. data/lib/br_nfe/service/xml/v1/_tc_pedido_cancelamento.xml.slim +1 -1
  99. data/lib/br_nfe/service/xml/v1/_tc_valores.xml.slim +11 -11
  100. data/lib/br_nfe/version.rb +1 -1
  101. data/lib/br_nfe.rb +62 -62
  102. data/test/br_nfe/association/have_address_test.rb +64 -0
  103. data/test/br_nfe/association/have_condicao_pagamento_test.rb +75 -0
  104. data/test/br_nfe/association/have_destinatario_test.rb +76 -0
  105. data/test/br_nfe/association/have_emitente_test.rb +80 -0
  106. data/test/br_nfe/base_test.rb +96 -61
  107. data/test/br_nfe/endereco_test.rb +21 -0
  108. data/test/br_nfe/person_test.rb +55 -0
  109. data/test/br_nfe/product/base_test.rb +150 -0
  110. data/test/br_nfe/product/consulta_status_servico_test.rb +59 -0
  111. data/test/br_nfe/product/emitente_test.rb +29 -0
  112. data/test/br_nfe/product/gateway/base_test.rb +16 -0
  113. data/test/br_nfe/product/gateway/web_service_svrs_test.rb +36 -0
  114. data/test/br_nfe/service/association/have_intermediario_test.rb +80 -0
  115. data/test/br_nfe/service/association/have_rps_test.rb +62 -0
  116. data/test/br_nfe/service/base_test.rb +42 -42
  117. data/test/br_nfe/service/betha/v1/cancela_nfse_test.rb +90 -0
  118. data/test/br_nfe/service/betha/v1/consulta_lote_rps_test.rb +105 -5
  119. data/test/br_nfe/service/betha/v1/consulta_nfs_por_rps_test.rb +103 -5
  120. data/test/br_nfe/service/betha/v1/consulta_nfse_test.rb +114 -5
  121. data/test/br_nfe/service/betha/v1/consulta_situacao_lote_rps_test.rb +118 -5
  122. data/test/br_nfe/service/betha/v1/gateway_test.rb +1 -1
  123. data/test/br_nfe/service/betha/v1/recepcao_lote_rps_test.rb +51 -5
  124. data/test/br_nfe/service/concerns/rules/cancelamento_nfs_test.rb +2 -2
  125. data/test/br_nfe/service/concerns/rules/consulta_nfs_por_rps_test.rb +2 -7
  126. data/test/br_nfe/service/concerns/rules/consulta_nfse_test.rb +24 -3
  127. data/test/br_nfe/service/concerns/rules/recepcao_lote_rps_test.rb +1 -1
  128. data/test/br_nfe/{helper → service/concerns}/values_ts/service_v1_test.rb +2 -2
  129. data/test/br_nfe/{destinatario_test.rb → service/destinatario_test.rb} +3 -4
  130. data/test/br_nfe/service/emitente_test.rb +29 -0
  131. data/test/br_nfe/service/item_test.rb +14 -14
  132. data/test/br_nfe/service/response/build/base_test.rb +80 -0
  133. data/test/br_nfe/{response/service → service/response}/default_test.rb +1 -82
  134. data/test/br_nfe/service/response/nota_fiscal_test.rb +59 -0
  135. data/test/br_nfe/{response/service → service/response}/paths/v1/tc_nfse_test.rb +10 -10
  136. data/test/br_nfe/service/rps_test.rb +107 -138
  137. data/test/br_nfe/service/sc/florianopolis/emission_rps_test.rb +9 -9
  138. data/test/br_nfe/service/simpliss/v1/base_test.rb +1 -1
  139. data/test/br_nfe/service/simpliss/v1/cancela_nfse_test.rb +7 -10
  140. data/test/br_nfe/service/simpliss/v1/consulta_lote_rps_test.rb +11 -18
  141. data/test/br_nfe/service/simpliss/v1/consulta_nfs_por_rps_test.rb +11 -18
  142. data/test/br_nfe/service/simpliss/v1/consulta_nfse_test.rb +11 -18
  143. data/test/br_nfe/service/simpliss/v1/consulta_situacao_lote_rps_test.rb +7 -11
  144. data/test/br_nfe/service/simpliss/v1/recepcao_lote_rps_test.rb +3 -9
  145. data/test/br_nfe/service/thema/v1/base_test.rb +1 -1
  146. data/test/br_nfe/service/thema/v1/cancela_nfse_test.rb +7 -14
  147. data/test/br_nfe/service/thema/v1/consulta_lote_rps_test.rb +6 -17
  148. data/test/br_nfe/service/thema/v1/consulta_nfs_por_rps_test.rb +6 -13
  149. data/test/br_nfe/service/thema/v1/consulta_nfse_test.rb +11 -18
  150. data/test/br_nfe/service/thema/v1/consulta_situacao_lote_rps_test.rb +7 -11
  151. data/test/br_nfe/service/thema/v1/recepcao_lote_rps_limitado_test.rb +1 -5
  152. data/test/br_nfe/service/thema/v1/recepcao_lote_rps_test.rb +3 -9
  153. data/test/factories/base.rb +0 -1
  154. data/test/factories/{emitente.rb → person.rb} +1 -1
  155. data/test/factories/product/base.rb +12 -0
  156. data/test/factories/product/consulta_status_servico.rb +12 -0
  157. data/test/factories/product/emitente.rb +15 -0
  158. data/test/factories/product/gateway/base.rb +5 -0
  159. data/test/factories/product/gateway/web_service_svrs.rb +5 -0
  160. data/test/factories/service/betha/v1/{cancelamento_nfs.rb → cancela_nfse.rb} +2 -1
  161. data/test/factories/service/betha/v1/consulta_lote_rps.rb +1 -1
  162. data/test/factories/service/betha/v1/consulta_nfs_por_rps.rb +1 -1
  163. data/test/factories/service/betha/v1/consulta_nfse.rb +1 -1
  164. data/test/factories/service/betha/v1/consulta_situacao_lote_rps.rb +1 -1
  165. data/test/factories/{destinatario.rb → service/destinatario.rb} +1 -1
  166. data/test/factories/service/emitente.rb +15 -0
  167. data/test/factories/service/item.rb +4 -4
  168. data/test/factories/service/response/build_response.rb +5 -0
  169. data/test/factories/service/response/default.rb +6 -0
  170. data/test/factories/{response/service → service/response}/nota_fiscal.rb +8 -8
  171. data/test/factories/service/rps.rb +11 -11
  172. data/test/factories/service/sc/florianopolis/base.rb +1 -1
  173. data/test/factories/service/sc/florianopolis/cancellation.rb +1 -1
  174. data/test/factories/service/sc/florianopolis/emission_rps.rb +1 -1
  175. data/test/factories/service/simpliss/v1/base.rb +1 -1
  176. data/test/factories/service/simpliss/v1/cancela_nfse.rb +1 -1
  177. data/test/factories/service/simpliss/v1/consulta_lote_rps.rb +1 -1
  178. data/test/factories/service/simpliss/v1/consulta_nfs_por_rps.rb +1 -1
  179. data/test/factories/service/simpliss/v1/consulta_nfse.rb +1 -1
  180. data/test/factories/service/simpliss/v1/consulta_situacao_lote_rps.rb +1 -1
  181. data/test/factories/service/simpliss/v1/recepcao_lote_rps.rb +1 -1
  182. data/test/factories/service/thema/v1/base.rb +1 -1
  183. data/test/factories/service/thema/v1/cancela_nfse.rb +1 -1
  184. data/test/factories/service/thema/v1/consulta_lote_rps.rb +1 -1
  185. data/test/factories/service/thema/v1/consulta_nfs_por_rps.rb +1 -1
  186. data/test/factories/service/thema/v1/consulta_nfse.rb +1 -1
  187. data/test/factories/service/thema/v1/consulta_situacao_lote_rps.rb +1 -1
  188. data/test/factories/service/thema/v1/recepcao_lote_rps.rb +1 -1
  189. data/test/fixtures/service/response/betha/v1/cancela_nfse/fault.xml +17 -0
  190. data/test/fixtures/service/response/betha/v1/cancela_nfse/success.xml +48 -0
  191. data/test/fixtures/service/response/betha/v1/consulta_lote_rps/fault.xml +18 -0
  192. data/test/fixtures/service/response/betha/v1/consulta_lote_rps/success.xml +108 -0
  193. data/test/fixtures/service/response/betha/v1/consulta_nfse/fault.xml +18 -0
  194. data/test/fixtures/service/response/betha/v1/consulta_nfse/nfs_empty.xml +12 -0
  195. data/test/fixtures/service/response/betha/v1/consulta_nfse/success.xml +115 -0
  196. data/test/fixtures/service/response/betha/v1/consulta_nfse_por_rps/fault.xml +18 -0
  197. data/test/fixtures/service/response/betha/v1/consulta_nfse_por_rps/success.xml +103 -0
  198. data/test/fixtures/service/response/betha/v1/consulta_situacao_lote_rps/error.xml +13 -0
  199. data/test/fixtures/service/response/betha/v1/consulta_situacao_lote_rps/fault.xml +17 -0
  200. data/test/fixtures/service/response/betha/v1/consulta_situacao_lote_rps/success.xml +13 -0
  201. data/test/fixtures/service/response/betha/v1/consulta_situacao_lote_rps/unprocessed.xml +13 -0
  202. data/test/fixtures/service/response/betha/v1/consulta_situacao_lote_rps/unprocessed_by_code_error.xml +17 -0
  203. data/test/fixtures/service/response/betha/v1/consulta_situacao_lote_rps/unreceived.xml +13 -0
  204. data/test/fixtures/service/response/betha/v1/consulta_situacao_lote_rps/unreceived_by_code_error.xml +17 -0
  205. data/test/fixtures/service/response/betha/v1/recepcao_lote_rps/error.xml +17 -0
  206. data/test/fixtures/service/response/betha/v1/recepcao_lote_rps/success.xml +14 -0
  207. metadata +160 -94
  208. data/lib/br_nfe/destinatario.rb +0 -26
  209. data/lib/br_nfe/helper/have_destinatario.rb +0 -18
  210. data/lib/br_nfe/helper/have_emitente.rb +0 -20
  211. data/lib/br_nfe/helper/have_intermediario.rb +0 -24
  212. data/lib/br_nfe/helper/have_rps.rb +0 -34
  213. data/lib/br_nfe/helper/values_ts/service_v1.rb +0 -317
  214. data/lib/br_nfe/response/service/build_response.rb +0 -463
  215. data/lib/br_nfe/response/service/default.rb +0 -185
  216. data/lib/br_nfe/response/service/paths/base.rb +0 -127
  217. data/lib/br_nfe/response/service/paths/v1/servico_cancelar_nfse_resposta.rb +0 -22
  218. data/lib/br_nfe/response/service/paths/v1/servico_consultar_lote_rps_resposta.rb +0 -25
  219. data/lib/br_nfe/response/service/paths/v1/servico_consultar_nfse_resposta.rb +0 -25
  220. data/lib/br_nfe/response/service/paths/v1/servico_consultar_nfse_rps_resposta.rb +0 -25
  221. data/lib/br_nfe/response/service/paths/v1/servico_consultar_situacao_lote_rps_resposta.rb +0 -31
  222. data/lib/br_nfe/response/service/paths/v1/servico_enviar_lote_rps_resposta.rb +0 -36
  223. data/lib/br_nfe/response/service/paths/v1/tc_nfse.rb +0 -271
  224. data/lib/br_nfe/service/betha/v1/cancelamento_nfs.rb +0 -36
  225. data/lib/br_nfe/service/betha/v1/response_paths/servico_consultar_lote_rps_resposta.rb +0 -23
  226. data/lib/br_nfe/service/betha/v1/response_paths/servico_consultar_nfse_resposta.rb +0 -21
  227. data/lib/br_nfe/service/betha/v1/response_paths/servico_consultar_nfse_rps_resposta.rb +0 -21
  228. data/lib/br_nfe/service/simpliss/v1/response_paths/servico_cancelar_nfse_resposta.rb +0 -22
  229. data/lib/br_nfe/service/simpliss/v1/response_paths/servico_consultar_lote_rps_resposta.rb +0 -25
  230. data/lib/br_nfe/service/simpliss/v1/response_paths/servico_consultar_nfse_resposta.rb +0 -25
  231. data/lib/br_nfe/service/simpliss/v1/response_paths/servico_consultar_nfse_rps_resposta.rb +0 -25
  232. data/lib/br_nfe/service/simpliss/v1/response_paths/servico_consultar_situacao_lote_rps_resposta.rb +0 -31
  233. data/lib/br_nfe/service/simpliss/v1/response_paths/servico_enviar_lote_rps_resposta.rb +0 -36
  234. data/lib/br_nfe/service/thema/v1/response_paths/servico_cancelar_nfse_resposta.rb +0 -17
  235. data/lib/br_nfe/service/thema/v1/response_paths/servico_consultar_nfse_rps_resposta.rb +0 -19
  236. data/test/br_nfe/emitente_test.rb +0 -46
  237. data/test/br_nfe/helper/have_address_test.rb +0 -62
  238. data/test/br_nfe/helper/have_condicao_pagamento_test.rb +0 -71
  239. data/test/br_nfe/helper/have_destinatario_test.rb +0 -64
  240. data/test/br_nfe/helper/have_emitente_test.rb +0 -63
  241. data/test/br_nfe/helper/have_intermediario_test.rb +0 -77
  242. data/test/br_nfe/helper/have_rps_test.rb +0 -59
  243. data/test/br_nfe/response/service/build_response_test.rb +0 -205
  244. data/test/br_nfe/response/service/nota_fiscal_test.rb +0 -41
  245. data/test/br_nfe/response/service/paths/base_test.rb +0 -196
  246. data/test/br_nfe/response/service/paths/v1/servico_cancelar_nfse_resposta_test.rb +0 -25
  247. data/test/br_nfe/response/service/paths/v1/servico_consultar_lote_rps_resposta_test.rb +0 -30
  248. data/test/br_nfe/response/service/paths/v1/servico_consultar_nfse_resposta_test.rb +0 -30
  249. data/test/br_nfe/response/service/paths/v1/servico_consultar_nfse_rps_resposta_test.rb +0 -30
  250. data/test/br_nfe/response/service/paths/v1/servico_consultar_situacao_lote_rps_resposta_test.rb +0 -30
  251. data/test/br_nfe/response/service/paths/v1/servico_enviar_lote_rps_resposta_test.rb +0 -34
  252. data/test/br_nfe/service/betha/v1/cancelamento_nfs_test.rb +0 -54
  253. data/test/br_nfe/service/betha/v1/response_paths/servico_consultar_lote_rps_resposta_test.rb +0 -16
  254. data/test/br_nfe/service/betha/v1/response_paths/servico_consultar_nfse_resposta_test.rb +0 -16
  255. data/test/br_nfe/service/betha/v1/response_paths/servico_consultar_nfse_rps_resposta_test.rb +0 -16
  256. data/test/factories/response/service/build_response.rb +0 -5
  257. data/test/factories/response/service/default.rb +0 -10
@@ -1,22 +0,0 @@
1
- module BrNfe
2
- module Service
3
- module Simpliss
4
- module V1
5
- module ResponsePaths
6
- module ServicoCancelarNfseResposta
7
- include BrNfe::Service::Response::Paths::Base
8
-
9
- # def message_alerts_path; [] end
10
- def response_message_errors_path
11
- [:cancelar_nfse_result, :lista_mensagem_retorno, :mensagem_retorno]
12
- end
13
-
14
- def response_cancelation_date_time_path
15
- [:cancelar_nfse_result, :cancelamento, :confirmacao, :data_hora_cancelamento]
16
- end
17
- end
18
- end
19
- end
20
- end
21
- end
22
- end
@@ -1,25 +0,0 @@
1
- module BrNfe
2
- module Service
3
- module Simpliss
4
- module V1
5
- module ResponsePaths
6
- module ServicoConsultarLoteRpsResposta
7
- include BrNfe::Service::Response::Paths::Base
8
- include BrNfe::Service::Response::Paths::V1::TcNfse
9
-
10
- # def message_alerts_path; [] end
11
- def response_message_errors_path
12
- [:consultar_lote_rps_result, :lista_mensagem_retorno, :mensagem_retorno]
13
- end
14
-
15
- # Caminho referente ao caminho onde se encontra as notas fiscais
16
- # poderá encontrar apenas uma ou várias
17
- def response_invoices_path
18
- [:consultar_lote_rps_result, :lista_nfse, :comp_nfse]
19
- end
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,25 +0,0 @@
1
- module BrNfe
2
- module Service
3
- module Simpliss
4
- module V1
5
- module ResponsePaths
6
- module ServicoConsultarNfseResposta
7
- include BrNfe::Service::Response::Paths::Base
8
- include BrNfe::Service::Response::Paths::V1::TcNfse
9
-
10
- # def message_alerts_path; [] end
11
- def response_message_errors_path
12
- [:consultar_nfse_result, :lista_mensagem_retorno, :mensagem_retorno]
13
- end
14
-
15
- # Caminho referente ao caminho onde se encontra as notas fiscais
16
- # poderá encontrar apenas uma ou várias
17
- def response_invoices_path
18
- [:consultar_nfse_result, :lista_nfse, :comp_nfse]
19
- end
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,25 +0,0 @@
1
- module BrNfe
2
- module Service
3
- module Simpliss
4
- module V1
5
- module ResponsePaths
6
- module ServicoConsultarNfseRpsResposta
7
- include BrNfe::Service::Response::Paths::Base
8
- include BrNfe::Service::Response::Paths::V1::TcNfse
9
-
10
- # def message_alerts_path; [] end
11
- def response_message_errors_path
12
- [:consultar_nfse_por_rps_result, :lista_mensagem_retorno, :mensagem_retorno]
13
- end
14
-
15
- # Caminho referente ao caminho onde se encontra as notas fiscais
16
- # poderá encontrar apenas uma ou várias
17
- def response_invoices_path
18
- [:consultar_nfse_por_rps_result, :comp_nfse]
19
- end
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,31 +0,0 @@
1
- module BrNfe
2
- module Service
3
- module Simpliss
4
- module V1
5
- module ResponsePaths
6
- module ServicoConsultarSituacaoLoteRpsResposta
7
- include BrNfe::Service::Response::Paths::Base
8
-
9
- # Caminho referente ao caminho do número do lote
10
- def response_lot_number_path
11
- [:consultar_situacao_lote_rps_result, :numero_lote]
12
- end
13
-
14
- # Caminho para encontrar o número do protocolo
15
- def response_situation_path
16
- [:consultar_situacao_lote_rps_result, :situacao]
17
- end
18
-
19
- # def response_message_alerts_path; [] end
20
- def response_message_errors_path
21
- [:consultar_situacao_lote_rps_result, :lista_mensagem_retorno, :mensagem_retorno]
22
- end
23
- # def response_message_code_key; :codigo end
24
- # def response_message_msg_key; :mensagem end
25
- # def response_message_solution_key; :correcao end
26
- end
27
- end
28
- end
29
- end
30
- end
31
- end
@@ -1,36 +0,0 @@
1
- module BrNfe
2
- module Service
3
- module Simpliss
4
- module V1
5
- module ResponsePaths
6
- module ServicoEnviarLoteRpsResposta
7
- include BrNfe::Service::Response::Paths::Base
8
-
9
- # Caminho referente ao caminho do número do lote
10
- def response_lot_number_path
11
- [:recepcionar_lote_rps_result, :numero_lote]
12
- end
13
-
14
- # Caminho para encontrar o número do protocolo
15
- def response_protocol_path
16
- [:recepcionar_lote_rps_result, :protocolo]
17
- end
18
-
19
- # Caminho para encontrar a data de recebimento do lote/rps/nfe
20
- def response_received_date_path
21
- [:recepcionar_lote_rps_result, :data_recebimento]
22
- end
23
-
24
- # def response_message_alerts_path; [] end
25
- def response_message_errors_path
26
- [:recepcionar_lote_rps_result, :lista_mensagem_retorno, :mensagem_retorno]
27
- end
28
- # def response_message_code_key; :codigo end
29
- # def response_message_msg_key; :mensagem end
30
- # def response_message_solution_key; :correcao end
31
- end
32
- end
33
- end
34
- end
35
- end
36
- end
@@ -1,17 +0,0 @@
1
- module BrNfe
2
- module Service
3
- module Thema
4
- module V1
5
- module ResponsePaths
6
- module ServicoCancelarNfseResposta
7
- include BrNfe::Service::Response::Paths::V1::ServicoCancelarNfseResposta
8
-
9
- def response_cancelation_date_time_path
10
- [:cancelar_nfse_resposta, :cancelamento, :confirmacao, :data_hora_cancelamento]
11
- end
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
@@ -1,19 +0,0 @@
1
- module BrNfe
2
- module Service
3
- module Thema
4
- module V1
5
- module ResponsePaths
6
- module ServicoConsultarNfseRpsResposta
7
- include BrNfe::Service::Response::Paths::V1::ServicoConsultarNfseRpsResposta
8
-
9
- # Caminho referente ao caminho onde se encontra as notas fiscais
10
- # poderá encontrar apenas uma ou várias
11
- def response_invoices_path
12
- [:consultar_nfse_rps_resposta, :lista_nfse, :comp_nfse]
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
19
- end
@@ -1,46 +0,0 @@
1
- require 'test_helper'
2
- require 'br_nfe/helper/have_address_test.rb'
3
-
4
- describe BrNfe::Emitente do
5
- subject { FactoryGirl.build(:emitente, endereco: endereco) }
6
- let(:endereco) { FactoryGirl.build(:endereco) }
7
-
8
- describe "validations" do
9
- it { must validate_presence_of(:inscricao_municipal) }
10
- it { must validate_presence_of(:natureza_operacao) }
11
- it { must validate_presence_of(:cnpj) }
12
- it { must validate_presence_of(:razao_social) }
13
-
14
- describe "valida o endereco" do
15
- it "deve ser inválido se endereco for invalido" do
16
- subject.endereco.stubs(:valid?).returns(false)
17
- subject.endereco.stubs(:errors).returns(stub(full_messages: ["Erro 1"] ))
18
- subject.valid?.must_equal false
19
- subject.errors.full_messages.include?("Endereço: Erro 1").must_equal true
20
- end
21
- it "deve ser válido se endereco for valido" do
22
- subject.endereco.stubs(:valid?).returns(true)
23
- subject.valid?.must_equal true
24
- end
25
- end
26
- end
27
-
28
- describe "#endereco" do
29
- include BrNfeTest::HelperTest::HaveAddressTest
30
- end
31
-
32
- describe "#razao_social" do
33
- it "deve retornar a string em maiusculoo e sem acentos" do
34
- subject.razao_social = 'ó têxtú dève vìr SÉM ÀçÊnTÕ'
35
- subject.razao_social.must_equal "O TEXTU DEVE VIR SEM ACENTO"
36
- end
37
- end
38
-
39
- describe "#nome_fantasia" do
40
- it "deve retornar a string em maiusculoo e sem acentos" do
41
- subject.nome_fantasia = 'ó têxtú dève vìr SÉM ÀçÊnTÕ'
42
- subject.nome_fantasia.must_equal "O TEXTU DEVE VIR SEM ACENTO"
43
- end
44
- end
45
-
46
- end
@@ -1,62 +0,0 @@
1
-
2
- module BrNfeTest
3
- module HelperTest
4
- module HaveAddressTest
5
- class Address < BrNfe::Endereco
6
- end
7
-
8
- def test_HaveAddressTest_Já_inicia_com_um_endereco
9
- subject.class.new.endereco.class.must_equal BrNfe::Endereco
10
- end
11
-
12
- def test_HaveAddressTest_Mesmo_setando_o_endereço_como_nil_retorna_um_novo_endereco
13
- subject.endereco = nil
14
- subject.endereco.class.must_equal BrNfe::Endereco
15
- subject.endereco.class.wont_equal endereco
16
- end
17
-
18
- def test_HaveAddressTest_deve_manter_o_objeto_endereco_se_ja_tiver
19
- subject.endereco.must_equal endereco
20
- endereco.cep = 'nova-www'
21
- subject.endereco.cep.must_equal 'nova-www'
22
- end
23
-
24
- def test_HaveAddressTest_Se_setar_o_endereco_com_outra_class_deve_ignorar
25
- subject.endereco = 7777
26
- subject.endereco.must_equal endereco
27
- end
28
-
29
- def test_HaveAddressTest_posso_setar_o_endereco_com_um_hash_com_os_parametros_do_endereço
30
- endereco.assign_attributes(cep: '123456', logradouro: :rua_1, uf: :sc)
31
- subject.endereco = {cep: '99999', logradouro: :rua_2, uf: :rs}
32
- subject.endereco.cep.must_equal '99999'
33
- subject.endereco.logradouro.must_equal 'RUA_2'
34
- subject.endereco.uf.must_equal :rs
35
- end
36
-
37
- def test_HaveAddressTest_posso_setar_o_endereco_com_um_bloco
38
- endereco.assign_attributes(cep: '123456', logradouro: :rua_1, uf: :sc)
39
- subject.endereco do |address|
40
- address.cep = '99999'
41
- address.logradouro = :rua_2
42
- address.uf = :rs
43
- end
44
- subject.endereco.cep.must_equal '99999'
45
- subject.endereco.logradouro.must_equal 'RUA_2'
46
- subject.endereco.uf.must_equal :rs
47
- end
48
-
49
- def test_HaveAddressTest_posso_mudar_o_objeto_endereco
50
- novo_endereco = FactoryGirl.build(:endereco)
51
- subject.endereco = novo_endereco
52
- subject.endereco.must_equal novo_endereco
53
- end
54
-
55
- def test_HaveAddressTest_posso_modificar_a_class_do_address
56
- BrNfe.endereco_class = Address
57
- subject.endereco.class.must_equal Address
58
- BrNfe.endereco_class = BrNfe::Endereco
59
- end
60
- end
61
- end
62
- end
@@ -1,71 +0,0 @@
1
-
2
- module BrNfeTest
3
- module HelperTest
4
- module HaveCondicaoPagamentoTest
5
- class NewClassCondicaoPagamento < BrNfe::CondicaoPagamento
6
- end
7
-
8
- def test_HaveCondicaoPagamentoTest_deve_iniciar_o_condicao_pagamento_com_nil
9
- subject.class.new.condicao_pagamento.must_be_nil
10
- end
11
-
12
- def test_HaveCondicaoPagamentoTest_se_tiver_condicao_pagamento_posso_setalo_como_nil
13
- subject.condicao_pagamento.wont_be_nil
14
- subject.condicao_pagamento = nil
15
- subject.condicao_pagamento.must_be_nil
16
- end
17
-
18
- def test_HaveCondicaoPagamentoTest_deve_manter_o_objeto_condicao_pagamento_se_ja_tiver
19
- subject.condicao_pagamento.must_equal condicao_pagamento
20
- condicao_pagamento.condicao = 'nova-www'
21
- subject.condicao_pagamento.condicao.must_equal 'nova-www'
22
- end
23
-
24
- def test_HaveCondicaoPagamentoTest_Se_setar_o_condicao_pagamento_com_outra_class_deve_ignorar
25
- subject.condicao_pagamento = 7777
26
- subject.condicao_pagamento.must_equal condicao_pagamento
27
- end
28
-
29
- def test_HaveCondicaoPagamentoTest_posso_setar_o_condicao_pagamento_com_um_hash_com_os_parametros_do_condicao_pagamento
30
- condicao_pagamento.assign_attributes(condicao: '123456')
31
- subject.condicao_pagamento = {condicao: '99999'}
32
- subject.condicao_pagamento.condicao.must_equal '99999'
33
- end
34
-
35
- def test_HaveCondicaoPagamentoTest_ao_setar_um_condicao_pagamento_com_um_hash_e_nao_tiver_um_condicao_pagamento_deve_instanciar_um_com_os_parametros
36
- subject.condicao_pagamento = nil
37
- subject.condicao_pagamento = {condicao: '99999'}
38
- subject.condicao_pagamento.condicao.must_equal '99999'
39
- end
40
-
41
- def test_HaveCondicaoPagamentoTest_posso_setar_o_condicao_pagamento_com_um_bloco
42
- condicao_pagamento.assign_attributes(condicao: '123456')
43
- subject.condicao_pagamento do |address|
44
- address.condicao = '99999'
45
- end
46
- subject.condicao_pagamento.condicao.must_equal '99999'
47
- end
48
-
49
- def test_HaveCondicaoPagamentoTest_ao_setar_um_condicao_pagamento_com_um_bloco_e_nao_tiver_um_condicao_pagamento_deve_instanciar_um_com_os_parametros
50
- subject.condicao_pagamento = nil
51
- subject.condicao_pagamento do |address|
52
- address.condicao = '99999'
53
- end
54
- subject.condicao_pagamento.condicao.must_equal '99999'
55
- end
56
-
57
- def test_HaveCondicaoPagamentoTest_posso_mudar_o_objeto_condicao_pagamento
58
- novo_condicao_pagamento = FactoryGirl.build(:condicao_pagamento)
59
- subject.condicao_pagamento = novo_condicao_pagamento
60
- subject.condicao_pagamento.must_equal novo_condicao_pagamento
61
- end
62
-
63
- def test_HaveCondicaoPagamentoTest_posso_modificar_a_class_do_condicao_pagamento
64
- BrNfe.condicao_pagamento_class = NewClassCondicaoPagamento
65
- novo_objeto = subject.class.new(condicao_pagamento: {condicao: '123'})
66
- novo_objeto.condicao_pagamento.class.must_equal NewClassCondicaoPagamento
67
- BrNfe.condicao_pagamento_class = BrNfe::CondicaoPagamento
68
- end
69
- end
70
- end
71
- end
@@ -1,64 +0,0 @@
1
-
2
- module BrNfeTest
3
- module HelperTest
4
- module HaveDestinatarioTest
5
- class NewClassDestinatario < BrNfe::Destinatario
6
- end
7
-
8
- def test_HaveDestinatarioTest_Já_inicia_com_um_destinatario
9
- subject.class.new.destinatario.class.must_equal BrNfe::Destinatario
10
- end
11
-
12
- def test_HaveDestinatarioTest_Mesmo_setando_o_destinatario_como_nil_retorna_um_novo_destinatario
13
- destinatario
14
- subject.destinatario = nil
15
- subject.destinatario.class.must_equal BrNfe::Destinatario
16
- subject.destinatario.wont_equal destinatario
17
- end
18
-
19
- def test_HaveDestinatarioTest_deve_manter_o_objeto_destinatario_se_ja_tiver
20
- subject.destinatario.must_equal destinatario
21
- destinatario.cpf_cnpj = 'nova-www'
22
- subject.destinatario.cpf_cnpj.must_equal 'nova-www'
23
- end
24
-
25
- def test_HaveDestinatarioTest_Se_setar_o_destinatario_com_outra_class_deve_ignorar
26
- subject.destinatario = 7777
27
- subject.destinatario.must_equal destinatario
28
- end
29
-
30
- def test_HaveDestinatarioTest_posso_setar_o_destinatario_com_um_hash_com_os_parametros_do_destinatario
31
- destinatario.assign_attributes(cpf_cnpj: '123456', telefone: '123465', email: 'mail@mail.com')
32
- subject.destinatario = {cpf_cnpj: '99999', telefone: '654389', email: 'mail2'}
33
- subject.destinatario.cpf_cnpj.must_equal '99999'
34
- subject.destinatario.telefone.must_equal '654389'
35
- subject.destinatario.email.must_equal 'mail2'
36
- end
37
-
38
- def test_HaveDestinatarioTest_posso_setar_o_destinatario_com_um_bloco
39
- destinatario.assign_attributes(cpf_cnpj: '123456', telefone: '11111', email: 'mail1')
40
- subject.destinatario do |address|
41
- address.cpf_cnpj = '99999'
42
- address.telefone = '11111'
43
- address.email = 'mail1'
44
- end
45
- subject.destinatario.cpf_cnpj.must_equal '99999'
46
- subject.destinatario.telefone.must_equal '11111'
47
- subject.destinatario.email.must_equal 'mail1'
48
- end
49
-
50
- def test_HaveDestinatarioTest_posso_mudar_o_objeto_destinatario
51
- novo_destinatario = FactoryGirl.build(:destinatario)
52
- subject.destinatario = novo_destinatario
53
- subject.destinatario.must_equal novo_destinatario
54
- end
55
-
56
- def test_HaveDestinatarioTest_posso_modificar_a_class_do_destinatario
57
- BrNfe.destinatario_class = NewClassDestinatario
58
- novo_objeto = subject.class.new
59
- novo_objeto.destinatario.class.must_equal NewClassDestinatario
60
- BrNfe.destinatario_class = BrNfe::Destinatario
61
- end
62
- end
63
- end
64
- end
@@ -1,63 +0,0 @@
1
-
2
- module BrNfeTest
3
- module HelperTest
4
- module HaveEmitenteTest
5
- class NewClassEmitente < BrNfe::Emitente
6
- end
7
-
8
- def test_HaveEmitenteTest_Já_inicia_com_um_emitente
9
- subject.class.new.emitente.class.must_equal BrNfe::Emitente
10
- end
11
-
12
- def test_HaveEmitenteTest_Mesmo_setando_o_emitente_como_nil_retorna_um_novo_emitente
13
- subject.emitente = nil
14
- subject.emitente.class.must_equal BrNfe::Emitente
15
- subject.emitente.wont_equal emitente
16
- end
17
-
18
- def test_HaveEmitenteTest_deve_manter_o_objeto_emitente_se_ja_tiver
19
- subject.emitente.must_equal emitente
20
- emitente.cnpj = 'nova-www'
21
- subject.emitente.cnpj.must_equal 'nova-www'
22
- end
23
-
24
- def test_HaveEmitenteTest_Se_setar_o_emitente_com_outra_class_deve_ignorar
25
- subject.emitente = 7777
26
- subject.emitente.must_equal emitente
27
- end
28
-
29
- def test_HaveEmitenteTest_posso_setar_o_emitente_com_um_hash_com_os_parametros_do_emitente
30
- emitente.assign_attributes(cnpj: '123456', telefone: '123465', email: 'mail@mail.com')
31
- subject.emitente = {cnpj: '99999', telefone: '654389', email: 'mail2'}
32
- subject.emitente.cnpj.must_equal '99999'
33
- subject.emitente.telefone.must_equal '654389'
34
- subject.emitente.email.must_equal 'mail2'
35
- end
36
-
37
- def test_HaveEmitenteTest_posso_setar_o_emitente_com_um_bloco
38
- emitente.assign_attributes(cnpj: '123456', telefone: '11111', email: 'mail1')
39
- subject.emitente do |address|
40
- address.cnpj = '99999'
41
- address.telefone = '11111'
42
- address.email = 'mail1'
43
- end
44
- subject.emitente.cnpj.must_equal '99999'
45
- subject.emitente.telefone.must_equal '11111'
46
- subject.emitente.email.must_equal 'mail1'
47
- end
48
-
49
- def test_HaveEmitenteTest_posso_mudar_o_objeto_emitente
50
- novo_emitente = FactoryGirl.build(:emitente)
51
- subject.emitente = novo_emitente
52
- subject.emitente.must_equal novo_emitente
53
- end
54
-
55
- def test_HaveEmitenteTest_posso_modificar_a_class_do_emitente
56
- BrNfe.emitente_class = NewClassEmitente
57
- novo_objeto = subject.class.new
58
- novo_objeto.emitente.class.must_equal NewClassEmitente
59
- BrNfe.emitente_class = BrNfe::Emitente
60
- end
61
- end
62
- end
63
- end
@@ -1,77 +0,0 @@
1
-
2
- module BrNfeTest
3
- module HelperTest
4
- module HaveIntermediarioTest
5
- class NewClassIntermediario < BrNfe::Service::Intermediario
6
- end
7
-
8
- def test_HaveIntermediarioTest_deve_iniciar_o_intermediario_com_nil
9
- subject.class.new.intermediario.must_be_nil
10
- end
11
-
12
- def test_HaveIntermediarioTest_se_tiver_intermediario_posso_setalo_como_nil
13
- subject.intermediario.wont_be_nil
14
- subject.intermediario = nil
15
- subject.intermediario.must_be_nil
16
- end
17
-
18
- def test_HaveIntermediarioTest_deve_manter_o_objeto_intermediario_se_ja_tiver
19
- subject.intermediario.must_equal intermediario
20
- intermediario.cpf_cnpj = 'nova-www'
21
- subject.intermediario.cpf_cnpj.must_equal 'nova-www'
22
- end
23
-
24
- def test_HaveIntermediarioTest_Se_setar_o_intermediario_com_outra_class_deve_ignorar
25
- subject.intermediario = 7777
26
- subject.intermediario.must_equal intermediario
27
- end
28
-
29
- def test_HaveIntermediarioTest_posso_setar_o_intermediario_com_um_hash_com_os_parametros_do_intermediario
30
- intermediario.assign_attributes(cpf_cnpj: '123456', razao_social: '123465')
31
- subject.intermediario = {cpf_cnpj: '99999', razao_social: '654389'}
32
- subject.intermediario.cpf_cnpj.must_equal '99999'
33
- subject.intermediario.razao_social.must_equal '654389'
34
- end
35
-
36
- def test_HaveIntermediarioTest_ao_setar_um_intermediario_com_um_hash_e_nao_tiver_um_intermediario_deve_instanciar_um_com_os_parametros
37
- subject.intermediario = nil
38
- subject.intermediario = {cpf_cnpj: '99999', razao_social: '654389'}
39
- subject.intermediario.cpf_cnpj.must_equal '99999'
40
- subject.intermediario.razao_social.must_equal '654389'
41
- end
42
-
43
- def test_HaveIntermediarioTest_posso_setar_o_intermediario_com_um_bloco
44
- intermediario.assign_attributes(cpf_cnpj: '123456', razao_social: '11111')
45
- subject.intermediario do |address|
46
- address.cpf_cnpj = '99999'
47
- address.razao_social = '11111'
48
- end
49
- subject.intermediario.cpf_cnpj.must_equal '99999'
50
- subject.intermediario.razao_social.must_equal '11111'
51
- end
52
-
53
- def test_HaveIntermediarioTest_ao_setar_um_intermediario_com_um_bloco_e_nao_tiver_um_intermediario_deve_instanciar_um_com_os_parametros
54
- subject.intermediario = nil
55
- subject.intermediario do |address|
56
- address.cpf_cnpj = '99999'
57
- address.razao_social = '11111'
58
- end
59
- subject.intermediario.cpf_cnpj.must_equal '99999'
60
- subject.intermediario.razao_social.must_equal '11111'
61
- end
62
-
63
- def test_HaveIntermediarioTest_posso_mudar_o_objeto_intermediario
64
- novo_intermediario = FactoryGirl.build(:intermediario)
65
- subject.intermediario = novo_intermediario
66
- subject.intermediario.must_equal novo_intermediario
67
- end
68
-
69
- def test_HaveIntermediarioTest_posso_modificar_a_class_do_intermediario
70
- BrNfe.intermediario_class = NewClassIntermediario
71
- novo_objeto = subject.class.new(intermediario: {cpf_cnpj: '123'})
72
- novo_objeto.intermediario.class.must_equal NewClassIntermediario
73
- BrNfe.intermediario_class = BrNfe::Service::Intermediario
74
- end
75
- end
76
- end
77
- end
@@ -1,59 +0,0 @@
1
-
2
- module BrNfeTest
3
- module HelperTest
4
- module HaveRpsTest
5
- class NewRps < BrNfe::Service::Rps
6
- end
7
-
8
- def test_HaveRpsTest_Já_inicia_com_um_rps
9
- subject.class.new.rps.class.must_equal BrNfe::Service::Rps
10
- end
11
-
12
- def test_HaveRpsTest_Mesmo_setando_o_endereço_como_nil_retorna_um_novo_rps
13
- subject.rps = nil
14
- subject.rps.class.must_equal BrNfe::Service::Rps
15
- subject.rps.class.wont_equal rps
16
- end
17
-
18
- def test_HaveRpsTest_deve_manter_o_objeto_rps_se_ja_tiver
19
- subject.rps.must_equal rps
20
- rps.numero = 'nova-www'
21
- subject.rps.numero.must_equal 'nova-www'
22
- end
23
-
24
- def test_HaveRpsTest_Se_setar_o_rps_com_outra_class_deve_ignorar
25
- subject.rps = 7777
26
- subject.rps.must_equal rps
27
- end
28
-
29
- def test_HaveRpsTest_posso_setar_o_rps_com_um_hash_com_os_parametros_do_endereço
30
- rps.assign_attributes(numero: '123456', serie: 'SN')
31
- subject.rps = {numero: '99999', serie: 'sss'}
32
- subject.rps.numero.must_equal '99999'
33
- subject.rps.serie.must_equal 'sss'
34
- end
35
-
36
- def test_HaveRpsTest_posso_setar_o_rps_com_um_bloco
37
- rps.assign_attributes(numero: '123456', serie: 'SN')
38
- subject.rps do |obj_rps|
39
- obj_rps.numero = '99999'
40
- obj_rps.serie = 'sss'
41
- end
42
- subject.rps.numero.must_equal '99999'
43
- subject.rps.serie.must_equal 'sss'
44
- end
45
-
46
- def test_HaveRpsTest_posso_mudar_o_objeto_rps
47
- novo_rps = FactoryGirl.build(:br_nfe_rps)
48
- subject.rps = novo_rps
49
- subject.rps.must_equal novo_rps
50
- end
51
-
52
- def test_HaveRpsTest_posso_modificar_a_class_do_rps
53
- BrNfe.rps_class = NewRps
54
- subject.rps.class.must_equal NewRps
55
- BrNfe.rps_class = BrNfe::Service::Rps
56
- end
57
- end
58
- end
59
- end