quaderno 1.9.1 → 1.9.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +6 -6
  3. data/Gemfile.lock +8 -5
  4. data/README.md +7 -1
  5. data/VERSION +1 -1
  6. data/changelog.md +5 -0
  7. data/lib/quaderno-ruby/behavior/crud.rb +30 -36
  8. data/lib/quaderno-ruby/behavior/payment.rb +12 -19
  9. data/lib/quaderno-ruby/behavior/retrieve.rb +20 -0
  10. data/lib/quaderno-ruby/contact.rb +1 -0
  11. data/lib/quaderno-ruby/payment.rb +0 -2
  12. data/lib/quaderno-ruby/tax.rb +3 -3
  13. data/lib/quaderno-ruby/webhook.rb +0 -2
  14. data/lib/quaderno-ruby.rb +1 -1
  15. data/quaderno.gemspec +15 -3
  16. data/test/fixtures/quaderno_cassettes/all_contacts.yml +295 -31
  17. data/test/fixtures/quaderno_cassettes/all_estimates.yml +28 -36
  18. data/test/fixtures/quaderno_cassettes/all_expenses.yml +60 -34
  19. data/test/fixtures/quaderno_cassettes/all_invoices.yml +2888 -36
  20. data/test/fixtures/quaderno_cassettes/all_items.yml +22 -27
  21. data/test/fixtures/quaderno_cassettes/all_receipts.yml +56 -0
  22. data/test/fixtures/quaderno_cassettes/all_webhooks.yml +98 -126
  23. data/test/fixtures/quaderno_cassettes/calculate_tax.yml +38 -62
  24. data/test/fixtures/quaderno_cassettes/create_estimate_on_downgraded_API.yml +428 -0
  25. data/test/fixtures/quaderno_cassettes/create_expense_on_downgraded_API.yml +510 -0
  26. data/test/fixtures/quaderno_cassettes/create_invoice_on_downgraded_API.yml +432 -0
  27. data/test/fixtures/quaderno_cassettes/create_receipt_on_downgraded_API.yml +193 -0
  28. data/test/fixtures/quaderno_cassettes/deleted_contact.yml +642 -113
  29. data/test/fixtures/quaderno_cassettes/deleted_estimate.yml +385 -120
  30. data/test/fixtures/quaderno_cassettes/deleted_expense.yml +414 -118
  31. data/test/fixtures/quaderno_cassettes/deleted_invoice.yml +3249 -120
  32. data/test/fixtures/quaderno_cassettes/deleted_item.yml +60 -75
  33. data/test/fixtures/quaderno_cassettes/deleted_receipt.yml +222 -0
  34. data/test/fixtures/quaderno_cassettes/deleted_webhook.yml +120 -152
  35. data/test/fixtures/quaderno_cassettes/delivered_estimate.yml +76 -89
  36. data/test/fixtures/quaderno_cassettes/delivered_invoice.yml +2935 -89
  37. data/test/fixtures/quaderno_cassettes/delivered_receipt.yml +140 -0
  38. data/test/fixtures/quaderno_cassettes/found_contact.yml +319 -60
  39. data/test/fixtures/quaderno_cassettes/found_estimate.yml +53 -69
  40. data/test/fixtures/quaderno_cassettes/found_expense.yml +121 -65
  41. data/test/fixtures/quaderno_cassettes/found_invoice.yml +2916 -67
  42. data/test/fixtures/quaderno_cassettes/found_item.yml +50 -60
  43. data/test/fixtures/quaderno_cassettes/found_receipt.yml +101 -0
  44. data/test/fixtures/quaderno_cassettes/found_webhook.yml +60 -76
  45. data/test/fixtures/quaderno_cassettes/new_contact.yml +22 -29
  46. data/test/fixtures/quaderno_cassettes/new_estimate.yml +357 -84
  47. data/test/fixtures/quaderno_cassettes/new_expense.yml +414 -118
  48. data/test/fixtures/quaderno_cassettes/new_invoice.yml +361 -84
  49. data/test/fixtures/quaderno_cassettes/new_item.yml +22 -29
  50. data/test/fixtures/quaderno_cassettes/new_receipt.yml +169 -0
  51. data/test/fixtures/quaderno_cassettes/new_webhook.yml +38 -50
  52. data/test/fixtures/quaderno_cassettes/paid_expense.yml +79 -63
  53. data/test/fixtures/quaderno_cassettes/paid_invoice.yml +2907 -65
  54. data/test/fixtures/quaderno_cassettes/rate_limit.yml +22 -26
  55. data/test/fixtures/quaderno_cassettes/unpay_an_expense.yml +98 -85
  56. data/test/fixtures/quaderno_cassettes/unpay_an_invoice.yml +2926 -87
  57. data/test/fixtures/quaderno_cassettes/updated_contact.yml +318 -62
  58. data/test/fixtures/quaderno_cassettes/updated_estimate.yml +402 -116
  59. data/test/fixtures/quaderno_cassettes/updated_expense.yml +395 -113
  60. data/test/fixtures/quaderno_cassettes/updated_invoice.yml +410 -116
  61. data/test/fixtures/quaderno_cassettes/updated_item.yml +49 -61
  62. data/test/fixtures/quaderno_cassettes/updated_receipt.yml +214 -0
  63. data/test/fixtures/quaderno_cassettes/updated_webhook.yml +82 -105
  64. data/test/fixtures/quaderno_cassettes/wrong_token.yml +11 -25
  65. data/test/helper.rb +4 -0
  66. data/test/unit/test_quaderno_contacts.rb +18 -19
  67. data/test/unit/test_quaderno_estimates.rb +58 -31
  68. data/test/unit/test_quaderno_expenses.rb +68 -41
  69. data/test/unit/test_quaderno_invoices.rb +74 -47
  70. data/test/unit/test_quaderno_items.rb +27 -26
  71. data/test/unit/test_quaderno_receipts.rb +156 -0
  72. data/test/unit/test_quaderno_tax.rb +10 -10
  73. data/test/unit/test_quaderno_webhooks.rb +19 -20
  74. metadata +14 -2
@@ -2,49 +2,45 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: get
5
- uri: http://RsNaLsNr1KZcdrQRKKKk@uruk-1066.sandbox-quadernoapp.com/api/v1/ping.json
5
+ uri: http://sk_test_B7xXrTspfeGukQqGN1pK@development.lvh.me:3000/api/ping.json
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: ''
9
9
  headers:
10
+ accept:
11
+ - application/json
10
12
  authorization:
11
- - Basic UnNOYUxzTnIxS1pjZHJRUktLS2s6
13
+ - Basic c2tfdGVzdF9CN3hYclRzcGZlR3VrUXFHTjFwSzo=
12
14
  response:
13
15
  status:
14
16
  code: 200
15
17
  message: OK
16
18
  headers:
17
- server:
18
- - nginx/1.4.5
19
- date:
20
- - Tue, 01 Jul 2014 09:05:53 GMT
21
- content-type:
22
- - application/json; charset=utf-8
23
- transfer-encoding:
24
- - chunked
25
- connection:
26
- - close
27
- status:
28
- - 200 OK
19
+ x-frame-options:
20
+ - ALLOWALL
29
21
  x-ratelimit-limit:
30
22
  - '2000'
23
+ x-ratelimit-reset:
24
+ - '8'
31
25
  x-ratelimit-remaining:
32
- - '1992'
33
- x-ua-compatible:
34
- - IE=Edge,chrome=1
26
+ - '91'
27
+ content-type:
28
+ - application/json; charset=utf-8
35
29
  etag:
36
- - ! '"0c776997933eb60833b37beaf43814c8"'
30
+ - '"0c776997933eb60833b37beaf43814c8"'
37
31
  cache-control:
38
- - must-revalidate, private, max-age=0
32
+ - max-age=0, private, must-revalidate
39
33
  x-request-id:
40
- - 8b2d48d4b2ece720ab27123d5fa0303e
34
+ - 60c9ac78-9bac-409a-a15c-32939fa7792b
41
35
  x-runtime:
42
- - '0.039538'
43
- x-rack-cache:
44
- - miss
36
+ - '0.406134'
37
+ connection:
38
+ - close
39
+ server:
40
+ - thin
45
41
  body:
46
- encoding: US-ASCII
47
- string: ! '{"status":"OK"}'
42
+ encoding: UTF-8
43
+ string: '{"status":"OK"}'
48
44
  http_version: '1.1'
49
- recorded_at: Tue, 01 Jul 2014 09:05:53 GMT
45
+ recorded_at: Thu, 23 Jun 2016 11:25:14 GMT
50
46
  recorded_with: VCR 2.9.2
@@ -2,156 +2,169 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: get
5
- uri: http://RsNaLsNr1KZcdrQRKKKk@uruk-1066.sandbox-quadernoapp.com/api/v1/expenses.json
5
+ uri: http://sk_test_B7xXrTspfeGukQqGN1pK@development.lvh.me:3000/api/expenses.json
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: ''
9
9
  headers:
10
+ accept:
11
+ - application/json
10
12
  authorization:
11
- - Basic UnNOYUxzTnIxS1pjZHJRUktLS2s6
13
+ - Basic c2tfdGVzdF9CN3hYclRzcGZlR3VrUXFHTjFwSzo=
12
14
  response:
13
15
  status:
14
16
  code: 200
15
17
  message: OK
16
18
  headers:
17
- server:
18
- - nginx/1.4.5
19
- date:
20
- - Tue, 01 Jul 2014 09:07:18 GMT
21
- content-type:
22
- - application/json; charset=utf-8
23
- transfer-encoding:
24
- - chunked
25
- connection:
26
- - close
27
- status:
28
- - 200 OK
19
+ x-frame-options:
20
+ - ALLOWALL
29
21
  x-ratelimit-limit:
30
22
  - '2000'
23
+ x-ratelimit-reset:
24
+ - '9'
31
25
  x-ratelimit-remaining:
32
- - '1960'
26
+ - '96'
33
27
  x-pages-currentpage:
34
28
  - '1'
35
29
  x-pages-totalpages:
36
30
  - '1'
37
- x-ua-compatible:
38
- - IE=Edge,chrome=1
31
+ content-type:
32
+ - application/json; charset=utf-8
39
33
  etag:
40
- - ! '"3e3f97d65226a933e567d56c0eec4407"'
34
+ - '"8d78811bffbec882d3a115c0c1cd55f7"'
41
35
  cache-control:
42
- - must-revalidate, private, max-age=0
36
+ - max-age=0, private, must-revalidate
43
37
  x-request-id:
44
- - c4175e494b7d107c236c4efc497d4585
38
+ - f172b519-0a23-4e63-8954-11f322c65536
45
39
  x-runtime:
46
- - '0.135283'
47
- x-rack-cache:
48
- - miss
40
+ - '0.583619'
41
+ connection:
42
+ - close
43
+ server:
44
+ - thin
49
45
  body:
50
- encoding: US-ASCII
51
- string: ! '[{"id":492370,"number":null,"issue_date":"2014-07-01","contact":{"id":142301,"full_name":"Vince
52
- Offer"},"po_number":"","currency":"EUR","items":[{"id":1294888,"description":"ShamWow","quantity":"100.0","unit_price":"9.99","discount_rate":"0.0","tax_1_name":"","tax_1_rate":null,"tax_2_name":"","tax_2_rate":null,"reference":"","subtotal":"999.00
53
- \u20ac","discount":"0.00 \u20ac","gross_amount":"999.00 \u20ac"}],"subtotal":"999.00
54
- \u20ac","discount":"0.00 \u20ac","taxes":[],"total":"999.00 \u20ac","payments":[{"id":328807,"date":"2014-07-01","payment_method":"cash","amount":"10,000.00
55
- \u20ac","url":"http://uruk-1066.sandbox-quadernoapp.com/api/v1/expenses/492370/payments/328807.json"}],"notes":"","state":"paid","tag_list":[],"url":"http://uruk-1066.sandbox-quadernoapp.com/api/v1/expenses/492370.json"},{"id":492368,"number":null,"issue_date":"2014-07-01","contact":{"id":142299,"full_name":"Test_OCP
56
- Stanman"},"po_number":"","currency":"EUR","items":[{"id":1294884,"description":"The
57
- Cadillac of Coffins''","quantity":"1.0","unit_price":"100000.0","discount_rate":"0.0","tax_1_name":"","tax_1_rate":null,"tax_2_name":"","tax_2_rate":null,"reference":"","subtotal":"100,000.00
58
- \u20ac","discount":"0.00 \u20ac","gross_amount":"100,000.00 \u20ac"}],"subtotal":"100,000.00
59
- \u20ac","discount":"0.00 \u20ac","taxes":[],"total":"100,000.00 \u20ac","payments":[],"notes":"","state":"outstanding","tag_list":[],"url":"http://uruk-1066.sandbox-quadernoapp.com/api/v1/expenses/492368.json"}]'
46
+ encoding: ASCII-8BIT
47
+ string: !binary |-
48
+ W3siaWQiOjk5NCwiaXNzdWVfZGF0ZSI6IjIwMTYtMDYtMDgiLCJjcmVhdGVk
49
+ X2F0IjoxNDY1Mzg1NjQwLCJjb250YWN0Ijp7ImlkIjo1MywiZnVsbF9uYW1l
50
+ IjoiVGVzdF9PQ1AgVW1wacOpcnJleiJ9LCJzdHJlZXRfbGluZV8xIjpudWxs
51
+ LCJzdHJlZXRfbGluZV8yIjpudWxsLCJjaXR5IjpudWxsLCJyZWdpb24iOm51
52
+ bGwsInBvc3RhbF9jb2RlIjpudWxsLCJwb19udW1iZXIiOm51bGwsImN1cnJl
53
+ bmN5IjoiRVVSIiwiZXhjaGFuZ2VfcmF0ZSI6IjEuMCIsIml0ZW1zIjpbeyJp
54
+ ZCI6MTAwNCwiZGVzY3JpcHRpb24iOiJTb21ldGhpbmciLCJxdWFudGl0eSI6
55
+ IjEuMCIsInVuaXRfcHJpY2VfY2VudHMiOiIyMDAwLjAiLCJkaXNjb3VudF9y
56
+ YXRlIjoiMC4wIiwidGF4XzFfbmFtZSI6Ik13U3QuL1VTdC4iLCJ0YXhfMV9y
57
+ YXRlIjoxOS4wLCJ0YXhfMl9uYW1lIjoiIiwidGF4XzJfcmF0ZSI6bnVsbCwi
58
+ cmVmZXJlbmNlIjpudWxsLCJzdWJ0b3RhbF9jZW50cyI6IjIwMDAuMCIsImRp
59
+ c2NvdW50X2NlbnRzIjoiMC4wIiwiZ3Jvc3NfYW1vdW50X2NlbnRzIjoiMjAw
60
+ MC4wIn1dLCJzdWJ0b3RhbF9jZW50cyI6IjIwMDAuMCIsImRpc2NvdW50X2Nl
61
+ bnRzIjoiMC4wIiwidGF4ZXMiOlt7ImxhYmVsIjoiTXdTdC4vVVN0LiAoMTku
62
+ MDAlKSIsImFtb3VudF9jZW50cyI6MzgwfV0sImV4dHJhY3QiOnsidG90YWxf
63
+ Y2VudHMiOjIzODB9LCJwYXltZW50cyI6W3siaWQiOjgsImRhdGUiOiIyMDE2
64
+ LTA2LTA4IiwicGF5bWVudF9tZXRob2QiOiJjYXNoIiwiYW1vdW50X2NlbnRz
65
+ IjoyMzgwLCJ1cmwiOiJodHRwOi8vZGV2ZWxvcG1lbnQubHZoLm1lOjMwMDAv
66
+ YXBpL2V4cGVuc2VzLzk5NC9wYXltZW50cy84Lmpzb24ifSx7ImlkIjo5LCJk
67
+ YXRlIjoiMjAxNi0wNi0yMyIsInBheW1lbnRfbWV0aG9kIjoiY2FzaCIsImFt
68
+ b3VudF9jZW50cyI6MTAwMDAwMCwidXJsIjoiaHR0cDovL2RldmVsb3BtZW50
69
+ Lmx2aC5tZTozMDAwL2FwaS9leHBlbnNlcy85OTQvcGF5bWVudHMvOS5qc29u
70
+ In0seyJpZCI6MTMsImRhdGUiOiIyMDE2LTA2LTIzIiwicGF5bWVudF9tZXRo
71
+ b2QiOiJjYXNoIiwiYW1vdW50X2NlbnRzIjoxMDAwMDAwLCJ1cmwiOiJodHRw
72
+ Oi8vZGV2ZWxvcG1lbnQubHZoLm1lOjMwMDAvYXBpL2V4cGVuc2VzLzk5NC9w
73
+ YXltZW50cy8xMy5qc29uIn0seyJpZCI6MTcsImRhdGUiOiIyMDE2LTA2LTIz
74
+ IiwicGF5bWVudF9tZXRob2QiOiJjYXNoIiwiYW1vdW50X2NlbnRzIjoxMDAw
75
+ MDAwLCJ1cmwiOiJodHRwOi8vZGV2ZWxvcG1lbnQubHZoLm1lOjMwMDAvYXBp
76
+ L2V4cGVuc2VzLzk5NC9wYXltZW50cy8xNy5qc29uIn0seyJpZCI6MjEsImRh
77
+ dGUiOiIyMDE2LTA2LTIzIiwicGF5bWVudF9tZXRob2QiOiJjYXNoIiwiYW1v
78
+ dW50X2NlbnRzIjoxMDAwMDAwLCJ1cmwiOiJodHRwOi8vZGV2ZWxvcG1lbnQu
79
+ bHZoLm1lOjMwMDAvYXBpL2V4cGVuc2VzLzk5NC9wYXltZW50cy8yMS5qc29u
80
+ In0seyJpZCI6MjgsImRhdGUiOiIyMDE2LTA2LTIzIiwicGF5bWVudF9tZXRo
81
+ b2QiOiJjYXNoIiwiYW1vdW50X2NlbnRzIjoxMDAwMDAwLCJ1cmwiOiJodHRw
82
+ Oi8vZGV2ZWxvcG1lbnQubHZoLm1lOjMwMDAvYXBpL2V4cGVuc2VzLzk5NC9w
83
+ YXltZW50cy8yOC5qc29uIn1dLCJub3RlcyI6bnVsbCwic3RhdGUiOiJwYWlk
84
+ IiwidGFnX2xpc3QiOltdLCJ1cmwiOiJodHRwOi8vZGV2ZWxvcG1lbnQubHZo
85
+ Lm1lOjMwMDAvYXBpL2V4cGVuc2VzLzk5NC5qc29uIn1d
60
86
  http_version: '1.1'
61
- recorded_at: Tue, 01 Jul 2014 09:07:18 GMT
87
+ recorded_at: Thu, 23 Jun 2016 11:26:08 GMT
62
88
  - request:
63
89
  method: post
64
- uri: http://RsNaLsNr1KZcdrQRKKKk@uruk-1066.sandbox-quadernoapp.com/api/v1/expenses/492370/payments.json
90
+ uri: http://sk_test_B7xXrTspfeGukQqGN1pK@development.lvh.me:3000/api/expenses/994/payments.json
65
91
  body:
66
- encoding: US-ASCII
92
+ encoding: UTF-8
67
93
  string: payment_method=cash&amount=10000
68
94
  headers:
95
+ accept:
96
+ - application/json
69
97
  authorization:
70
- - Basic UnNOYUxzTnIxS1pjZHJRUktLS2s6
98
+ - Basic c2tfdGVzdF9CN3hYclRzcGZlR3VrUXFHTjFwSzo=
71
99
  response:
72
100
  status:
73
101
  code: 201
74
102
  message: Created
75
103
  headers:
76
- server:
77
- - nginx/1.4.5
78
- date:
79
- - Tue, 01 Jul 2014 09:07:19 GMT
80
- content-type:
81
- - application/json; charset=utf-8
82
- transfer-encoding:
83
- - chunked
84
- connection:
85
- - close
86
- status:
87
- - 201 Created
104
+ x-frame-options:
105
+ - ALLOWALL
88
106
  x-ratelimit-limit:
89
107
  - '2000'
108
+ x-ratelimit-reset:
109
+ - '9'
90
110
  x-ratelimit-remaining:
91
- - '1959'
92
- x-ua-compatible:
93
- - IE=Edge,chrome=1
111
+ - '95'
112
+ content-type:
113
+ - application/json; charset=utf-8
94
114
  etag:
95
- - ! '"3eff255bf5a0e1dcdf84fb60b5807fcc"'
115
+ - '"c0351cb557968914dfd432cd00b19ae0"'
96
116
  cache-control:
97
117
  - max-age=0, private, must-revalidate
98
- set-cookie:
99
- - _quaderno_session=BAh7BkkiD3Nlc3Npb25faWQGOgZFVEkiJWZkMDkwOTY5ZmY3MjYwOTczOTlmOTE0NGY1MTY2NWFjBjsAVA%3D%3D--8a8720ed55cb31c7139096f515a035ea62cbbda2;
100
- domain=sandbox-quadernoapp.com; path=/; HttpOnly
101
118
  x-request-id:
102
- - 404ff4472706582b4c490524887c9938
119
+ - 257c763e-7e8f-43c1-8b77-a0b386a9d11d
103
120
  x-runtime:
104
- - '0.069431'
105
- x-rack-cache:
106
- - invalidate, pass
121
+ - '0.917746'
122
+ connection:
123
+ - close
124
+ server:
125
+ - thin
107
126
  body:
108
- encoding: US-ASCII
109
- string: ! '{"id":328808,"date":"2014-07-01","payment_method":"cash","amount":"10,000.00
110
- \u20ac","url":"http://uruk-1066.sandbox-quadernoapp.com/api/v1/expenses/492370/payments/328808.json"}'
127
+ encoding: UTF-8
128
+ string: '{"id":29,"date":"2016-06-23","payment_method":"cash","amount_cents":1000000,"url":"http://development.lvh.me:3000/api/expenses/994/payments/29.json"}'
111
129
  http_version: '1.1'
112
- recorded_at: Tue, 01 Jul 2014 09:07:19 GMT
130
+ recorded_at: Thu, 23 Jun 2016 11:26:09 GMT
113
131
  - request:
114
132
  method: delete
115
- uri: http://RsNaLsNr1KZcdrQRKKKk@uruk-1066.sandbox-quadernoapp.com/api/v1/expenses/492370/payments/328808.json
133
+ uri: http://sk_test_B7xXrTspfeGukQqGN1pK@development.lvh.me:3000/api/expenses/994/payments/29.json
116
134
  body:
117
135
  encoding: US-ASCII
118
136
  string: ''
119
137
  headers:
138
+ accept:
139
+ - application/json
120
140
  authorization:
121
- - Basic UnNOYUxzTnIxS1pjZHJRUktLS2s6
141
+ - Basic c2tfdGVzdF9CN3hYclRzcGZlR3VrUXFHTjFwSzo=
122
142
  response:
123
143
  status:
124
144
  code: 204
125
145
  message: No Content
126
146
  headers:
127
- server:
128
- - nginx/1.4.5
129
- date:
130
- - Tue, 01 Jul 2014 09:07:19 GMT
131
- connection:
132
- - close
133
- status:
134
- - 204 No Content
147
+ x-frame-options:
148
+ - ALLOWALL
135
149
  x-ratelimit-limit:
136
150
  - '2000'
151
+ x-ratelimit-reset:
152
+ - '7'
137
153
  x-ratelimit-remaining:
138
- - '1958'
139
- x-ua-compatible:
140
- - IE=Edge,chrome=1
154
+ - '94'
141
155
  cache-control:
142
156
  - no-cache
143
- set-cookie:
144
- - _quaderno_session=BAh7BkkiD3Nlc3Npb25faWQGOgZFVEkiJThiMDY3Y2MzYWVjZWNmMDNhNzgxYzQ2OGUzOWI2MzIzBjsAVA%3D%3D--ca794873f9c264eb3e9dce84fb8ad4ef9c4a2926;
145
- domain=sandbox-quadernoapp.com; path=/; HttpOnly
146
157
  x-request-id:
147
- - 71658558015eef02e66383aa2064498c
158
+ - a7485ed1-8c25-4335-93ed-e04656afb2c0
148
159
  x-runtime:
149
- - '0.083843'
150
- x-rack-cache:
151
- - invalidate, pass
160
+ - '1.215931'
161
+ connection:
162
+ - close
163
+ server:
164
+ - thin
152
165
  body:
153
166
  encoding: US-ASCII
154
167
  string: ''
155
168
  http_version: '1.1'
156
- recorded_at: Tue, 01 Jul 2014 09:07:19 GMT
169
+ recorded_at: Thu, 23 Jun 2016 11:26:10 GMT
157
170
  recorded_with: VCR 2.9.2