emites-client 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +31 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +11 -0
  5. data/Gemfile +4 -0
  6. data/LICENSE.txt +22 -0
  7. data/README.md +366 -0
  8. data/Rakefile +9 -0
  9. data/emites-client.gemspec +37 -0
  10. data/lib/emites.rb +44 -0
  11. data/lib/emites/client.rb +30 -0
  12. data/lib/emites/configuration.rb +12 -0
  13. data/lib/emites/entities/account.rb +8 -0
  14. data/lib/emites/entities/base.rb +9 -0
  15. data/lib/emites/entities/emitter.rb +31 -0
  16. data/lib/emites/entities/nfse.rb +29 -0
  17. data/lib/emites/entities/nfse_status.rb +15 -0
  18. data/lib/emites/entities/nfse_status_transition.rb +14 -0
  19. data/lib/emites/entities/nfse_values.rb +28 -0
  20. data/lib/emites/entities/rps.rb +9 -0
  21. data/lib/emites/entities/taker.rb +20 -0
  22. data/lib/emites/entities/taker_address.rb +21 -0
  23. data/lib/emites/entities/taker_contact.rb +9 -0
  24. data/lib/emites/entities/webhook.rb +9 -0
  25. data/lib/emites/exception.rb +11 -0
  26. data/lib/emites/http.rb +34 -0
  27. data/lib/emites/request.rb +53 -0
  28. data/lib/emites/resources/base.rb +45 -0
  29. data/lib/emites/resources/emitter.rb +98 -0
  30. data/lib/emites/resources/hooks.rb +25 -0
  31. data/lib/emites/resources/nfse.rb +173 -0
  32. data/lib/emites/resources/webhook.rb +84 -0
  33. data/lib/emites/response.rb +38 -0
  34. data/lib/emites/version.rb +3 -0
  35. data/spec/emites/client_spec.rb +45 -0
  36. data/spec/emites/configuration_spec.rb +13 -0
  37. data/spec/emites/entities/account_spec.rb +14 -0
  38. data/spec/emites/entities/base_spec.rb +28 -0
  39. data/spec/emites/entities/emitter_spec.rb +20 -0
  40. data/spec/emites/entities/nfse_spec.rb +148 -0
  41. data/spec/emites/entities/nfse_status_spec.rb +16 -0
  42. data/spec/emites/entities/nfse_status_transition_spec.rb +23 -0
  43. data/spec/emites/entities/nfse_values_spec.rb +19 -0
  44. data/spec/emites/entities/rps_spec.rb +15 -0
  45. data/spec/emites/entities/taker_address_spec.rb +18 -0
  46. data/spec/emites/entities/taker_contact_spec.rb +13 -0
  47. data/spec/emites/entities/taker_spec.rb +18 -0
  48. data/spec/emites/entities/webhook_spec.rb +14 -0
  49. data/spec/emites/exception_spec.rb +21 -0
  50. data/spec/emites/http_spec.rb +62 -0
  51. data/spec/emites/resources/base_spec.rb +96 -0
  52. data/spec/emites/resources/emitter_spec.rb +119 -0
  53. data/spec/emites/resources/nfse_spec.rb +214 -0
  54. data/spec/emites/resources/webhook_spec.rb +62 -0
  55. data/spec/emites_spec.rb +63 -0
  56. data/spec/fixtures/certificate.pfx +0 -0
  57. data/spec/shared_examples/bound_notifiers.rb +8 -0
  58. data/spec/shared_examples/entity_attributes.rb +9 -0
  59. data/spec/spec_helper.rb +38 -0
  60. data/spec/support/matchers/have_attr_accessor.rb +18 -0
  61. data/spec/vcr_cassettes/client/authenticated/false.yml +48 -0
  62. data/spec/vcr_cassettes/client/authenticated/true.yml +259 -0
  63. data/spec/vcr_cassettes/emitters/create/error.yml +57 -0
  64. data/spec/vcr_cassettes/emitters/create/success.yml +80 -0
  65. data/spec/vcr_cassettes/emitters/destroy/error.yml +47 -0
  66. data/spec/vcr_cassettes/emitters/destroy/success.yml +44 -0
  67. data/spec/vcr_cassettes/emitters/info/error.yml +47 -0
  68. data/spec/vcr_cassettes/emitters/info/success.yml +77 -0
  69. data/spec/vcr_cassettes/emitters/list/success.yml +135 -0
  70. data/spec/vcr_cassettes/emitters/partial_update/success.yml +90 -0
  71. data/spec/vcr_cassettes/emitters/search/returns_empty.yml +47 -0
  72. data/spec/vcr_cassettes/emitters/search/success.yml +76 -0
  73. data/spec/vcr_cassettes/nfse/cancel/success.yml +49 -0
  74. data/spec/vcr_cassettes/nfse/create/given_taker.yml +109 -0
  75. data/spec/vcr_cassettes/nfse/create/incomplete.yml +73 -0
  76. data/spec/vcr_cassettes/nfse/create/success.yml +112 -0
  77. data/spec/vcr_cassettes/nfse/create/without_taker.yml +73 -0
  78. data/spec/vcr_cassettes/nfse/destroy/success.yml +46 -0
  79. data/spec/vcr_cassettes/nfse/history/success.yml +83 -0
  80. data/spec/vcr_cassettes/nfse/info/success.yml +113 -0
  81. data/spec/vcr_cassettes/nfse/list/success.yml +1353 -0
  82. data/spec/vcr_cassettes/nfse/pdf/success.yml +48 -0
  83. data/spec/vcr_cassettes/nfse/status/success.yml +51 -0
  84. data/spec/vcr_cassettes/nfse/update/success.yml +113 -0
  85. data/spec/vcr_cassettes/nfse/xml/success.yml +48 -0
  86. data/spec/vcr_cassettes/webhooks/create/success.yml +53 -0
  87. data/spec/vcr_cassettes/webhooks/destroy/success.yml +46 -0
  88. data/spec/vcr_cassettes/webhooks/list/success.yml +53 -0
  89. data/spec/vcr_cassettes/webhooks/update/success.yml +52 -0
  90. metadata +390 -0
metadata ADDED
@@ -0,0 +1,390 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: emites-client
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Leandro Thimóteo
8
+ - Rodrigo Tassinari
9
+ - Vagner Zampieri
10
+ - Wanderson Policarpo
11
+ autorequire:
12
+ bindir: bin
13
+ cert_chain: []
14
+ date: 2015-08-18 00:00:00.000000000 Z
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: typhoeus
18
+ requirement: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - "~>"
21
+ - !ruby/object:Gem::Version
22
+ version: '0.7'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '0.7'
30
+ - !ruby/object:Gem::Dependency
31
+ name: multi_json
32
+ requirement: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - "~>"
35
+ - !ruby/object:Gem::Version
36
+ version: '1.9'
37
+ type: :runtime
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: '1.9'
44
+ - !ruby/object:Gem::Dependency
45
+ name: virtus
46
+ requirement: !ruby/object:Gem::Requirement
47
+ requirements:
48
+ - - "~>"
49
+ - !ruby/object:Gem::Version
50
+ version: '1.0'
51
+ type: :runtime
52
+ prerelease: false
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - "~>"
56
+ - !ruby/object:Gem::Version
57
+ version: '1.0'
58
+ - !ruby/object:Gem::Dependency
59
+ name: wisper
60
+ requirement: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - "~>"
63
+ - !ruby/object:Gem::Version
64
+ version: '1.6'
65
+ type: :runtime
66
+ prerelease: false
67
+ version_requirements: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - "~>"
70
+ - !ruby/object:Gem::Version
71
+ version: '1.6'
72
+ - !ruby/object:Gem::Dependency
73
+ name: bundler
74
+ requirement: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - "~>"
77
+ - !ruby/object:Gem::Version
78
+ version: '1.7'
79
+ type: :development
80
+ prerelease: false
81
+ version_requirements: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - "~>"
84
+ - !ruby/object:Gem::Version
85
+ version: '1.7'
86
+ - !ruby/object:Gem::Dependency
87
+ name: rake
88
+ requirement: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - "~>"
91
+ - !ruby/object:Gem::Version
92
+ version: '10.0'
93
+ type: :development
94
+ prerelease: false
95
+ version_requirements: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: '10.0'
100
+ - !ruby/object:Gem::Dependency
101
+ name: rdoc
102
+ requirement: !ruby/object:Gem::Requirement
103
+ requirements:
104
+ - - "~>"
105
+ - !ruby/object:Gem::Version
106
+ version: '4.0'
107
+ type: :development
108
+ prerelease: false
109
+ version_requirements: !ruby/object:Gem::Requirement
110
+ requirements:
111
+ - - "~>"
112
+ - !ruby/object:Gem::Version
113
+ version: '4.0'
114
+ - !ruby/object:Gem::Dependency
115
+ name: rspec
116
+ requirement: !ruby/object:Gem::Requirement
117
+ requirements:
118
+ - - "~>"
119
+ - !ruby/object:Gem::Version
120
+ version: '3.2'
121
+ type: :development
122
+ prerelease: false
123
+ version_requirements: !ruby/object:Gem::Requirement
124
+ requirements:
125
+ - - "~>"
126
+ - !ruby/object:Gem::Version
127
+ version: '3.2'
128
+ - !ruby/object:Gem::Dependency
129
+ name: pry
130
+ requirement: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - "~>"
133
+ - !ruby/object:Gem::Version
134
+ version: '0.10'
135
+ type: :development
136
+ prerelease: false
137
+ version_requirements: !ruby/object:Gem::Requirement
138
+ requirements:
139
+ - - "~>"
140
+ - !ruby/object:Gem::Version
141
+ version: '0.10'
142
+ - !ruby/object:Gem::Dependency
143
+ name: pry-nav
144
+ requirement: !ruby/object:Gem::Requirement
145
+ requirements:
146
+ - - "~>"
147
+ - !ruby/object:Gem::Version
148
+ version: '0.2'
149
+ type: :development
150
+ prerelease: false
151
+ version_requirements: !ruby/object:Gem::Requirement
152
+ requirements:
153
+ - - "~>"
154
+ - !ruby/object:Gem::Version
155
+ version: '0.2'
156
+ - !ruby/object:Gem::Dependency
157
+ name: awesome_print
158
+ requirement: !ruby/object:Gem::Requirement
159
+ requirements:
160
+ - - "~>"
161
+ - !ruby/object:Gem::Version
162
+ version: '1.1'
163
+ type: :development
164
+ prerelease: false
165
+ version_requirements: !ruby/object:Gem::Requirement
166
+ requirements:
167
+ - - "~>"
168
+ - !ruby/object:Gem::Version
169
+ version: '1.1'
170
+ - !ruby/object:Gem::Dependency
171
+ name: simplecov
172
+ requirement: !ruby/object:Gem::Requirement
173
+ requirements:
174
+ - - "~>"
175
+ - !ruby/object:Gem::Version
176
+ version: '0.9'
177
+ type: :development
178
+ prerelease: false
179
+ version_requirements: !ruby/object:Gem::Requirement
180
+ requirements:
181
+ - - "~>"
182
+ - !ruby/object:Gem::Version
183
+ version: '0.9'
184
+ - !ruby/object:Gem::Dependency
185
+ name: codeclimate-test-reporter
186
+ requirement: !ruby/object:Gem::Requirement
187
+ requirements:
188
+ - - "~>"
189
+ - !ruby/object:Gem::Version
190
+ version: '0.4'
191
+ type: :development
192
+ prerelease: false
193
+ version_requirements: !ruby/object:Gem::Requirement
194
+ requirements:
195
+ - - "~>"
196
+ - !ruby/object:Gem::Version
197
+ version: '0.4'
198
+ - !ruby/object:Gem::Dependency
199
+ name: vcr
200
+ requirement: !ruby/object:Gem::Requirement
201
+ requirements:
202
+ - - "~>"
203
+ - !ruby/object:Gem::Version
204
+ version: '2.9'
205
+ type: :development
206
+ prerelease: false
207
+ version_requirements: !ruby/object:Gem::Requirement
208
+ requirements:
209
+ - - "~>"
210
+ - !ruby/object:Gem::Version
211
+ version: '2.9'
212
+ description: Official Ruby client for the Emites API. Emites is a system for creating
213
+ "notas fiscais eletrônicas" (NFe / NFSe) in Brazil.
214
+ email:
215
+ - leandro.thimoteo@myfreecomm.com.br
216
+ - rodrigo.tassinari@myfreecomm.com.br
217
+ - vagner.zampieri@myfreecomm.com.br
218
+ - wanderson.policarpo@myfreecomm.com.br
219
+ executables: []
220
+ extensions: []
221
+ extra_rdoc_files: []
222
+ files:
223
+ - ".gitignore"
224
+ - ".rspec"
225
+ - ".travis.yml"
226
+ - Gemfile
227
+ - LICENSE.txt
228
+ - README.md
229
+ - Rakefile
230
+ - emites-client.gemspec
231
+ - lib/emites.rb
232
+ - lib/emites/client.rb
233
+ - lib/emites/configuration.rb
234
+ - lib/emites/entities/account.rb
235
+ - lib/emites/entities/base.rb
236
+ - lib/emites/entities/emitter.rb
237
+ - lib/emites/entities/nfse.rb
238
+ - lib/emites/entities/nfse_status.rb
239
+ - lib/emites/entities/nfse_status_transition.rb
240
+ - lib/emites/entities/nfse_values.rb
241
+ - lib/emites/entities/rps.rb
242
+ - lib/emites/entities/taker.rb
243
+ - lib/emites/entities/taker_address.rb
244
+ - lib/emites/entities/taker_contact.rb
245
+ - lib/emites/entities/webhook.rb
246
+ - lib/emites/exception.rb
247
+ - lib/emites/http.rb
248
+ - lib/emites/request.rb
249
+ - lib/emites/resources/base.rb
250
+ - lib/emites/resources/emitter.rb
251
+ - lib/emites/resources/hooks.rb
252
+ - lib/emites/resources/nfse.rb
253
+ - lib/emites/resources/webhook.rb
254
+ - lib/emites/response.rb
255
+ - lib/emites/version.rb
256
+ - spec/emites/client_spec.rb
257
+ - spec/emites/configuration_spec.rb
258
+ - spec/emites/entities/account_spec.rb
259
+ - spec/emites/entities/base_spec.rb
260
+ - spec/emites/entities/emitter_spec.rb
261
+ - spec/emites/entities/nfse_spec.rb
262
+ - spec/emites/entities/nfse_status_spec.rb
263
+ - spec/emites/entities/nfse_status_transition_spec.rb
264
+ - spec/emites/entities/nfse_values_spec.rb
265
+ - spec/emites/entities/rps_spec.rb
266
+ - spec/emites/entities/taker_address_spec.rb
267
+ - spec/emites/entities/taker_contact_spec.rb
268
+ - spec/emites/entities/taker_spec.rb
269
+ - spec/emites/entities/webhook_spec.rb
270
+ - spec/emites/exception_spec.rb
271
+ - spec/emites/http_spec.rb
272
+ - spec/emites/resources/base_spec.rb
273
+ - spec/emites/resources/emitter_spec.rb
274
+ - spec/emites/resources/nfse_spec.rb
275
+ - spec/emites/resources/webhook_spec.rb
276
+ - spec/emites_spec.rb
277
+ - spec/fixtures/certificate.pfx
278
+ - spec/shared_examples/bound_notifiers.rb
279
+ - spec/shared_examples/entity_attributes.rb
280
+ - spec/spec_helper.rb
281
+ - spec/support/matchers/have_attr_accessor.rb
282
+ - spec/vcr_cassettes/client/authenticated/false.yml
283
+ - spec/vcr_cassettes/client/authenticated/true.yml
284
+ - spec/vcr_cassettes/emitters/create/error.yml
285
+ - spec/vcr_cassettes/emitters/create/success.yml
286
+ - spec/vcr_cassettes/emitters/destroy/error.yml
287
+ - spec/vcr_cassettes/emitters/destroy/success.yml
288
+ - spec/vcr_cassettes/emitters/info/error.yml
289
+ - spec/vcr_cassettes/emitters/info/success.yml
290
+ - spec/vcr_cassettes/emitters/list/success.yml
291
+ - spec/vcr_cassettes/emitters/partial_update/success.yml
292
+ - spec/vcr_cassettes/emitters/search/returns_empty.yml
293
+ - spec/vcr_cassettes/emitters/search/success.yml
294
+ - spec/vcr_cassettes/nfse/cancel/success.yml
295
+ - spec/vcr_cassettes/nfse/create/given_taker.yml
296
+ - spec/vcr_cassettes/nfse/create/incomplete.yml
297
+ - spec/vcr_cassettes/nfse/create/success.yml
298
+ - spec/vcr_cassettes/nfse/create/without_taker.yml
299
+ - spec/vcr_cassettes/nfse/destroy/success.yml
300
+ - spec/vcr_cassettes/nfse/history/success.yml
301
+ - spec/vcr_cassettes/nfse/info/success.yml
302
+ - spec/vcr_cassettes/nfse/list/success.yml
303
+ - spec/vcr_cassettes/nfse/pdf/success.yml
304
+ - spec/vcr_cassettes/nfse/status/success.yml
305
+ - spec/vcr_cassettes/nfse/update/success.yml
306
+ - spec/vcr_cassettes/nfse/xml/success.yml
307
+ - spec/vcr_cassettes/webhooks/create/success.yml
308
+ - spec/vcr_cassettes/webhooks/destroy/success.yml
309
+ - spec/vcr_cassettes/webhooks/list/success.yml
310
+ - spec/vcr_cassettes/webhooks/update/success.yml
311
+ homepage: https://github.com/myfreecomm/emites-client-ruby
312
+ licenses:
313
+ - MIT
314
+ metadata: {}
315
+ post_install_message:
316
+ rdoc_options: []
317
+ require_paths:
318
+ - lib
319
+ required_ruby_version: !ruby/object:Gem::Requirement
320
+ requirements:
321
+ - - ">="
322
+ - !ruby/object:Gem::Version
323
+ version: '0'
324
+ required_rubygems_version: !ruby/object:Gem::Requirement
325
+ requirements:
326
+ - - ">="
327
+ - !ruby/object:Gem::Version
328
+ version: '0'
329
+ requirements: []
330
+ rubyforge_project:
331
+ rubygems_version: 2.4.5
332
+ signing_key:
333
+ specification_version: 4
334
+ summary: Official Ruby client for the Emites API.
335
+ test_files:
336
+ - spec/emites/client_spec.rb
337
+ - spec/emites/configuration_spec.rb
338
+ - spec/emites/entities/account_spec.rb
339
+ - spec/emites/entities/base_spec.rb
340
+ - spec/emites/entities/emitter_spec.rb
341
+ - spec/emites/entities/nfse_spec.rb
342
+ - spec/emites/entities/nfse_status_spec.rb
343
+ - spec/emites/entities/nfse_status_transition_spec.rb
344
+ - spec/emites/entities/nfse_values_spec.rb
345
+ - spec/emites/entities/rps_spec.rb
346
+ - spec/emites/entities/taker_address_spec.rb
347
+ - spec/emites/entities/taker_contact_spec.rb
348
+ - spec/emites/entities/taker_spec.rb
349
+ - spec/emites/entities/webhook_spec.rb
350
+ - spec/emites/exception_spec.rb
351
+ - spec/emites/http_spec.rb
352
+ - spec/emites/resources/base_spec.rb
353
+ - spec/emites/resources/emitter_spec.rb
354
+ - spec/emites/resources/nfse_spec.rb
355
+ - spec/emites/resources/webhook_spec.rb
356
+ - spec/emites_spec.rb
357
+ - spec/fixtures/certificate.pfx
358
+ - spec/shared_examples/bound_notifiers.rb
359
+ - spec/shared_examples/entity_attributes.rb
360
+ - spec/spec_helper.rb
361
+ - spec/support/matchers/have_attr_accessor.rb
362
+ - spec/vcr_cassettes/client/authenticated/false.yml
363
+ - spec/vcr_cassettes/client/authenticated/true.yml
364
+ - spec/vcr_cassettes/emitters/create/error.yml
365
+ - spec/vcr_cassettes/emitters/create/success.yml
366
+ - spec/vcr_cassettes/emitters/destroy/error.yml
367
+ - spec/vcr_cassettes/emitters/destroy/success.yml
368
+ - spec/vcr_cassettes/emitters/info/error.yml
369
+ - spec/vcr_cassettes/emitters/info/success.yml
370
+ - spec/vcr_cassettes/emitters/list/success.yml
371
+ - spec/vcr_cassettes/emitters/partial_update/success.yml
372
+ - spec/vcr_cassettes/emitters/search/returns_empty.yml
373
+ - spec/vcr_cassettes/emitters/search/success.yml
374
+ - spec/vcr_cassettes/nfse/cancel/success.yml
375
+ - spec/vcr_cassettes/nfse/create/given_taker.yml
376
+ - spec/vcr_cassettes/nfse/create/incomplete.yml
377
+ - spec/vcr_cassettes/nfse/create/success.yml
378
+ - spec/vcr_cassettes/nfse/create/without_taker.yml
379
+ - spec/vcr_cassettes/nfse/destroy/success.yml
380
+ - spec/vcr_cassettes/nfse/history/success.yml
381
+ - spec/vcr_cassettes/nfse/info/success.yml
382
+ - spec/vcr_cassettes/nfse/list/success.yml
383
+ - spec/vcr_cassettes/nfse/pdf/success.yml
384
+ - spec/vcr_cassettes/nfse/status/success.yml
385
+ - spec/vcr_cassettes/nfse/update/success.yml
386
+ - spec/vcr_cassettes/nfse/xml/success.yml
387
+ - spec/vcr_cassettes/webhooks/create/success.yml
388
+ - spec/vcr_cassettes/webhooks/destroy/success.yml
389
+ - spec/vcr_cassettes/webhooks/list/success.yml
390
+ - spec/vcr_cassettes/webhooks/update/success.yml