badgeapi 0.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +14 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +31 -0
  6. data/Rakefile +15 -0
  7. data/badgeapi.gemspec +33 -0
  8. data/lib/badgeapi/badge.rb +29 -0
  9. data/lib/badgeapi/badgeapi_object.rb +149 -0
  10. data/lib/badgeapi/collection.rb +10 -0
  11. data/lib/badgeapi/errors/api_error.rb +5 -0
  12. data/lib/badgeapi/errors/badgeapi_error.rb +18 -0
  13. data/lib/badgeapi/errors/invalid_request_error.rb +5 -0
  14. data/lib/badgeapi/recipient.rb +18 -0
  15. data/lib/badgeapi/version.rb +3 -0
  16. data/lib/badgeapi.rb +36 -0
  17. data/test/badge/badge_test.rb +469 -0
  18. data/test/badgeapi_test.rb +20 -0
  19. data/test/collection/collection_test.rb +275 -0
  20. data/test/fixtures/all_badges.yml +121 -0
  21. data/test/fixtures/all_badges_bad_user.yml +138 -0
  22. data/test/fixtures/all_badges_expanded.yml +196 -0
  23. data/test/fixtures/all_badges_from_collection.yml +52 -0
  24. data/test/fixtures/all_badges_issued.yml +430 -0
  25. data/test/fixtures/all_badges_limited.yml +49 -0
  26. data/test/fixtures/all_collection.yml +50 -0
  27. data/test/fixtures/all_collection_expanded.yml +131 -0
  28. data/test/fixtures/all_collection_limit.yml +49 -0
  29. data/test/fixtures/bad_Recipient.yml +183 -0
  30. data/test/fixtures/bad_Recipietn_request.yml +93 -0
  31. data/test/fixtures/bad_api_key.yml +49 -0
  32. data/test/fixtures/badge_error.yml +47 -0
  33. data/test/fixtures/badge_requirements.yml +351 -0
  34. data/test/fixtures/collection_error.yml +91 -0
  35. data/test/fixtures/create_badge.yml +97 -0
  36. data/test/fixtures/create_collection.yml +97 -0
  37. data/test/fixtures/create_new_badge_failure.yml +143 -0
  38. data/test/fixtures/create_new_collection_failure.yml +189 -0
  39. data/test/fixtures/destroy_badge.yml +277 -0
  40. data/test/fixtures/destroy_badge_error.yml +231 -0
  41. data/test/fixtures/destroy_collection.yml +185 -0
  42. data/test/fixtures/destroy_collection_error.yml +185 -0
  43. data/test/fixtures/issue_already_owned_badge.yml +49 -0
  44. data/test/fixtures/issue_badge_to_bad_user.yml +50 -0
  45. data/test/fixtures/issue_badge_to_user.yml +199 -0
  46. data/test/fixtures/issue_badge_to_user_with_library_card.yml +103 -0
  47. data/test/fixtures/one_badge.yml +49 -0
  48. data/test/fixtures/one_badge_expanded.yml +50 -0
  49. data/test/fixtures/one_collection.yml +49 -0
  50. data/test/fixtures/one_collection_expanded.yml +104 -0
  51. data/test/fixtures/recipient_with_badges.yml +187 -0
  52. data/test/fixtures/recipient_with_badges_unicard.yml +50 -0
  53. data/test/fixtures/revoke_badge_from_user.yml +199 -0
  54. data/test/fixtures/revoke_badge_not_issued.yml +49 -0
  55. data/test/fixtures/update_badge_via_update.yml +145 -0
  56. data/test/fixtures/update_badge_via_update_slug_history.yml +191 -0
  57. data/test/fixtures/update_collection.yml +191 -0
  58. data/test/fixtures/update_collection_via_update.yml +145 -0
  59. data/test/recipient/recipient_test.rb +108 -0
  60. data/test/test_helper.rb +11 -0
  61. metadata +274 -0
@@ -0,0 +1,187 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://gamification-api.dev/v1/recipients
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.1
12
+ Authorization:
13
+ - Token token="c9cde524238644fa93393159e5e9ad87"
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - "*/*"
18
+ response:
19
+ status:
20
+ code: 422
21
+ message: Unprocessable Entity
22
+ headers:
23
+ X-Frame-Options:
24
+ - SAMEORIGIN
25
+ X-Xss-Protection:
26
+ - 1; mode=block
27
+ X-Content-Type-Options:
28
+ - nosniff
29
+ Content-Type:
30
+ - application/json; charset=utf-8
31
+ Cache-Control:
32
+ - no-cache
33
+ X-Request-Id:
34
+ - 2c447f68-f9f4-4065-b334-eec868997103
35
+ X-Runtime:
36
+ - '0.008719'
37
+ Date:
38
+ - Fri, 17 Jul 2015 15:18:44 GMT
39
+ Connection:
40
+ - close
41
+ body:
42
+ encoding: UTF-8
43
+ string: '{"error":{"type":"invalid_request_error","message":"No user specified.
44
+ Please specify user as a param using either university email or university
45
+ card. e.g user=user@lancaster.ac.uk","status":422}}'
46
+ http_version:
47
+ recorded_at: Fri, 17 Jul 2015 15:18:44 GMT
48
+ - request:
49
+ method: get
50
+ uri: http://gamification-api.dev/v1/recipients
51
+ body:
52
+ encoding: US-ASCII
53
+ string: ''
54
+ headers:
55
+ User-Agent:
56
+ - Faraday v0.9.1
57
+ Authorization:
58
+ - Token token="c9cde524238644fa93393159e5e9ad87"
59
+ Accept-Encoding:
60
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
61
+ Accept:
62
+ - "*/*"
63
+ response:
64
+ status:
65
+ code: 422
66
+ message: Unprocessable Entity
67
+ headers:
68
+ X-Frame-Options:
69
+ - SAMEORIGIN
70
+ X-Xss-Protection:
71
+ - 1; mode=block
72
+ X-Content-Type-Options:
73
+ - nosniff
74
+ Content-Type:
75
+ - application/json; charset=utf-8
76
+ Cache-Control:
77
+ - no-cache
78
+ X-Request-Id:
79
+ - 5fb4a26b-1995-4a93-a3d4-f02c145361ed
80
+ X-Runtime:
81
+ - '0.007406'
82
+ Date:
83
+ - Fri, 17 Jul 2015 15:18:44 GMT
84
+ Connection:
85
+ - close
86
+ body:
87
+ encoding: UTF-8
88
+ string: '{"error":{"type":"invalid_request_error","message":"No user specified.
89
+ Please specify user as a param using either university email or university
90
+ card. e.g user=user@lancaster.ac.uk","status":422}}'
91
+ http_version:
92
+ recorded_at: Fri, 17 Jul 2015 15:18:44 GMT
93
+ - request:
94
+ method: get
95
+ uri: http://gamification-api.dev/v1/recipients?user=t.skarbek-wazynski@lancaster.ac.uk
96
+ body:
97
+ encoding: US-ASCII
98
+ string: ''
99
+ headers:
100
+ User-Agent:
101
+ - Faraday v0.9.1
102
+ Authorization:
103
+ - Token token="c9cde524238644fa93393159e5e9ad87"
104
+ Accept-Encoding:
105
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
106
+ Accept:
107
+ - "*/*"
108
+ response:
109
+ status:
110
+ code: 200
111
+ message: OK
112
+ headers:
113
+ X-Frame-Options:
114
+ - SAMEORIGIN
115
+ X-Xss-Protection:
116
+ - 1; mode=block
117
+ X-Content-Type-Options:
118
+ - nosniff
119
+ Content-Type:
120
+ - application/json; charset=utf-8
121
+ Etag:
122
+ - '"acde49a57ebc9ba795f6d09daff4d02a"'
123
+ Cache-Control:
124
+ - max-age=0, private, must-revalidate
125
+ X-Request-Id:
126
+ - e3e548f6-1f53-47e2-9cee-9838cf5ee4ce
127
+ X-Runtime:
128
+ - '0.023360'
129
+ Date:
130
+ - Tue, 21 Jul 2015 08:25:51 GMT
131
+ Connection:
132
+ - close
133
+ body:
134
+ encoding: UTF-8
135
+ string: '{"total_score":25,"badges_total":1,"bronze_count":1,"silver_count":0,"gold_count":0,"platinum_count":0,"badges":[{"name":"Book
136
+ Worm","description":"You have loaned out over 25 books. Nice going!","requirements":"Loan
137
+ out 25 books","hint":"You must like books...","image":"http://gamification-api.dev/uploads/badge/image/1/seed.png","collection_id":1,"created_at":"2015-07-16T09:21:22.448Z","updated_at":"2015-07-16T09:21:22.448Z","slug":"book-worm","level":"bronze","image_greyscale":"http://gamification-api.dev/uploads/badge/image/1/grey_seed.png","points":25}]}'
138
+ http_version:
139
+ recorded_at: Tue, 21 Jul 2015 08:25:51 GMT
140
+ - request:
141
+ method: get
142
+ uri: http://gamification-api.dev/v1/recipients?recipient=t.skarbek-wazynski@lancaster.ac.uk
143
+ body:
144
+ encoding: US-ASCII
145
+ string: ''
146
+ headers:
147
+ User-Agent:
148
+ - Faraday v0.9.1
149
+ Authorization:
150
+ - Token token="c9cde524238644fa93393159e5e9ad87"
151
+ Accept-Encoding:
152
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
153
+ Accept:
154
+ - "*/*"
155
+ response:
156
+ status:
157
+ code: 200
158
+ message: OK
159
+ headers:
160
+ X-Frame-Options:
161
+ - SAMEORIGIN
162
+ X-Xss-Protection:
163
+ - 1; mode=block
164
+ X-Content-Type-Options:
165
+ - nosniff
166
+ Content-Type:
167
+ - application/json; charset=utf-8
168
+ Etag:
169
+ - '"b580cf4171303fd650475e570ec9458a"'
170
+ Cache-Control:
171
+ - max-age=0, private, must-revalidate
172
+ X-Request-Id:
173
+ - b460f226-7fbf-42bd-9ef2-0bef98ad2521
174
+ X-Runtime:
175
+ - '0.026877'
176
+ Date:
177
+ - Thu, 03 Sep 2015 10:56:09 GMT
178
+ Connection:
179
+ - close
180
+ body:
181
+ encoding: UTF-8
182
+ string: '{"total_score":25,"badges_total":1,"bronze_count":1,"silver_count":0,"gold_count":0,"platinum_count":0,"object":"recipient","badges":[{"name":"Book
183
+ Worm","description":"You have loaned out over 25 books. Nice going!","requirements":"Loan
184
+ out 25 books","hint":"You must like books...","image":"http://gamification-api.dev/badge_images/book-worm/badge.png","collection_id":"library","created_at":"2015-09-03T10:51:07.831Z","updated_at":"2015-09-03T10:51:07.831Z","level":"bronze","auto_issue":false,"status":"live","points":25,"object":"badge","issued_at":"2015-09-03T10:51:08.232Z","id":"book-worm"}]}'
185
+ http_version:
186
+ recorded_at: Thu, 03 Sep 2015 10:56:09 GMT
187
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,50 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://gamification-api.dev/v1/recipients?user=0043181
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.1
12
+ Authorization:
13
+ - Token token="c9cde524238644fa93393159e5e9ad87"
14
+ Accept-Encoding:
15
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
16
+ Accept:
17
+ - "*/*"
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ X-Frame-Options:
24
+ - SAMEORIGIN
25
+ X-Xss-Protection:
26
+ - 1; mode=block
27
+ X-Content-Type-Options:
28
+ - nosniff
29
+ Content-Type:
30
+ - application/json; charset=utf-8
31
+ Etag:
32
+ - '"b580cf4171303fd650475e570ec9458a"'
33
+ Cache-Control:
34
+ - max-age=0, private, must-revalidate
35
+ X-Request-Id:
36
+ - 4805e85a-ca91-4769-8ad8-fdf643350c9a
37
+ X-Runtime:
38
+ - '0.948147'
39
+ Date:
40
+ - Thu, 03 Sep 2015 10:56:10 GMT
41
+ Connection:
42
+ - close
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"total_score":25,"badges_total":1,"bronze_count":1,"silver_count":0,"gold_count":0,"platinum_count":0,"object":"recipient","badges":[{"name":"Book
46
+ Worm","description":"You have loaned out over 25 books. Nice going!","requirements":"Loan
47
+ out 25 books","hint":"You must like books...","image":"http://gamification-api.dev/badge_images/book-worm/badge.png","collection_id":"library","created_at":"2015-09-03T10:51:07.831Z","updated_at":"2015-09-03T10:51:07.831Z","level":"bronze","auto_issue":false,"status":"live","points":25,"object":"badge","issued_at":"2015-09-03T10:51:08.232Z","id":"book-worm"}]}'
48
+ http_version:
49
+ recorded_at: Thu, 03 Sep 2015 10:56:10 GMT
50
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,199 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://gamification-api.dev/v1/badges/2/revoke
6
+ body:
7
+ encoding: UTF-8
8
+ string: recipient=t.skarbek-wazynski%40lancaster.ac.uk
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.1
12
+ Authorization:
13
+ - Token token="c9cde524238644fa93393159e5e9ad87"
14
+ Content-Type:
15
+ - application/x-www-form-urlencoded
16
+ Accept-Encoding:
17
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
+ Accept:
19
+ - "*/*"
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ X-Frame-Options:
26
+ - SAMEORIGIN
27
+ X-Xss-Protection:
28
+ - 1; mode=block
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ Content-Type:
32
+ - application/json; charset=utf-8
33
+ Etag:
34
+ - '"3514db33f344216321fef093b35aabe2"'
35
+ Cache-Control:
36
+ - max-age=0, private, must-revalidate
37
+ X-Request-Id:
38
+ - 291de80f-0b4f-4029-ba3e-639aae1ce8e4
39
+ X-Runtime:
40
+ - '0.032299'
41
+ Date:
42
+ - Thu, 16 Jul 2015 09:30:12 GMT
43
+ Connection:
44
+ - close
45
+ body:
46
+ encoding: UTF-8
47
+ string: '[{"name":"Book Worm","description":"You have loaned out over 25 books.
48
+ Nice going!","requirements":"Loan out 25 books","hint":"You must like books...","image":"http://gamification-api.dev/uploads/badge/image/1/seed.png","collection_id":"library","created_at":"2015-07-16T09:21:22.448Z","updated_at":"2015-07-16T09:21:22.448Z","level":"bronze","image_greyscale":"http://gamification-api.dev/uploads/badge/image/1/grey_seed.png","required_badges":[],"points":25,"id":"book-worm"},{"name":"Night
49
+ Owl","description":"You loaned a book out between Midnight and 5 o''clock","requirements":"Loan
50
+ out a book between 00:00 - 5:00","hint":"It must be late...","image":"http://gamification-api.dev/uploads/badge/image/3/seed.png","collection_id":"library","created_at":"2015-07-16T09:21:22.605Z","updated_at":"2015-07-16T09:21:22.605Z","level":"bronze","image_greyscale":"http://gamification-api.dev/uploads/badge/image/3/grey_seed.png","required_badges":[],"points":25,"id":"night-owl"}]'
51
+ http_version:
52
+ recorded_at: Thu, 16 Jul 2015 09:30:12 GMT
53
+ - request:
54
+ method: post
55
+ uri: http://gamification-api.dev/v1/badges/2/issue
56
+ body:
57
+ encoding: UTF-8
58
+ string: recipient=t.skarbek-wazynski%40lancaster.ac.uk
59
+ headers:
60
+ User-Agent:
61
+ - Faraday v0.9.1
62
+ Authorization:
63
+ - Token token="c9cde524238644fa93393159e5e9ad87"
64
+ Content-Type:
65
+ - application/x-www-form-urlencoded
66
+ Accept-Encoding:
67
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
68
+ Accept:
69
+ - "*/*"
70
+ response:
71
+ status:
72
+ code: 400
73
+ message: Bad Request
74
+ headers:
75
+ X-Frame-Options:
76
+ - SAMEORIGIN
77
+ X-Xss-Protection:
78
+ - 1; mode=block
79
+ X-Content-Type-Options:
80
+ - nosniff
81
+ Content-Type:
82
+ - application/json; charset=utf-8
83
+ Cache-Control:
84
+ - no-cache
85
+ X-Request-Id:
86
+ - 9b2037e2-e370-417a-880e-06e07a73db19
87
+ X-Runtime:
88
+ - '0.020210'
89
+ Date:
90
+ - Thu, 16 Jul 2015 09:42:11 GMT
91
+ Connection:
92
+ - close
93
+ body:
94
+ encoding: UTF-8
95
+ string: '{"error":{"type":"invalid_request_error","message":"Cannot issue badge:
96
+ Mega Book Worm. The user has already been issued this badge","status":400}}'
97
+ http_version:
98
+ recorded_at: Thu, 16 Jul 2015 09:42:11 GMT
99
+ - request:
100
+ method: post
101
+ uri: http://gamification-api.dev/v1/badges/mega-book-worm/issue
102
+ body:
103
+ encoding: UTF-8
104
+ string: recipient=t.skarbek-wazynski%40lancaster.ac.uk
105
+ headers:
106
+ User-Agent:
107
+ - Faraday v0.9.1
108
+ Authorization:
109
+ - Token token="c9cde524238644fa93393159e5e9ad87"
110
+ Content-Type:
111
+ - application/x-www-form-urlencoded
112
+ Accept-Encoding:
113
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
114
+ Accept:
115
+ - "*/*"
116
+ response:
117
+ status:
118
+ code: 200
119
+ message: OK
120
+ headers:
121
+ X-Frame-Options:
122
+ - SAMEORIGIN
123
+ X-Xss-Protection:
124
+ - 1; mode=block
125
+ X-Content-Type-Options:
126
+ - nosniff
127
+ Content-Type:
128
+ - application/json; charset=utf-8
129
+ Etag:
130
+ - '"645fdcd9ef4b502bd16d080088875170"'
131
+ Cache-Control:
132
+ - max-age=0, private, must-revalidate
133
+ X-Request-Id:
134
+ - a53e3dec-5855-4690-9e0a-3c4483663786
135
+ X-Runtime:
136
+ - '0.044444'
137
+ Date:
138
+ - Thu, 03 Sep 2015 10:56:00 GMT
139
+ Connection:
140
+ - close
141
+ body:
142
+ encoding: UTF-8
143
+ string: '{"total_score":75,"badges_total":2,"bronze_count":1,"silver_count":1,"gold_count":0,"platinum_count":0,"object":"recipient","badges":[{"name":"Book
144
+ Worm","description":"You have loaned out over 25 books. Nice going!","requirements":"Loan
145
+ out 25 books","hint":"You must like books...","image":"http://gamification-api.dev/badge_images/book-worm/badge.png","collection_id":"library","created_at":"2015-09-03T10:51:07.831Z","updated_at":"2015-09-03T10:51:07.831Z","level":"bronze","auto_issue":false,"status":"live","points":25,"object":"badge","issued_at":"2015-09-03T10:51:08.232Z","id":"book-worm"},{"name":"Mega
146
+ Book Worm","description":"You have loaned out 50 books.","requirements":"Loan
147
+ out 50 books","hint":"You must really like books...","image":"http://gamification-api.dev/badge_images/mega-book-worm/badge.png","collection_id":"library","created_at":"2015-09-03T10:51:07.899Z","updated_at":"2015-09-03T10:51:07.899Z","level":"silver","auto_issue":false,"status":"live","points":50,"object":"badge","issued_at":"2015-09-03T10:56:00.871Z","id":"mega-book-worm"}]}'
148
+ http_version:
149
+ recorded_at: Thu, 03 Sep 2015 10:56:00 GMT
150
+ - request:
151
+ method: post
152
+ uri: http://gamification-api.dev/v1/badges/mega-book-worm/revoke
153
+ body:
154
+ encoding: UTF-8
155
+ string: recipient=t.skarbek-wazynski%40lancaster.ac.uk
156
+ headers:
157
+ User-Agent:
158
+ - Faraday v0.9.1
159
+ Authorization:
160
+ - Token token="c9cde524238644fa93393159e5e9ad87"
161
+ Content-Type:
162
+ - application/x-www-form-urlencoded
163
+ Accept-Encoding:
164
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
165
+ Accept:
166
+ - "*/*"
167
+ response:
168
+ status:
169
+ code: 200
170
+ message: OK
171
+ headers:
172
+ X-Frame-Options:
173
+ - SAMEORIGIN
174
+ X-Xss-Protection:
175
+ - 1; mode=block
176
+ X-Content-Type-Options:
177
+ - nosniff
178
+ Content-Type:
179
+ - application/json; charset=utf-8
180
+ Etag:
181
+ - '"b580cf4171303fd650475e570ec9458a"'
182
+ Cache-Control:
183
+ - max-age=0, private, must-revalidate
184
+ X-Request-Id:
185
+ - 81a6812c-712d-485d-8fba-6ad8679735a8
186
+ X-Runtime:
187
+ - '0.031274'
188
+ Date:
189
+ - Thu, 03 Sep 2015 10:56:00 GMT
190
+ Connection:
191
+ - close
192
+ body:
193
+ encoding: UTF-8
194
+ string: '{"total_score":25,"badges_total":1,"bronze_count":1,"silver_count":0,"gold_count":0,"platinum_count":0,"object":"recipient","badges":[{"name":"Book
195
+ Worm","description":"You have loaned out over 25 books. Nice going!","requirements":"Loan
196
+ out 25 books","hint":"You must like books...","image":"http://gamification-api.dev/badge_images/book-worm/badge.png","collection_id":"library","created_at":"2015-09-03T10:51:07.831Z","updated_at":"2015-09-03T10:51:07.831Z","level":"bronze","auto_issue":false,"status":"live","points":25,"object":"badge","issued_at":"2015-09-03T10:51:08.232Z","id":"book-worm"}]}'
197
+ http_version:
198
+ recorded_at: Thu, 03 Sep 2015 10:56:00 GMT
199
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,49 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://gamification-api.dev/v1/badges/3/revoke
6
+ body:
7
+ encoding: UTF-8
8
+ string: recipient=t.skarbek-wazynski%40lancaster.ac.uk
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.1
12
+ Authorization:
13
+ - Token token="c9cde524238644fa93393159e5e9ad87"
14
+ Content-Type:
15
+ - application/x-www-form-urlencoded
16
+ Accept-Encoding:
17
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
+ Accept:
19
+ - "*/*"
20
+ response:
21
+ status:
22
+ code: 400
23
+ message: Bad Request
24
+ headers:
25
+ X-Frame-Options:
26
+ - SAMEORIGIN
27
+ X-Xss-Protection:
28
+ - 1; mode=block
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ Content-Type:
32
+ - application/json; charset=utf-8
33
+ Cache-Control:
34
+ - no-cache
35
+ X-Request-Id:
36
+ - 5c042623-58e2-4cac-aea0-a2cf291e16ba
37
+ X-Runtime:
38
+ - '0.025164'
39
+ Date:
40
+ - Thu, 03 Sep 2015 10:55:58 GMT
41
+ Connection:
42
+ - close
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"error":{"type":"invalid_request_error","message":"Cannot revoke badge:
46
+ Night Owl. The user has not previously been issued this badge.","status":400}}'
47
+ http_version:
48
+ recorded_at: Thu, 03 Sep 2015 10:55:58 GMT
49
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,145 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://gamification-api.dev/v1/badges
6
+ body:
7
+ encoding: UTF-8
8
+ string: badge%5Bcollection_id%5D=1&badge%5Bdescription%5D=This+is+a+new+badge&badge%5Bhint%5D=Love+us..&badge%5Blevel%5D=bronze&badge%5Bname%5D=Create+Badge+for+update&badge%5Brequirements%5D=You+need+to+love+the+Badge+API
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.1
12
+ Authorization:
13
+ - Token token="c9cde524238644fa93393159e5e9ad87"
14
+ Content-Type:
15
+ - application/x-www-form-urlencoded
16
+ Accept-Encoding:
17
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
+ Accept:
19
+ - "*/*"
20
+ response:
21
+ status:
22
+ code: 201
23
+ message: Created
24
+ headers:
25
+ X-Frame-Options:
26
+ - SAMEORIGIN
27
+ X-Xss-Protection:
28
+ - 1; mode=block
29
+ X-Content-Type-Options:
30
+ - nosniff
31
+ Content-Type:
32
+ - application/json; charset=utf-8
33
+ Etag:
34
+ - '"64cc3bfe4fa457cb1f24f998fb9cc877"'
35
+ Cache-Control:
36
+ - max-age=0, private, must-revalidate
37
+ X-Request-Id:
38
+ - 6a97fd1a-3cad-4a71-931d-96196fd3a68d
39
+ X-Runtime:
40
+ - '0.072552'
41
+ Date:
42
+ - Thu, 03 Sep 2015 10:56:01 GMT
43
+ Connection:
44
+ - close
45
+ body:
46
+ encoding: UTF-8
47
+ string: '{"name":"Create Badge for update","description":"This is a new badge","requirements":"You
48
+ need to love the Badge API","hint":"Love us..","image":"http://gamification-api.dev/badge_images/create-badge-for-update/badge.png","collection_id":"library","created_at":"2015-09-03T10:56:00.983Z","updated_at":"2015-09-03T10:56:00.983Z","level":"bronze","auto_issue":false,"status":"draft","required_badges":[],"points":25,"object":"badge","id":"create-badge-for-update"}'
49
+ http_version:
50
+ recorded_at: Thu, 03 Sep 2015 10:56:01 GMT
51
+ - request:
52
+ method: patch
53
+ uri: http://gamification-api.dev/v1/badges/create-badge-for-update
54
+ body:
55
+ encoding: UTF-8
56
+ string: badge%5Bcollection_id%5D=trim-trail&badge%5Bdescription%5D=Updated+Description&badge%5Bhint%5D=Updated+Hint&badge%5Bname%5D=Updated+Badge&badge%5Brequirements%5D=Updated+Requirements&badge%5Bstatus%5D=live
57
+ headers:
58
+ User-Agent:
59
+ - Faraday v0.9.1
60
+ Authorization:
61
+ - Token token="c9cde524238644fa93393159e5e9ad87"
62
+ Content-Type:
63
+ - application/x-www-form-urlencoded
64
+ Accept-Encoding:
65
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
66
+ Accept:
67
+ - "*/*"
68
+ response:
69
+ status:
70
+ code: 200
71
+ message: OK
72
+ headers:
73
+ X-Frame-Options:
74
+ - SAMEORIGIN
75
+ X-Xss-Protection:
76
+ - 1; mode=block
77
+ X-Content-Type-Options:
78
+ - nosniff
79
+ Content-Type:
80
+ - application/json; charset=utf-8
81
+ Etag:
82
+ - '"3ae1e3fd1bba522ad11c1d983e8e7b5d"'
83
+ Cache-Control:
84
+ - max-age=0, private, must-revalidate
85
+ X-Request-Id:
86
+ - 47698c58-428c-4ecd-993e-36695a45a5c4
87
+ X-Runtime:
88
+ - '0.069377'
89
+ Date:
90
+ - Thu, 03 Sep 2015 10:56:01 GMT
91
+ Connection:
92
+ - close
93
+ body:
94
+ encoding: UTF-8
95
+ string: '{"name":"Updated Badge","description":"Updated Description","requirements":"Updated
96
+ Requirements","hint":"Updated Hint","image":"http://gamification-api.dev/badge_images/updated-badge/badge.png","collection_id":"trim-trail","created_at":"2015-09-03T10:56:00.983Z","updated_at":"2015-09-03T10:56:01.070Z","level":"bronze","auto_issue":false,"status":"live","required_badges":[],"points":25,"object":"badge","id":"updated-badge"}'
97
+ http_version:
98
+ recorded_at: Thu, 03 Sep 2015 10:56:01 GMT
99
+ - request:
100
+ method: delete
101
+ uri: http://gamification-api.dev/v1/badges/create-badge-for-update
102
+ body:
103
+ encoding: US-ASCII
104
+ string: ''
105
+ headers:
106
+ User-Agent:
107
+ - Faraday v0.9.1
108
+ Authorization:
109
+ - Token token="c9cde524238644fa93393159e5e9ad87"
110
+ Accept-Encoding:
111
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
112
+ Accept:
113
+ - "*/*"
114
+ response:
115
+ status:
116
+ code: 200
117
+ message: OK
118
+ headers:
119
+ X-Frame-Options:
120
+ - SAMEORIGIN
121
+ X-Xss-Protection:
122
+ - 1; mode=block
123
+ X-Content-Type-Options:
124
+ - nosniff
125
+ Content-Type:
126
+ - application/json; charset=utf-8
127
+ Etag:
128
+ - '"3ae1e3fd1bba522ad11c1d983e8e7b5d"'
129
+ Cache-Control:
130
+ - max-age=0, private, must-revalidate
131
+ X-Request-Id:
132
+ - a1f67856-4738-4f27-bf2c-a9f58f70ce3d
133
+ X-Runtime:
134
+ - '0.028471'
135
+ Date:
136
+ - Thu, 03 Sep 2015 10:56:01 GMT
137
+ Connection:
138
+ - close
139
+ body:
140
+ encoding: UTF-8
141
+ string: '{"name":"Updated Badge","description":"Updated Description","requirements":"Updated
142
+ Requirements","hint":"Updated Hint","image":"http://gamification-api.dev/badge_images/updated-badge/badge.png","collection_id":"trim-trail","created_at":"2015-09-03T10:56:00.983Z","updated_at":"2015-09-03T10:56:01.070Z","level":"bronze","auto_issue":false,"status":"live","required_badges":[],"points":25,"object":"badge","id":"updated-badge"}'
143
+ http_version:
144
+ recorded_at: Thu, 03 Sep 2015 10:56:01 GMT
145
+ recorded_with: VCR 2.9.3