badgeapi 0.3.10 → 1.0.0

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 (69) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -1
  3. data/.rubocop.yml +147 -0
  4. data/README.md +44 -12
  5. data/Rakefile +24 -11
  6. data/badgeapi.gemspec +23 -22
  7. data/lib/badgeapi/badge.rb +24 -27
  8. data/lib/badgeapi/badgeapi_object.rb +160 -147
  9. data/lib/badgeapi/collection.rb +6 -9
  10. data/lib/badgeapi/errors/api_error.rb +3 -4
  11. data/lib/badgeapi/errors/badgeapi_error.rb +15 -15
  12. data/lib/badgeapi/errors/invalid_request_error.rb +3 -4
  13. data/lib/badgeapi/recipient.rb +13 -16
  14. data/lib/badgeapi/version.rb +1 -1
  15. data/lib/badgeapi.rb +13 -15
  16. data/test/badge/badge_test.rb +71 -150
  17. data/test/badgeapi_test.rb +4 -0
  18. data/test/collection/collection_test.rb +43 -77
  19. data/test/fixtures/badge_all.yml +113 -0
  20. data/test/fixtures/{bad_api_key.yml → badge_all_bad_user.yml} +14 -13
  21. data/test/fixtures/{all_badges_bad_user.yml → badge_all_badges_bad_user.yml} +16 -57
  22. data/test/fixtures/badge_all_expanded.yml +184 -0
  23. data/test/fixtures/badge_all_from_collection.yml +52 -0
  24. data/test/fixtures/badge_all_issued.yml +99 -0
  25. data/test/fixtures/{all_badges_limited.yml → badge_all_limited.yml} +10 -8
  26. data/test/fixtures/{create_badge.yml → badge_create.yml} +20 -16
  27. data/test/fixtures/{create_new_badge_failure.yml → badge_create_new.yml} +28 -22
  28. data/test/fixtures/badge_destroy.yml +147 -0
  29. data/test/fixtures/badge_destroy_error.yml +147 -0
  30. data/test/fixtures/badge_error.yml +54 -6
  31. data/test/fixtures/{issue_badge_to_bad_user.yml → badge_issue_to_bad_user.yml} +8 -6
  32. data/test/fixtures/badge_issue_to_user.yml +107 -0
  33. data/test/fixtures/{issue_badge_to_user_with_library_card.yml → badge_issue_to_user_with_library_card.yml} +21 -17
  34. data/test/fixtures/{one_badge.yml → badge_one.yml} +10 -8
  35. data/test/fixtures/{one_badge_expanded.yml → badge_one_expanded.yml} +11 -9
  36. data/test/fixtures/badge_requirements.yml +150 -105
  37. data/test/fixtures/badge_revoke_from_user.yml +107 -0
  38. data/test/fixtures/{update_badge_via_update.yml → badge_update_via_update.yml} +31 -25
  39. data/test/fixtures/{update_badge_via_update_slug_history.yml → badge_update_via_update_slug_history.yml} +41 -33
  40. data/test/fixtures/{all_collection.yml → collection_all.yml} +11 -9
  41. data/test/fixtures/collection_all_expanded.yml +123 -0
  42. data/test/fixtures/{all_collection_limit.yml → collection_all_limit.yml} +10 -8
  43. data/test/fixtures/{create_collection.yml → collection_create.yml} +20 -16
  44. data/test/fixtures/{create_new_collection_failure.yml → collection_create_new_failure.yml} +36 -28
  45. data/test/fixtures/{destroy_collection.yml → collection_destroy.yml} +36 -28
  46. data/test/fixtures/{destroy_collection_error.yml → collection_destroy_error.yml} +36 -28
  47. data/test/fixtures/collection_error.yml +108 -12
  48. data/test/fixtures/{one_collection.yml → collection_one.yml} +10 -8
  49. data/test/fixtures/collection_one_expanded.yml +106 -0
  50. data/test/fixtures/{update_collection.yml → collection_update.yml} +40 -32
  51. data/test/fixtures/{update_collection_via_update.yml → collection_update_via_update.yml} +30 -24
  52. data/test/fixtures/{bad_Recipietn_request.yml → recipient_bad_user_data.yml} +26 -22
  53. data/test/fixtures/recipient_with_badges.yml +20 -108
  54. data/test/fixtures/recipient_with_badges_unicard.yml +151 -8
  55. data/test/recipient/recipient_test.rb +11 -29
  56. metadata +69 -73
  57. data/test/fixtures/all_badges.yml +0 -121
  58. data/test/fixtures/all_badges_expanded.yml +0 -196
  59. data/test/fixtures/all_badges_from_collection.yml +0 -52
  60. data/test/fixtures/all_badges_issued.yml +0 -430
  61. data/test/fixtures/all_collection_expanded.yml +0 -131
  62. data/test/fixtures/bad_Recipient.yml +0 -183
  63. data/test/fixtures/destroy_badge.yml +0 -277
  64. data/test/fixtures/destroy_badge_error.yml +0 -231
  65. data/test/fixtures/issue_already_owned_badge.yml +0 -49
  66. data/test/fixtures/issue_badge_to_user.yml +0 -199
  67. data/test/fixtures/one_collection_expanded.yml +0 -104
  68. data/test/fixtures/revoke_badge_from_user.yml +0 -199
  69. data/test/fixtures/revoke_badge_not_issued.yml +0 -49
@@ -0,0 +1,184 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://gamification-api.dev/v1/badges?expand=monkey
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.2
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: 400
21
+ message: Bad Request
22
+ headers:
23
+ Strict-Transport-Security:
24
+ - max-age=31536000
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
+ - 3870340e-11fa-4776-aff1-350ef0babff3
37
+ X-Runtime:
38
+ - '0.015141'
39
+ Date:
40
+ - Thu, 19 Nov 2015 15:41:25 GMT
41
+ Connection:
42
+ - close
43
+ body:
44
+ encoding: UTF-8
45
+ string: '{"error":{"type":"invalid_request_error","message":"Invalid expand
46
+ parameter: monkey","status":400}}'
47
+ http_version:
48
+ recorded_at: Thu, 19 Nov 2015 15:41:25 GMT
49
+ - request:
50
+ method: get
51
+ uri: https://gamification-api.dev/v1/badges?expand=collection
52
+ body:
53
+ encoding: US-ASCII
54
+ string: ''
55
+ headers:
56
+ User-Agent:
57
+ - Faraday v0.9.2
58
+ Authorization:
59
+ - Token token="c9cde524238644fa93393159e5e9ad87"
60
+ Accept-Encoding:
61
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
62
+ Accept:
63
+ - "*/*"
64
+ response:
65
+ status:
66
+ code: 200
67
+ message: OK
68
+ headers:
69
+ Strict-Transport-Security:
70
+ - max-age=31536000
71
+ X-Frame-Options:
72
+ - SAMEORIGIN
73
+ X-Xss-Protection:
74
+ - 1; mode=block
75
+ X-Content-Type-Options:
76
+ - nosniff
77
+ Content-Type:
78
+ - application/json; charset=utf-8
79
+ Etag:
80
+ - '"13aa54c0f64da5d07c290b7e5fb7d420"'
81
+ Cache-Control:
82
+ - max-age=0, private, must-revalidate
83
+ X-Request-Id:
84
+ - 6fe77cd9-5ae1-47bc-87d0-e588a4c38f17
85
+ X-Runtime:
86
+ - '0.029899'
87
+ Date:
88
+ - Thu, 19 Nov 2015 15:41:28 GMT
89
+ Connection:
90
+ - close
91
+ body:
92
+ encoding: ASCII-8BIT
93
+ string: !binary |-
94
+ W3sibmFtZSI6IkJvb2sgV29ybSIsImRlc2NyaXB0aW9uIjoiWW91IGhhdmUg
95
+ bG9hbmVkIG91dCBvdmVyIDI1IGJvb2tzLiBOaWNlIGdvaW5nISIsInJlcXVp
96
+ cmVtZW50cyI6IkxvYW4gb3V0IDI1IGJvb2tzIiwiaGludCI6IllvdSBtdXN0
97
+ IGxpa2UgYm9va3MuLi4iLCJpbWFnZSI6Imh0dHBzOi8vZ2FtaWZpY2F0aW9u
98
+ LWFwaS5kZXYvYmFkZ2VfaW1hZ2VzL2Jvb2std29ybS9iYWRnZS5wbmciLCJj
99
+ b2xsZWN0aW9uX2lkIjoibGlicmFyeSIsImNyZWF0ZWRfYXQiOiIyMDE1LTEx
100
+ LTE4VDExOjM5OjU4Ljk1NloiLCJ1cGRhdGVkX2F0IjoiMjAxNS0xMS0xOFQx
101
+ MTozOTo1OC45NTZaIiwibGV2ZWwiOiJicm9uemUiLCJhdXRvX2lzc3VlIjpm
102
+ YWxzZSwic3RhdHVzIjoibGl2ZSIsInJlcXVpcmVkX2JhZGdlcyI6W10sInBv
103
+ aW50cyI6MjUsIm9iamVjdCI6ImJhZGdlIiwiY29sbGVjdGlvbiI6eyJpZCI6
104
+ ImxpYnJhcnkiLCJuYW1lIjoiTGlicmFyeSIsImRlc2NyaXB0aW9uIjoiVXNl
105
+ IHlvdXIgbGlicmFyeSBhbmQgZWFybiBiYWRnZXMiLCJjcmVhdGVkX2F0Ijoi
106
+ MjAxNS0xMS0xOFQxMTozOTo1OC44NTlaIiwidXBkYXRlZF9hdCI6IjIwMTUt
107
+ MTEtMThUMTE6Mzk6NTguODU5WiIsInRvdGFsX3BvaW50c19hdmFpbGFibGUi
108
+ OjEyNSwib2JqZWN0IjoiY29sbGVjdGlvbiJ9LCJpZCI6ImJvb2std29ybSJ9
109
+ LHsibmFtZSI6Ik1lZ2EgQm9vayBXb3JtIiwiZGVzY3JpcHRpb24iOiJZb3Ug
110
+ aGF2ZSBsb2FuZWQgb3V0IDUwIGJvb2tzLiIsInJlcXVpcmVtZW50cyI6Ikxv
111
+ YW4gb3V0IDUwIGJvb2tzIiwiaGludCI6IllvdSBtdXN0IHJlYWxseSBsaWtl
112
+ IGJvb2tzLi4uIiwiaW1hZ2UiOiJodHRwczovL2dhbWlmaWNhdGlvbi1hcGku
113
+ ZGV2L2JhZGdlX2ltYWdlcy9tZWdhLWJvb2std29ybS9iYWRnZS5wbmciLCJj
114
+ b2xsZWN0aW9uX2lkIjoibGlicmFyeSIsImNyZWF0ZWRfYXQiOiIyMDE1LTEx
115
+ LTE4VDExOjQwOjA1LjA2OFoiLCJ1cGRhdGVkX2F0IjoiMjAxNS0xMS0xOFQx
116
+ MTo0MDowNS4wNjhaIiwibGV2ZWwiOiJzaWx2ZXIiLCJhdXRvX2lzc3VlIjpm
117
+ YWxzZSwic3RhdHVzIjoibGl2ZSIsInJlcXVpcmVkX2JhZGdlcyI6W3sibmFt
118
+ ZSI6IkJvb2sgV29ybSIsImRlc2NyaXB0aW9uIjoiWW91IGhhdmUgbG9hbmVk
119
+ IG91dCBvdmVyIDI1IGJvb2tzLiBOaWNlIGdvaW5nISIsInJlcXVpcmVtZW50
120
+ cyI6IkxvYW4gb3V0IDI1IGJvb2tzIiwiaGludCI6IllvdSBtdXN0IGxpa2Ug
121
+ Ym9va3MuLi4iLCJpbWFnZSI6Imh0dHBzOi8vZ2FtaWZpY2F0aW9uLWFwaS5k
122
+ ZXYvYmFkZ2VfaW1hZ2VzL2Jvb2std29ybS9iYWRnZS5wbmciLCJjb2xsZWN0
123
+ aW9uX2lkIjoibGlicmFyeSIsImNyZWF0ZWRfYXQiOiIyMDE1LTExLTE4VDEx
124
+ OjM5OjU4Ljk1NloiLCJ1cGRhdGVkX2F0IjoiMjAxNS0xMS0xOFQxMTozOTo1
125
+ OC45NTZaIiwibGV2ZWwiOiJicm9uemUiLCJhdXRvX2lzc3VlIjpmYWxzZSwi
126
+ c3RhdHVzIjoibGl2ZSIsInJlcXVpcmVkX2JhZGdlcyI6W10sInBvaW50cyI6
127
+ MjUsIm9iamVjdCI6ImJhZGdlIiwiaWQiOiJib29rLXdvcm0ifV0sInBvaW50
128
+ cyI6NTAsIm9iamVjdCI6ImJhZGdlIiwiY29sbGVjdGlvbiI6eyJpZCI6Imxp
129
+ YnJhcnkiLCJuYW1lIjoiTGlicmFyeSIsImRlc2NyaXB0aW9uIjoiVXNlIHlv
130
+ dXIgbGlicmFyeSBhbmQgZWFybiBiYWRnZXMiLCJjcmVhdGVkX2F0IjoiMjAx
131
+ NS0xMS0xOFQxMTozOTo1OC44NTlaIiwidXBkYXRlZF9hdCI6IjIwMTUtMTEt
132
+ MThUMTE6Mzk6NTguODU5WiIsInRvdGFsX3BvaW50c19hdmFpbGFibGUiOjEy
133
+ NSwib2JqZWN0IjoiY29sbGVjdGlvbiJ9LCJpZCI6Im1lZ2EtYm9vay13b3Jt
134
+ In0seyJuYW1lIjoiTmlnaHQgT3dsIiwiZGVzY3JpcHRpb24iOiJZb3UgbG9h
135
+ bmVkIGEgYm9vayBvdXQgYmV0d2VlbiBNaWRuaWdodCBhbmQgNSBvJ2Nsb2Nr
136
+ IiwicmVxdWlyZW1lbnRzIjoiTG9hbiBvdXQgYSBib29rIGJldHdlZW4gMDA6
137
+ MDAgLSA1OjAwIiwiaGludCI6Ikl0IG11c3QgYmUgbGF0ZS4uLiIsImltYWdl
138
+ IjoiaHR0cHM6Ly9nYW1pZmljYXRpb24tYXBpLmRldi9iYWRnZV9pbWFnZXMv
139
+ bmlnaHQtb3dsL2JhZGdlLnBuZyIsImNvbGxlY3Rpb25faWQiOiJsaWJyYXJ5
140
+ IiwiY3JlYXRlZF9hdCI6IjIwMTUtMTEtMThUMTE6NDA6MTAuMTc2WiIsInVw
141
+ ZGF0ZWRfYXQiOiIyMDE1LTExLTE4VDExOjQwOjEwLjE3NloiLCJsZXZlbCI6
142
+ ImJyb256ZSIsImF1dG9faXNzdWUiOmZhbHNlLCJzdGF0dXMiOiJsaXZlIiwi
143
+ cmVxdWlyZWRfYmFkZ2VzIjpbXSwicG9pbnRzIjoyNSwib2JqZWN0IjoiYmFk
144
+ Z2UiLCJjb2xsZWN0aW9uIjp7ImlkIjoibGlicmFyeSIsIm5hbWUiOiJMaWJy
145
+ YXJ5IiwiZGVzY3JpcHRpb24iOiJVc2UgeW91ciBsaWJyYXJ5IGFuZCBlYXJu
146
+ IGJhZGdlcyIsImNyZWF0ZWRfYXQiOiIyMDE1LTExLTE4VDExOjM5OjU4Ljg1
147
+ OVoiLCJ1cGRhdGVkX2F0IjoiMjAxNS0xMS0xOFQxMTozOTo1OC44NTlaIiwi
148
+ dG90YWxfcG9pbnRzX2F2YWlsYWJsZSI6MTI1LCJvYmplY3QiOiJjb2xsZWN0
149
+ aW9uIn0sImlkIjoibmlnaHQtb3dsIn0seyJuYW1lIjoiT3VyIEJlc3QgRnJp
150
+ ZW5kIiwiZGVzY3JpcHRpb24iOiJZb3UgZGlkbid0IGdldCBhbnkgZmluZXMg
151
+ aW4gdGhlIGxhc3QgMTIgbW9udGhzISIsInJlcXVpcmVtZW50cyI6IsKjMCBp
152
+ biBmaW5lcyBmb3IgdGhlIHBhc3QgMTIgbW9udGhzIiwiaGludCI6IkRvbid0
153
+ IGdldCBpbiB0cm91YmxlIG5vdy4uLiIsImltYWdlIjoiaHR0cHM6Ly9nYW1p
154
+ ZmljYXRpb24tYXBpLmRldi9iYWRnZV9pbWFnZXMvb3VyLWJlc3QtZnJpZW5k
155
+ L2JhZGdlLnBuZyIsImNvbGxlY3Rpb25faWQiOiJsaWJyYXJ5IiwiY3JlYXRl
156
+ ZF9hdCI6IjIwMTUtMTEtMThUMTE6NDA6MTUuMjEwWiIsInVwZGF0ZWRfYXQi
157
+ OiIyMDE1LTExLTE4VDExOjQwOjE1LjIxMFoiLCJsZXZlbCI6ImJyb256ZSIs
158
+ ImF1dG9faXNzdWUiOmZhbHNlLCJzdGF0dXMiOiJsaXZlIiwicmVxdWlyZWRf
159
+ YmFkZ2VzIjpbXSwicG9pbnRzIjoyNSwib2JqZWN0IjoiYmFkZ2UiLCJjb2xs
160
+ ZWN0aW9uIjp7ImlkIjoibGlicmFyeSIsIm5hbWUiOiJMaWJyYXJ5IiwiZGVz
161
+ Y3JpcHRpb24iOiJVc2UgeW91ciBsaWJyYXJ5IGFuZCBlYXJuIGJhZGdlcyIs
162
+ ImNyZWF0ZWRfYXQiOiIyMDE1LTExLTE4VDExOjM5OjU4Ljg1OVoiLCJ1cGRh
163
+ dGVkX2F0IjoiMjAxNS0xMS0xOFQxMTozOTo1OC44NTlaIiwidG90YWxfcG9p
164
+ bnRzX2F2YWlsYWJsZSI6MTI1LCJvYmplY3QiOiJjb2xsZWN0aW9uIn0sImlk
165
+ Ijoib3VyLWJlc3QtZnJpZW5kIn0seyJuYW1lIjoiTWFyYXRob24gTWFuIiwi
166
+ ZGVzY3JpcHRpb24iOiJZb3UgaGF2ZSBydW4gMTAgbGFwcyBvZiB0aGUgdHJp
167
+ cHMgdHJhaWwgdGhhdCBpcyA0NyBraWxvbWV0ZXJzIiwicmVxdWlyZW1lbnRz
168
+ IjoiQ29tcGxldGUgMTAgbGFwcyBvZiB0aGUgdHJpbSB0cmFpbCBvdmVyIGFu
169
+ eSB0aW1lIiwiaGludCI6IktlZXAgZ29pbmcuLi4iLCJpbWFnZSI6Imh0dHBz
170
+ Oi8vZ2FtaWZpY2F0aW9uLWFwaS5kZXYvYmFkZ2VfaW1hZ2VzL21hcmF0aG9u
171
+ LW1hbi9iYWRnZS5wbmciLCJjb2xsZWN0aW9uX2lkIjoidHJpbS10cmFpbCIs
172
+ ImNyZWF0ZWRfYXQiOiIyMDE1LTExLTE4VDExOjQwOjIwLjMwM1oiLCJ1cGRh
173
+ dGVkX2F0IjoiMjAxNS0xMS0xOFQxMTo0MDoyMC4zMDNaIiwibGV2ZWwiOiJn
174
+ b2xkIiwiYXV0b19pc3N1ZSI6ZmFsc2UsInN0YXR1cyI6ImxpdmUiLCJyZXF1
175
+ aXJlZF9iYWRnZXMiOltdLCJwb2ludHMiOjc1LCJvYmplY3QiOiJiYWRnZSIs
176
+ ImNvbGxlY3Rpb24iOnsiaWQiOiJ0cmltLXRyYWlsIiwibmFtZSI6IlRyaW0g
177
+ VHJhaWwiLCJkZXNjcmlwdGlvbiI6IkdldCBmaXQgYW5kIGhlYWx0aCBwbHVz
178
+ IGVhcm4gc29tZSBiYWRnZXMiLCJjcmVhdGVkX2F0IjoiMjAxNS0xMS0xOFQx
179
+ MTozOTo1OC44OThaIiwidXBkYXRlZF9hdCI6IjIwMTUtMTEtMThUMTE6Mzk6
180
+ NTguODk4WiIsInRvdGFsX3BvaW50c19hdmFpbGFibGUiOjc1LCJvYmplY3Qi
181
+ OiJjb2xsZWN0aW9uIn0sImlkIjoibWFyYXRob24tbWFuIn1d
182
+ http_version:
183
+ recorded_at: Thu, 19 Nov 2015 15:41:28 GMT
184
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,52 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://gamification-api.dev/v1/badges?collection_id=2
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.2
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
+ Strict-Transport-Security:
24
+ - max-age=31536000
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
+ - '"7cf5fee40381853757c784de33957938"'
35
+ Cache-Control:
36
+ - max-age=0, private, must-revalidate
37
+ X-Request-Id:
38
+ - a9576c79-00ec-4f6c-afd9-5a6202555b23
39
+ X-Runtime:
40
+ - '0.019545'
41
+ Date:
42
+ - Thu, 19 Nov 2015 15:24:04 GMT
43
+ Connection:
44
+ - close
45
+ body:
46
+ encoding: UTF-8
47
+ string: '[{"name":"Marathon Man","description":"You have run 10 laps of the
48
+ trips trail that is 47 kilometers","requirements":"Complete 10 laps of the
49
+ trim trail over any time","hint":"Keep going...","image":"https://gamification-api.dev/badge_images/marathon-man/badge.png","collection_id":"trim-trail","created_at":"2015-11-18T11:40:20.303Z","updated_at":"2015-11-18T11:40:20.303Z","level":"gold","auto_issue":false,"status":"live","required_badges":[],"points":75,"object":"badge","id":"marathon-man"}]'
50
+ http_version:
51
+ recorded_at: Thu, 19 Nov 2015 15:24:04 GMT
52
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,99 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://gamification-api.dev/v1/badges?user=t.skarbek-wazynski@lancaster.ac.uk
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.2
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
+ Strict-Transport-Security:
24
+ - max-age=31536000
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
+ - '"2b292aa4d0fac5ab7af25225a3161eb4"'
35
+ Cache-Control:
36
+ - max-age=0, private, must-revalidate
37
+ X-Request-Id:
38
+ - 3ea70d99-8efd-4bb0-a244-bafd20b663fd
39
+ X-Runtime:
40
+ - '0.023920'
41
+ Date:
42
+ - Thu, 19 Nov 2015 15:41:28 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":"https://gamification-api.dev/badge_images/book-worm/badge.png","collection_id":"library","created_at":"2015-11-18T11:39:58.956Z","updated_at":"2015-11-18T11:39:58.956Z","level":"bronze","auto_issue":false,"status":"live","required_badges":[],"points":25,"object":"badge","id":"book-worm"}]'
49
+ http_version:
50
+ recorded_at: Thu, 19 Nov 2015 15:41:28 GMT
51
+ - request:
52
+ method: get
53
+ uri: https://gamification-api.dev/v1/badges?user=0043181
54
+ body:
55
+ encoding: US-ASCII
56
+ string: ''
57
+ headers:
58
+ User-Agent:
59
+ - Faraday v0.9.2
60
+ Authorization:
61
+ - Token token="c9cde524238644fa93393159e5e9ad87"
62
+ Accept-Encoding:
63
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
64
+ Accept:
65
+ - "*/*"
66
+ response:
67
+ status:
68
+ code: 200
69
+ message: OK
70
+ headers:
71
+ Strict-Transport-Security:
72
+ - max-age=31536000
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
+ - '"2b292aa4d0fac5ab7af25225a3161eb4"'
83
+ Cache-Control:
84
+ - max-age=0, private, must-revalidate
85
+ X-Request-Id:
86
+ - 9b4d3472-7723-4349-af43-c07066eb4454
87
+ X-Runtime:
88
+ - '1.428415'
89
+ Date:
90
+ - Thu, 19 Nov 2015 15:41:29 GMT
91
+ Connection:
92
+ - close
93
+ body:
94
+ encoding: UTF-8
95
+ string: '[{"name":"Book Worm","description":"You have loaned out over 25 books.
96
+ Nice going!","requirements":"Loan out 25 books","hint":"You must like books...","image":"https://gamification-api.dev/badge_images/book-worm/badge.png","collection_id":"library","created_at":"2015-11-18T11:39:58.956Z","updated_at":"2015-11-18T11:39:58.956Z","level":"bronze","auto_issue":false,"status":"live","required_badges":[],"points":25,"object":"badge","id":"book-worm"}]'
97
+ http_version:
98
+ recorded_at: Thu, 19 Nov 2015 15:41:29 GMT
99
+ recorded_with: VCR 2.9.3
@@ -2,13 +2,13 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: get
5
- uri: http://gamification-api.dev/v1/badges?limit=1
5
+ uri: https://gamification-api.dev/v1/badges?limit=1
6
6
  body:
7
7
  encoding: US-ASCII
8
8
  string: ''
9
9
  headers:
10
10
  User-Agent:
11
- - Faraday v0.9.1
11
+ - Faraday v0.9.2
12
12
  Authorization:
13
13
  - Token token="c9cde524238644fa93393159e5e9ad87"
14
14
  Accept-Encoding:
@@ -20,6 +20,8 @@ http_interactions:
20
20
  code: 200
21
21
  message: OK
22
22
  headers:
23
+ Strict-Transport-Security:
24
+ - max-age=31536000
23
25
  X-Frame-Options:
24
26
  - SAMEORIGIN
25
27
  X-Xss-Protection:
@@ -29,21 +31,21 @@ http_interactions:
29
31
  Content-Type:
30
32
  - application/json; charset=utf-8
31
33
  Etag:
32
- - '"d285079b3dd4c8add1b94f6ed859b81e"'
34
+ - '"2b292aa4d0fac5ab7af25225a3161eb4"'
33
35
  Cache-Control:
34
36
  - max-age=0, private, must-revalidate
35
37
  X-Request-Id:
36
- - e25dba8c-4ea6-43f2-ad54-025578286b8f
38
+ - d4af12ff-dff0-47d4-ad5d-f2ce12d209bd
37
39
  X-Runtime:
38
- - '0.015611'
40
+ - '0.016711'
39
41
  Date:
40
- - Thu, 03 Sep 2015 10:55:55 GMT
42
+ - Thu, 19 Nov 2015 15:40:41 GMT
41
43
  Connection:
42
44
  - close
43
45
  body:
44
46
  encoding: UTF-8
45
47
  string: '[{"name":"Book Worm","description":"You have loaned out over 25 books.
46
- Nice going!","requirements":"Loan 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","required_badges":[],"points":25,"object":"badge","id":"book-worm"}]'
48
+ Nice going!","requirements":"Loan out 25 books","hint":"You must like books...","image":"https://gamification-api.dev/badge_images/book-worm/badge.png","collection_id":"library","created_at":"2015-11-18T11:39:58.956Z","updated_at":"2015-11-18T11:39:58.956Z","level":"bronze","auto_issue":false,"status":"live","required_badges":[],"points":25,"object":"badge","id":"book-worm"}]'
47
49
  http_version:
48
- recorded_at: Thu, 03 Sep 2015 10:55:55 GMT
50
+ recorded_at: Thu, 19 Nov 2015 15:40:41 GMT
49
51
  recorded_with: VCR 2.9.3
@@ -2,13 +2,13 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: http://gamification-api.dev/v1/badges
5
+ uri: https://gamification-api.dev/v1/badges
6
6
  body:
7
7
  encoding: UTF-8
8
8
  string: badge%5Bauto_issue%5D=true&badge%5Bcollection_id%5D=1&badge%5Bdescription%5D=This+is+a+new+badge&badge%5Bhint%5D=Love+us..&badge%5Blevel%5D=silver&badge%5Bname%5D=Create+Badge+Test&badge%5Brequirements%5D=You+need+to+love+the+Badge+API
9
9
  headers:
10
10
  User-Agent:
11
- - Faraday v0.9.1
11
+ - Faraday v0.9.2
12
12
  Authorization:
13
13
  - Token token="c9cde524238644fa93393159e5e9ad87"
14
14
  Content-Type:
@@ -22,6 +22,8 @@ http_interactions:
22
22
  code: 201
23
23
  message: Created
24
24
  headers:
25
+ Strict-Transport-Security:
26
+ - max-age=31536000
25
27
  X-Frame-Options:
26
28
  - SAMEORIGIN
27
29
  X-Xss-Protection:
@@ -31,32 +33,32 @@ http_interactions:
31
33
  Content-Type:
32
34
  - application/json; charset=utf-8
33
35
  Etag:
34
- - '"a77f2514d4666598c45a619d9b6dd8ab"'
36
+ - '"0b41d4bd5fcc3c78c38fd773f567c2b4"'
35
37
  Cache-Control:
36
38
  - max-age=0, private, must-revalidate
37
39
  X-Request-Id:
38
- - 5fa77d10-8b12-469f-a165-be1285ae5b8b
40
+ - 18df4d04-bd80-49c6-b0b7-6dc6a8b636b8
39
41
  X-Runtime:
40
- - '0.077204'
42
+ - '8.035380'
41
43
  Date:
42
- - Thu, 03 Sep 2015 10:55:56 GMT
44
+ - Thu, 19 Nov 2015 15:41:17 GMT
43
45
  Connection:
44
46
  - close
45
47
  body:
46
48
  encoding: UTF-8
47
49
  string: '{"name":"Create Badge Test","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-test/badge.png","collection_id":"library","created_at":"2015-09-03T10:55:56.132Z","updated_at":"2015-09-03T10:55:56.132Z","level":"silver","auto_issue":true,"status":"draft","required_badges":[],"points":50,"object":"badge","id":"create-badge-test"}'
50
+ need to love the Badge API","hint":"Love us..","image":"https://gamification-api.dev/badge_images/create-badge-test/badge.png","collection_id":"library","created_at":"2015-11-19T15:41:09.295Z","updated_at":"2015-11-19T15:41:09.295Z","level":"silver","auto_issue":true,"status":"draft","required_badges":[],"points":50,"object":"badge","id":"create-badge-test"}'
49
51
  http_version:
50
- recorded_at: Thu, 03 Sep 2015 10:55:56 GMT
52
+ recorded_at: Thu, 19 Nov 2015 15:41:17 GMT
51
53
  - request:
52
54
  method: delete
53
- uri: http://gamification-api.dev/v1/badges/create-badge-test
55
+ uri: https://gamification-api.dev/v1/badges/create-badge-test
54
56
  body:
55
57
  encoding: US-ASCII
56
58
  string: ''
57
59
  headers:
58
60
  User-Agent:
59
- - Faraday v0.9.1
61
+ - Faraday v0.9.2
60
62
  Authorization:
61
63
  - Token token="c9cde524238644fa93393159e5e9ad87"
62
64
  Accept-Encoding:
@@ -68,6 +70,8 @@ http_interactions:
68
70
  code: 200
69
71
  message: OK
70
72
  headers:
73
+ Strict-Transport-Security:
74
+ - max-age=31536000
71
75
  X-Frame-Options:
72
76
  - SAMEORIGIN
73
77
  X-Xss-Protection:
@@ -77,21 +81,21 @@ http_interactions:
77
81
  Content-Type:
78
82
  - application/json; charset=utf-8
79
83
  Etag:
80
- - '"a77f2514d4666598c45a619d9b6dd8ab"'
84
+ - '"0b41d4bd5fcc3c78c38fd773f567c2b4"'
81
85
  Cache-Control:
82
86
  - max-age=0, private, must-revalidate
83
87
  X-Request-Id:
84
- - 6e5cbd8d-4119-4b8f-bdb9-0854797176cd
88
+ - 7c7590b0-6af1-40d5-9a81-27c738d77cb6
85
89
  X-Runtime:
86
- - '0.026501'
90
+ - '0.042983'
87
91
  Date:
88
- - Thu, 03 Sep 2015 10:55:56 GMT
92
+ - Thu, 19 Nov 2015 15:41:17 GMT
89
93
  Connection:
90
94
  - close
91
95
  body:
92
96
  encoding: UTF-8
93
97
  string: '{"name":"Create Badge Test","description":"This is a new badge","requirements":"You
94
- need to love the Badge API","hint":"Love us..","image":"http://gamification-api.dev/badge_images/create-badge-test/badge.png","collection_id":"library","created_at":"2015-09-03T10:55:56.132Z","updated_at":"2015-09-03T10:55:56.132Z","level":"silver","auto_issue":true,"status":"draft","required_badges":[],"points":50,"object":"badge","id":"create-badge-test"}'
98
+ need to love the Badge API","hint":"Love us..","image":"https://gamification-api.dev/badge_images/create-badge-test/badge.png","collection_id":"library","created_at":"2015-11-19T15:41:09.295Z","updated_at":"2015-11-19T15:41:09.295Z","level":"silver","auto_issue":true,"status":"draft","required_badges":[],"points":50,"object":"badge","id":"create-badge-test"}'
95
99
  http_version:
96
- recorded_at: Thu, 03 Sep 2015 10:55:56 GMT
100
+ recorded_at: Thu, 19 Nov 2015 15:41:17 GMT
97
101
  recorded_with: VCR 2.9.3
@@ -2,13 +2,13 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: post
5
- uri: http://gamification-api.dev/v1/badges
5
+ uri: https://gamification-api.dev/v1/badges
6
6
  body:
7
7
  encoding: UTF-8
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+Test+Destroy&badge%5Brequirements%5D=You+need+to+love+the+Badge+API
9
9
  headers:
10
10
  User-Agent:
11
- - Faraday v0.9.1
11
+ - Faraday v0.9.2
12
12
  Authorization:
13
13
  - Token token="c9cde524238644fa93393159e5e9ad87"
14
14
  Content-Type:
@@ -22,6 +22,8 @@ http_interactions:
22
22
  code: 201
23
23
  message: Created
24
24
  headers:
25
+ Strict-Transport-Security:
26
+ - max-age=31536000
25
27
  X-Frame-Options:
26
28
  - SAMEORIGIN
27
29
  X-Xss-Protection:
@@ -31,32 +33,32 @@ http_interactions:
31
33
  Content-Type:
32
34
  - application/json; charset=utf-8
33
35
  Etag:
34
- - '"543350fcaeeb07c27708621f9c00008f"'
36
+ - '"9868ab4fb769c58eb98879af1359a05e"'
35
37
  Cache-Control:
36
38
  - max-age=0, private, must-revalidate
37
39
  X-Request-Id:
38
- - 8a7e4761-c728-43ac-8e5d-f5650499daf7
40
+ - 7d74315d-6df6-436e-a38e-60b593705ec8
39
41
  X-Runtime:
40
- - '0.079480'
42
+ - '7.618003'
41
43
  Date:
42
- - Thu, 03 Sep 2015 10:55:56 GMT
44
+ - Thu, 19 Nov 2015 15:41:25 GMT
43
45
  Connection:
44
46
  - close
45
47
  body:
46
48
  encoding: UTF-8
47
49
  string: '{"name":"Create Badge Test Destroy","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-test-destroy/badge.png","collection_id":"library","created_at":"2015-09-03T10:55:56.287Z","updated_at":"2015-09-03T10:55:56.287Z","level":"bronze","auto_issue":false,"status":"draft","required_badges":[],"points":25,"object":"badge","id":"create-badge-test-destroy"}'
50
+ need to love the Badge API","hint":"Love us..","image":"https://gamification-api.dev/badge_images/create-badge-test-destroy/badge.png","collection_id":"library","created_at":"2015-11-19T15:41:17.944Z","updated_at":"2015-11-19T15:41:17.944Z","level":"bronze","auto_issue":false,"status":"draft","required_badges":[],"points":25,"object":"badge","id":"create-badge-test-destroy"}'
49
51
  http_version:
50
- recorded_at: Thu, 03 Sep 2015 10:55:56 GMT
52
+ recorded_at: Thu, 19 Nov 2015 15:41:25 GMT
51
53
  - request:
52
54
  method: post
53
- uri: http://gamification-api.dev/v1/badges
55
+ uri: https://gamification-api.dev/v1/badges
54
56
  body:
55
57
  encoding: UTF-8
56
58
  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+Test+Destroy&badge%5Brequirements%5D=You+need+to+love+the+Badge+API
57
59
  headers:
58
60
  User-Agent:
59
- - Faraday v0.9.1
61
+ - Faraday v0.9.2
60
62
  Authorization:
61
63
  - Token token="c9cde524238644fa93393159e5e9ad87"
62
64
  Content-Type:
@@ -70,6 +72,8 @@ http_interactions:
70
72
  code: 422
71
73
  message: Unprocessable Entity
72
74
  headers:
75
+ Strict-Transport-Security:
76
+ - max-age=31536000
73
77
  X-Frame-Options:
74
78
  - SAMEORIGIN
75
79
  X-Xss-Protection:
@@ -81,11 +85,11 @@ http_interactions:
81
85
  Cache-Control:
82
86
  - no-cache
83
87
  X-Request-Id:
84
- - b92600d5-96ae-42cd-808a-d5896440db4e
88
+ - 7e11391c-8c16-46cb-8a46-08a5b88e003f
85
89
  X-Runtime:
86
- - '0.021309'
90
+ - '0.039658'
87
91
  Date:
88
- - Thu, 03 Sep 2015 10:55:56 GMT
92
+ - Thu, 19 Nov 2015 15:41:25 GMT
89
93
  Connection:
90
94
  - close
91
95
  body:
@@ -93,16 +97,16 @@ http_interactions:
93
97
  string: '{"error":{"type":"invalid_request_error","message":{"name":["has already
94
98
  been taken"]},"status":422}}'
95
99
  http_version:
96
- recorded_at: Thu, 03 Sep 2015 10:55:56 GMT
100
+ recorded_at: Thu, 19 Nov 2015 15:41:25 GMT
97
101
  - request:
98
102
  method: delete
99
- uri: http://gamification-api.dev/v1/badges/create-badge-test-destroy
103
+ uri: https://gamification-api.dev/v1/badges/create-badge-test-destroy
100
104
  body:
101
105
  encoding: US-ASCII
102
106
  string: ''
103
107
  headers:
104
108
  User-Agent:
105
- - Faraday v0.9.1
109
+ - Faraday v0.9.2
106
110
  Authorization:
107
111
  - Token token="c9cde524238644fa93393159e5e9ad87"
108
112
  Accept-Encoding:
@@ -114,6 +118,8 @@ http_interactions:
114
118
  code: 200
115
119
  message: OK
116
120
  headers:
121
+ Strict-Transport-Security:
122
+ - max-age=31536000
117
123
  X-Frame-Options:
118
124
  - SAMEORIGIN
119
125
  X-Xss-Protection:
@@ -123,21 +129,21 @@ http_interactions:
123
129
  Content-Type:
124
130
  - application/json; charset=utf-8
125
131
  Etag:
126
- - '"543350fcaeeb07c27708621f9c00008f"'
132
+ - '"9868ab4fb769c58eb98879af1359a05e"'
127
133
  Cache-Control:
128
134
  - max-age=0, private, must-revalidate
129
135
  X-Request-Id:
130
- - 86eb7d04-dfd9-4646-b4f8-901f2e38142b
136
+ - 4c39d3d2-b649-4292-a9cc-975037ba7a36
131
137
  X-Runtime:
132
- - '0.025862'
138
+ - '0.038233'
133
139
  Date:
134
- - Thu, 03 Sep 2015 10:55:56 GMT
140
+ - Thu, 19 Nov 2015 15:41:25 GMT
135
141
  Connection:
136
142
  - close
137
143
  body:
138
144
  encoding: UTF-8
139
145
  string: '{"name":"Create Badge Test Destroy","description":"This is a new badge","requirements":"You
140
- need to love the Badge API","hint":"Love us..","image":"http://gamification-api.dev/badge_images/create-badge-test-destroy/badge.png","collection_id":"library","created_at":"2015-09-03T10:55:56.287Z","updated_at":"2015-09-03T10:55:56.287Z","level":"bronze","auto_issue":false,"status":"draft","required_badges":[],"points":25,"object":"badge","id":"create-badge-test-destroy"}'
146
+ need to love the Badge API","hint":"Love us..","image":"https://gamification-api.dev/badge_images/create-badge-test-destroy/badge.png","collection_id":"library","created_at":"2015-11-19T15:41:17.944Z","updated_at":"2015-11-19T15:41:17.944Z","level":"bronze","auto_issue":false,"status":"draft","required_badges":[],"points":25,"object":"badge","id":"create-badge-test-destroy"}'
141
147
  http_version:
142
- recorded_at: Thu, 03 Sep 2015 10:55:56 GMT
148
+ recorded_at: Thu, 19 Nov 2015 15:41:25 GMT
143
149
  recorded_with: VCR 2.9.3