quaderno 1.11.2 → 1.12.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +53 -1
  4. data/VERSION +1 -1
  5. data/changelog.md +3 -0
  6. data/lib/quaderno-ruby/base.rb +12 -2
  7. data/lib/quaderno-ruby/behavior/crud.rb +56 -11
  8. data/lib/quaderno-ruby/behavior/deliver.rb +10 -2
  9. data/lib/quaderno-ruby/behavior/payment.rb +23 -4
  10. data/lib/quaderno-ruby/behavior/retrieve.rb +11 -2
  11. data/lib/quaderno-ruby/collection.rb +22 -0
  12. data/lib/quaderno-ruby/helpers/authentication.rb +26 -0
  13. data/lib/quaderno-ruby.rb +4 -1
  14. data/quaderno.gemspec +16 -5
  15. data/test/fixtures/quaderno_cassettes/all_contacts.yml +11 -282
  16. data/test/fixtures/quaderno_cassettes/all_contacts_by_access_token.yml +56 -0
  17. data/test/fixtures/quaderno_cassettes/all_contacts_by_authentication_token.yml +57 -0
  18. data/test/fixtures/quaderno_cassettes/all_estimates.yml +10 -14
  19. data/test/fixtures/quaderno_cassettes/all_expenses.yml +14 -47
  20. data/test/fixtures/quaderno_cassettes/all_invoices.yml +13 -2873
  21. data/test/fixtures/quaderno_cassettes/all_items.yml +8 -8
  22. data/test/fixtures/quaderno_cassettes/all_receipts.yml +11 -14
  23. data/test/fixtures/quaderno_cassettes/all_webhooks.yml +40 -36
  24. data/test/fixtures/quaderno_cassettes/create_estimate_on_downgraded_API.yml +46 -318
  25. data/test/fixtures/quaderno_cassettes/create_expense_on_downgraded_API.yml +125 -357
  26. data/test/fixtures/quaderno_cassettes/create_invoice_on_downgraded_API.yml +45 -318
  27. data/test/fixtures/quaderno_cassettes/create_receipt_on_downgraded_API.yml +56 -53
  28. data/test/fixtures/quaderno_cassettes/deleted_contact.yml +40 -592
  29. data/test/fixtures/quaderno_cassettes/deleted_contact_by_access_token.yml +199 -0
  30. data/test/fixtures/quaderno_cassettes/deleted_contact_by_authentication_token.yml +199 -0
  31. data/test/fixtures/quaderno_cassettes/deleted_estimate.yml +40 -334
  32. data/test/fixtures/quaderno_cassettes/deleted_expense.yml +43 -364
  33. data/test/fixtures/quaderno_cassettes/deleted_invoice.yml +44 -3199
  34. data/test/fixtures/quaderno_cassettes/deleted_item.yml +22 -22
  35. data/test/fixtures/quaderno_cassettes/deleted_receipt.yml +43 -42
  36. data/test/fixtures/quaderno_cassettes/deleted_webhook.yml +48 -44
  37. data/test/fixtures/quaderno_cassettes/delivered_estimate.yml +25 -32
  38. data/test/fixtures/quaderno_cassettes/delivered_invoice.yml +29 -2888
  39. data/test/fixtures/quaderno_cassettes/delivered_receipt.yml +29 -29
  40. data/test/fixtures/quaderno_cassettes/evidence_invoice.yml +19 -354
  41. data/test/fixtures/quaderno_cassettes/found_contact.yml +19 -291
  42. data/test/fixtures/quaderno_cassettes/found_contact_by_access_token.yml +99 -0
  43. data/test/fixtures/quaderno_cassettes/found_contact_by_authentication_token.yml +100 -0
  44. data/test/fixtures/quaderno_cassettes/found_estimate.yml +20 -24
  45. data/test/fixtures/quaderno_cassettes/found_expense.yml +24 -94
  46. data/test/fixtures/quaderno_cassettes/found_invoice.yml +22 -2886
  47. data/test/fixtures/quaderno_cassettes/found_item.yml +18 -16
  48. data/test/fixtures/quaderno_cassettes/found_receipt.yml +21 -24
  49. data/test/fixtures/quaderno_cassettes/found_webhook.yml +24 -22
  50. data/test/fixtures/quaderno_cassettes/new_contact.yml +9 -7
  51. data/test/fixtures/quaderno_cassettes/new_contact_by_access_token.yml +48 -0
  52. data/test/fixtures/quaderno_cassettes/new_contact_by_authentication_token.yml +48 -0
  53. data/test/fixtures/quaderno_cassettes/new_estimate.yml +29 -320
  54. data/test/fixtures/quaderno_cassettes/new_evidence.yml +10 -8
  55. data/test/fixtures/quaderno_cassettes/new_expense.yml +42 -363
  56. data/test/fixtures/quaderno_cassettes/new_invoice.yml +29 -324
  57. data/test/fixtures/quaderno_cassettes/new_item.yml +10 -8
  58. data/test/fixtures/quaderno_cassettes/new_receipt.yml +28 -24
  59. data/test/fixtures/quaderno_cassettes/new_webhook.yml +16 -14
  60. data/test/fixtures/quaderno_cassettes/paid_expense.yml +22 -52
  61. data/test/fixtures/quaderno_cassettes/paid_invoice.yml +22 -2879
  62. data/test/fixtures/quaderno_cassettes/rate_limit.yml +5 -5
  63. data/test/fixtures/quaderno_cassettes/unpay_an_expense.yml +29 -61
  64. data/test/fixtures/quaderno_cassettes/unpay_an_invoice.yml +28 -2888
  65. data/test/fixtures/quaderno_cassettes/updated_contact.yml +22 -292
  66. data/test/fixtures/quaderno_cassettes/updated_contact_by_access_token.yml +101 -0
  67. data/test/fixtures/quaderno_cassettes/updated_contact_by_authentication_token.yml +102 -0
  68. data/test/fixtures/quaderno_cassettes/updated_estimate.yml +44 -353
  69. data/test/fixtures/quaderno_cassettes/updated_expense.yml +43 -346
  70. data/test/fixtures/quaderno_cassettes/updated_invoice.yml +43 -361
  71. data/test/fixtures/quaderno_cassettes/updated_item.yml +21 -17
  72. data/test/fixtures/quaderno_cassettes/updated_receipt.yml +47 -41
  73. data/test/fixtures/quaderno_cassettes/updated_webhook.yml +35 -31
  74. data/test/helper.rb +2 -1
  75. data/test/unit/test_quaderno_contacts.rb +1 -1
  76. data/test/unit/test_quaderno_contacts_thread_safe.rb +104 -0
  77. data/test/unit/test_quaderno_expenses.rb +5 -5
  78. metadata +15 -4
  79. data/test/fixtures/quaderno_cassettes/calculate_tax.yml +0 -85
  80. data/test/fixtures/quaderno_cassettes/wrong_token.yml +0 -36
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: quaderno
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.11.2
4
+ version: 1.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Recrea
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-03-14 00:00:00.000000000 Z
11
+ date: 2017-06-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty
@@ -74,6 +74,7 @@ files:
74
74
  - lib/quaderno-ruby/behavior/deliver.rb
75
75
  - lib/quaderno-ruby/behavior/payment.rb
76
76
  - lib/quaderno-ruby/behavior/retrieve.rb
77
+ - lib/quaderno-ruby/collection.rb
77
78
  - lib/quaderno-ruby/contact.rb
78
79
  - lib/quaderno-ruby/credit.rb
79
80
  - lib/quaderno-ruby/document_item.rb
@@ -81,6 +82,7 @@ files:
81
82
  - lib/quaderno-ruby/evidence.rb
82
83
  - lib/quaderno-ruby/exceptions/exceptions.rb
83
84
  - lib/quaderno-ruby/expense.rb
85
+ - lib/quaderno-ruby/helpers/authentication.rb
84
86
  - lib/quaderno-ruby/invoice.rb
85
87
  - lib/quaderno-ruby/item.rb
86
88
  - lib/quaderno-ruby/payment.rb
@@ -91,18 +93,21 @@ files:
91
93
  - quaderno.gemspec
92
94
  - test/fixtures/quaderno_cassettes/.DS_Store
93
95
  - test/fixtures/quaderno_cassettes/all_contacts.yml
96
+ - test/fixtures/quaderno_cassettes/all_contacts_by_access_token.yml
97
+ - test/fixtures/quaderno_cassettes/all_contacts_by_authentication_token.yml
94
98
  - test/fixtures/quaderno_cassettes/all_estimates.yml
95
99
  - test/fixtures/quaderno_cassettes/all_expenses.yml
96
100
  - test/fixtures/quaderno_cassettes/all_invoices.yml
97
101
  - test/fixtures/quaderno_cassettes/all_items.yml
98
102
  - test/fixtures/quaderno_cassettes/all_receipts.yml
99
103
  - test/fixtures/quaderno_cassettes/all_webhooks.yml
100
- - test/fixtures/quaderno_cassettes/calculate_tax.yml
101
104
  - test/fixtures/quaderno_cassettes/create_estimate_on_downgraded_API.yml
102
105
  - test/fixtures/quaderno_cassettes/create_expense_on_downgraded_API.yml
103
106
  - test/fixtures/quaderno_cassettes/create_invoice_on_downgraded_API.yml
104
107
  - test/fixtures/quaderno_cassettes/create_receipt_on_downgraded_API.yml
105
108
  - test/fixtures/quaderno_cassettes/deleted_contact.yml
109
+ - test/fixtures/quaderno_cassettes/deleted_contact_by_access_token.yml
110
+ - test/fixtures/quaderno_cassettes/deleted_contact_by_authentication_token.yml
106
111
  - test/fixtures/quaderno_cassettes/deleted_estimate.yml
107
112
  - test/fixtures/quaderno_cassettes/deleted_expense.yml
108
113
  - test/fixtures/quaderno_cassettes/deleted_invoice.yml
@@ -114,6 +119,8 @@ files:
114
119
  - test/fixtures/quaderno_cassettes/delivered_receipt.yml
115
120
  - test/fixtures/quaderno_cassettes/evidence_invoice.yml
116
121
  - test/fixtures/quaderno_cassettes/found_contact.yml
122
+ - test/fixtures/quaderno_cassettes/found_contact_by_access_token.yml
123
+ - test/fixtures/quaderno_cassettes/found_contact_by_authentication_token.yml
117
124
  - test/fixtures/quaderno_cassettes/found_estimate.yml
118
125
  - test/fixtures/quaderno_cassettes/found_expense.yml
119
126
  - test/fixtures/quaderno_cassettes/found_invoice.yml
@@ -121,6 +128,8 @@ files:
121
128
  - test/fixtures/quaderno_cassettes/found_receipt.yml
122
129
  - test/fixtures/quaderno_cassettes/found_webhook.yml
123
130
  - test/fixtures/quaderno_cassettes/new_contact.yml
131
+ - test/fixtures/quaderno_cassettes/new_contact_by_access_token.yml
132
+ - test/fixtures/quaderno_cassettes/new_contact_by_authentication_token.yml
124
133
  - test/fixtures/quaderno_cassettes/new_estimate.yml
125
134
  - test/fixtures/quaderno_cassettes/new_evidence.yml
126
135
  - test/fixtures/quaderno_cassettes/new_expense.yml
@@ -134,6 +143,8 @@ files:
134
143
  - test/fixtures/quaderno_cassettes/unpay_an_expense.yml
135
144
  - test/fixtures/quaderno_cassettes/unpay_an_invoice.yml
136
145
  - test/fixtures/quaderno_cassettes/updated_contact.yml
146
+ - test/fixtures/quaderno_cassettes/updated_contact_by_access_token.yml
147
+ - test/fixtures/quaderno_cassettes/updated_contact_by_authentication_token.yml
137
148
  - test/fixtures/quaderno_cassettes/updated_estimate.yml
138
149
  - test/fixtures/quaderno_cassettes/updated_expense.yml
139
150
  - test/fixtures/quaderno_cassettes/updated_invoice.yml
@@ -142,9 +153,9 @@ files:
142
153
  - test/fixtures/quaderno_cassettes/updated_webhook.yml
143
154
  - test/fixtures/quaderno_cassettes/validate_invalid_VAT_number.yml
144
155
  - test/fixtures/quaderno_cassettes/validate_valid_VAT_number.yml
145
- - test/fixtures/quaderno_cassettes/wrong_token.yml
146
156
  - test/helper.rb
147
157
  - test/unit/test_quaderno_contacts.rb
158
+ - test/unit/test_quaderno_contacts_thread_safe.rb
148
159
  - test/unit/test_quaderno_estimates.rb
149
160
  - test/unit/test_quaderno_evidences.rb
150
161
  - test/unit/test_quaderno_expenses.rb
@@ -1,85 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: http://sk_test_B7xXrTspfeGukQqGN1pK@development.lvh.me:3000/api/taxes/calculate.json?country=ES&postal_code=08080
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- authorization:
11
- - Basic c2tfdGVzdF9CN3hYclRzcGZlR3VrUXFHTjFwSzo=
12
- response:
13
- status:
14
- code: 200
15
- message: OK
16
- headers:
17
- x-frame-options:
18
- - ALLOWALL
19
- x-ratelimit-limit:
20
- - '2000'
21
- x-ratelimit-reset:
22
- - '1'
23
- x-ratelimit-remaining:
24
- - '88'
25
- content-type:
26
- - application/json; charset=utf-8
27
- etag:
28
- - '"f296f1067b6655473bbfc04913d2a531"'
29
- cache-control:
30
- - max-age=0, private, must-revalidate
31
- x-request-id:
32
- - ead16521-21c7-4972-a9a6-971887664731
33
- x-runtime:
34
- - '0.224638'
35
- connection:
36
- - close
37
- server:
38
- - thin
39
- body:
40
- encoding: UTF-8
41
- string: '{"name":"IVA","rate":21.0,"country":"ES","notes":null}'
42
- http_version: '1.1'
43
- recorded_at: Thu, 23 Jun 2016 11:28:23 GMT
44
- - request:
45
- method: get
46
- uri: http://sk_test_B7xXrTspfeGukQqGN1pK@development.lvh.me:3000/api/taxes/calculate.json?country=ES&postal_code=35007
47
- body:
48
- encoding: US-ASCII
49
- string: ''
50
- headers:
51
- authorization:
52
- - Basic c2tfdGVzdF9CN3hYclRzcGZlR3VrUXFHTjFwSzo=
53
- response:
54
- status:
55
- code: 200
56
- message: OK
57
- headers:
58
- x-frame-options:
59
- - ALLOWALL
60
- x-ratelimit-limit:
61
- - '2000'
62
- x-ratelimit-reset:
63
- - '1'
64
- x-ratelimit-remaining:
65
- - '87'
66
- content-type:
67
- - application/json; charset=utf-8
68
- etag:
69
- - '"efcc87b7e1c672ccb82f88969f3ee97a"'
70
- cache-control:
71
- - max-age=0, private, must-revalidate
72
- x-request-id:
73
- - 5e3cfdff-e027-4fb5-942e-6d1e1144d4ff
74
- x-runtime:
75
- - '0.210198'
76
- connection:
77
- - close
78
- server:
79
- - thin
80
- body:
81
- encoding: UTF-8
82
- string: '{"name":"IVA","rate":0.0,"country":"ES","notes":null}'
83
- http_version: '1.1'
84
- recorded_at: Thu, 23 Jun 2016 11:28:23 GMT
85
- recorded_with: VCR 2.9.2
@@ -1,36 +0,0 @@
1
- ---
2
- http_interactions:
3
- - request:
4
- method: get
5
- uri: http://7h15154f4k370k3n@development.lvh.me:3000/api/taxes/calculate.json?country=ES&postal_code=08080
6
- body:
7
- encoding: US-ASCII
8
- string: ''
9
- headers:
10
- authorization:
11
- - Basic N2gxNTE1NGY0azM3MGszbjo=
12
- response:
13
- status:
14
- code: 401
15
- message: Unauthorized
16
- headers:
17
- x-frame-options:
18
- - ALLOWALL
19
- content-type:
20
- - application/json; charset=utf-8
21
- cache-control:
22
- - no-cache
23
- x-request-id:
24
- - 97610b4b-4ca4-4c71-84db-ce9eb7daf230
25
- x-runtime:
26
- - '0.058704'
27
- connection:
28
- - close
29
- server:
30
- - thin
31
- body:
32
- encoding: UTF-8
33
- string: '{"error":"Wrong API key or the user does not exist."}'
34
- http_version: '1.1'
35
- recorded_at: Thu, 23 Jun 2016 11:28:24 GMT
36
- recorded_with: VCR 2.9.2