candy_check 0.4.0 → 0.6.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 (66) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/build.yml +35 -0
  3. data/.rubocop.yml +10 -0
  4. data/.ruby-version +1 -1
  5. data/Gemfile +1 -1
  6. data/Guardfile +5 -3
  7. data/README.md +2 -2
  8. data/Rakefile +5 -5
  9. data/candy_check.gemspec +14 -12
  10. data/lib/candy_check/app_store/client.rb +7 -7
  11. data/lib/candy_check/app_store/config.rb +7 -9
  12. data/lib/candy_check/app_store/receipt.rb +16 -16
  13. data/lib/candy_check/app_store/receipt_collection.rb +2 -2
  14. data/lib/candy_check/app_store/subscription_verification.rb +5 -5
  15. data/lib/candy_check/app_store/verification.rb +3 -3
  16. data/lib/candy_check/app_store/verification_failure.rb +25 -21
  17. data/lib/candy_check/app_store/verifier.rb +4 -5
  18. data/lib/candy_check/app_store.rb +8 -8
  19. data/lib/candy_check/cli/app.rb +3 -3
  20. data/lib/candy_check/cli/commands/app_store.rb +1 -1
  21. data/lib/candy_check/cli/commands.rb +4 -4
  22. data/lib/candy_check/cli/out.rb +1 -3
  23. data/lib/candy_check/cli.rb +3 -3
  24. data/lib/candy_check/play_store/product_acknowledgements/acknowledgement.rb +2 -1
  25. data/lib/candy_check/play_store/product_purchases/product_purchase.rb +3 -3
  26. data/lib/candy_check/play_store/product_purchases/product_verification.rb +1 -1
  27. data/lib/candy_check/play_store/subscription_purchases/subscription_purchase.rb +2 -1
  28. data/lib/candy_check/play_store/subscription_purchases/subscription_verification.rb +1 -0
  29. data/lib/candy_check/play_store/verification_failure.rb +2 -2
  30. data/lib/candy_check/play_store.rb +2 -1
  31. data/lib/candy_check/utils/attribute_reader.rb +3 -2
  32. data/lib/candy_check/utils/config.rb +2 -0
  33. data/lib/candy_check/utils.rb +2 -2
  34. data/lib/candy_check/version.rb +1 -1
  35. data/lib/candy_check.rb +4 -4
  36. data/spec/app_store/client_spec.rb +18 -18
  37. data/spec/app_store/config_spec.rb +9 -9
  38. data/spec/app_store/receipt_collection_spec.rb +39 -41
  39. data/spec/app_store/receipt_spec.rb +47 -47
  40. data/spec/app_store/subscription_verification_spec.rb +35 -32
  41. data/spec/app_store/verifcation_failure_spec.rb +7 -7
  42. data/spec/app_store/verification_spec.rb +23 -11
  43. data/spec/app_store/verifier_spec.rb +40 -48
  44. data/spec/cli/app_spec.rb +11 -13
  45. data/spec/cli/commands/app_store_spec.rb +22 -23
  46. data/spec/cli/commands/play_store_spec.rb +3 -1
  47. data/spec/cli/commands/version_spec.rb +2 -2
  48. data/spec/cli/out_spec.rb +9 -9
  49. data/spec/fixtures/vcr_cassettes/play_store/product_acknowledgements/acknowledged.yml +1 -1
  50. data/spec/fixtures/vcr_cassettes/play_store/product_acknowledgements/already_acknowledged.yml +1 -1
  51. data/spec/fixtures/vcr_cassettes/play_store/product_acknowledgements/refunded.yml +1 -1
  52. data/spec/fixtures/vcr_cassettes/play_store/product_purchases/permission_denied.yml +2 -2
  53. data/spec/fixtures/vcr_cassettes/play_store/product_purchases/response_with_empty_body.yml +2 -2
  54. data/spec/fixtures/vcr_cassettes/play_store/product_purchases/valid_but_not_consumed.yml +1 -1
  55. data/spec/fixtures/vcr_cassettes/play_store/subscription_purchases/permission_denied.yml +2 -2
  56. data/spec/fixtures/vcr_cassettes/play_store/subscription_purchases/valid_but_expired.yml +1 -1
  57. data/spec/play_store/acknowledger_spec.rb +4 -0
  58. data/spec/play_store/product_acknowledgements/acknowledgement_spec.rb +4 -0
  59. data/spec/play_store/product_acknowledgements/response_spec.rb +16 -15
  60. data/spec/play_store/product_purchases/product_purchase_spec.rb +6 -27
  61. data/spec/play_store/subscription_purchases/subscription_purchase_spec.rb +22 -46
  62. data/spec/play_store/verification_failure_spec.rb +6 -4
  63. data/spec/play_store/verifier_spec.rb +4 -2
  64. data/spec/spec_helper.rb +20 -9
  65. metadata +91 -63
  66. data/.travis.yml +0 -18
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: candy_check
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonas Thiel
@@ -9,36 +9,50 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-01-11 00:00:00.000000000 Z
12
+ date: 2023-02-24 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: google-api-client
15
+ name: google-apis-androidpublisher_v3
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
18
  - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: 0.43.0
20
+ version: 0.34.0
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: 0.43.0
27
+ version: 0.34.0
28
+ - !ruby/object:Gem::Dependency
29
+ name: googleauth
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - "~>"
33
+ - !ruby/object:Gem::Version
34
+ version: 1.3.0
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - "~>"
40
+ - !ruby/object:Gem::Version
41
+ version: 1.3.0
28
42
  - !ruby/object:Gem::Dependency
29
43
  name: multi_json
30
44
  requirement: !ruby/object:Gem::Requirement
31
45
  requirements:
32
46
  - - "~>"
33
47
  - !ruby/object:Gem::Version
34
- version: '1.10'
48
+ version: '1.15'
35
49
  type: :runtime
36
50
  prerelease: false
37
51
  version_requirements: !ruby/object:Gem::Requirement
38
52
  requirements:
39
53
  - - "~>"
40
54
  - !ruby/object:Gem::Version
41
- version: '1.10'
55
+ version: '1.15'
42
56
  - !ruby/object:Gem::Dependency
43
57
  name: thor
44
58
  requirement: !ruby/object:Gem::Requirement
@@ -53,6 +67,20 @@ dependencies:
53
67
  - - "<"
54
68
  - !ruby/object:Gem::Version
55
69
  version: '2.0'
70
+ - !ruby/object:Gem::Dependency
71
+ name: awesome_print
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ version: '0'
56
84
  - !ruby/object:Gem::Dependency
57
85
  name: bundler
58
86
  requirement: !ruby/object:Gem::Requirement
@@ -68,19 +96,33 @@ dependencies:
68
96
  - !ruby/object:Gem::Version
69
97
  version: '2.0'
70
98
  - !ruby/object:Gem::Dependency
71
- name: coveralls
99
+ name: guard
72
100
  requirement: !ruby/object:Gem::Requirement
73
101
  requirements:
74
- - - "~>"
102
+ - - ">="
75
103
  - !ruby/object:Gem::Version
76
- version: '0.8'
104
+ version: '0'
77
105
  type: :development
78
106
  prerelease: false
79
107
  version_requirements: !ruby/object:Gem::Requirement
80
108
  requirements:
81
- - - "~>"
109
+ - - ">="
82
110
  - !ruby/object:Gem::Version
83
- version: '0.8'
111
+ version: '0'
112
+ - !ruby/object:Gem::Dependency
113
+ name: guard-minitest
114
+ requirement: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ version: '0'
119
+ type: :development
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
84
126
  - !ruby/object:Gem::Dependency
85
127
  name: inch
86
128
  requirement: !ruby/object:Gem::Requirement
@@ -138,131 +180,117 @@ dependencies:
138
180
  - !ruby/object:Gem::Version
139
181
  version: '0'
140
182
  - !ruby/object:Gem::Dependency
141
- name: rake
183
+ name: pry
142
184
  requirement: !ruby/object:Gem::Requirement
143
185
  requirements:
144
- - - "~>"
186
+ - - ">="
145
187
  - !ruby/object:Gem::Version
146
- version: '12.0'
188
+ version: '0'
147
189
  type: :development
148
190
  prerelease: false
149
191
  version_requirements: !ruby/object:Gem::Requirement
150
192
  requirements:
151
- - - "~>"
193
+ - - ">="
152
194
  - !ruby/object:Gem::Version
153
- version: '12.0'
195
+ version: '0'
154
196
  - !ruby/object:Gem::Dependency
155
- name: rubocop
197
+ name: rake
156
198
  requirement: !ruby/object:Gem::Requirement
157
199
  requirements:
158
200
  - - "~>"
159
201
  - !ruby/object:Gem::Version
160
- version: '0.48'
202
+ version: '13.0'
161
203
  type: :development
162
204
  prerelease: false
163
205
  version_requirements: !ruby/object:Gem::Requirement
164
206
  requirements:
165
207
  - - "~>"
166
208
  - !ruby/object:Gem::Version
167
- version: '0.48'
209
+ version: '13.0'
168
210
  - !ruby/object:Gem::Dependency
169
- name: timecop
211
+ name: rubocop
170
212
  requirement: !ruby/object:Gem::Requirement
171
213
  requirements:
172
214
  - - "~>"
173
215
  - !ruby/object:Gem::Version
174
- version: '0.8'
216
+ version: '1.46'
175
217
  type: :development
176
218
  prerelease: false
177
219
  version_requirements: !ruby/object:Gem::Requirement
178
220
  requirements:
179
221
  - - "~>"
180
222
  - !ruby/object:Gem::Version
181
- version: '0.8'
223
+ version: '1.46'
182
224
  - !ruby/object:Gem::Dependency
183
- name: webmock
225
+ name: simplecov
184
226
  requirement: !ruby/object:Gem::Requirement
185
227
  requirements:
186
228
  - - "~>"
187
229
  - !ruby/object:Gem::Version
188
- version: '3.0'
230
+ version: 0.18.0
189
231
  type: :development
190
232
  prerelease: false
191
233
  version_requirements: !ruby/object:Gem::Requirement
192
234
  requirements:
193
235
  - - "~>"
194
236
  - !ruby/object:Gem::Version
195
- version: '3.0'
237
+ version: 0.18.0
196
238
  - !ruby/object:Gem::Dependency
197
- name: vcr
239
+ name: simplecov-lcov
198
240
  requirement: !ruby/object:Gem::Requirement
199
241
  requirements:
200
- - - ">="
201
- - !ruby/object:Gem::Version
202
- version: '0'
203
- type: :development
204
- prerelease: false
205
- version_requirements: !ruby/object:Gem::Requirement
206
- requirements:
207
- - - ">="
208
- - !ruby/object:Gem::Version
209
- version: '0'
210
- - !ruby/object:Gem::Dependency
211
- name: pry
212
- requirement: !ruby/object:Gem::Requirement
213
- requirements:
214
- - - ">="
242
+ - - "~>"
215
243
  - !ruby/object:Gem::Version
216
- version: '0'
244
+ version: 0.8.0
217
245
  type: :development
218
246
  prerelease: false
219
247
  version_requirements: !ruby/object:Gem::Requirement
220
248
  requirements:
221
- - - ">="
249
+ - - "~>"
222
250
  - !ruby/object:Gem::Version
223
- version: '0'
251
+ version: 0.8.0
224
252
  - !ruby/object:Gem::Dependency
225
- name: awesome_print
253
+ name: timecop
226
254
  requirement: !ruby/object:Gem::Requirement
227
255
  requirements:
228
- - - ">="
256
+ - - "~>"
229
257
  - !ruby/object:Gem::Version
230
- version: '0'
258
+ version: '0.9'
231
259
  type: :development
232
260
  prerelease: false
233
261
  version_requirements: !ruby/object:Gem::Requirement
234
262
  requirements:
235
- - - ">="
263
+ - - "~>"
236
264
  - !ruby/object:Gem::Version
237
- version: '0'
265
+ version: '0.9'
238
266
  - !ruby/object:Gem::Dependency
239
- name: guard
267
+ name: vcr
240
268
  requirement: !ruby/object:Gem::Requirement
241
269
  requirements:
242
- - - ">="
270
+ - - "~>"
243
271
  - !ruby/object:Gem::Version
244
- version: '0'
272
+ version: '6.1'
245
273
  type: :development
246
274
  prerelease: false
247
275
  version_requirements: !ruby/object:Gem::Requirement
248
276
  requirements:
249
- - - ">="
277
+ - - "~>"
250
278
  - !ruby/object:Gem::Version
251
- version: '0'
279
+ version: '6.1'
252
280
  - !ruby/object:Gem::Dependency
253
- name: guard-minitest
281
+ name: webmock
254
282
  requirement: !ruby/object:Gem::Requirement
255
283
  requirements:
256
- - - ">="
284
+ - - "~>"
257
285
  - !ruby/object:Gem::Version
258
- version: '0'
286
+ version: '3.0'
259
287
  type: :development
260
288
  prerelease: false
261
289
  version_requirements: !ruby/object:Gem::Requirement
262
290
  requirements:
263
- - - ">="
291
+ - - "~>"
264
292
  - !ruby/object:Gem::Version
265
- version: '0'
293
+ version: '3.0'
266
294
  description:
267
295
  email:
268
296
  - jonas@thiel.io
@@ -271,10 +299,10 @@ executables:
271
299
  extensions: []
272
300
  extra_rdoc_files: []
273
301
  files:
302
+ - ".github/workflows/build.yml"
274
303
  - ".gitignore"
275
304
  - ".rubocop.yml"
276
305
  - ".ruby-version"
277
- - ".travis.yml"
278
306
  - Gemfile
279
307
  - Guardfile
280
308
  - LICENSE.txt
@@ -364,14 +392,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
364
392
  requirements:
365
393
  - - ">="
366
394
  - !ruby/object:Gem::Version
367
- version: '2.4'
395
+ version: '2.6'
368
396
  required_rubygems_version: !ruby/object:Gem::Requirement
369
397
  requirements:
370
398
  - - ">="
371
399
  - !ruby/object:Gem::Version
372
400
  version: '0'
373
401
  requirements: []
374
- rubygems_version: 3.1.4
402
+ rubygems_version: 3.4.6
375
403
  signing_key:
376
404
  specification_version: 4
377
405
  summary: Check and verify in-app receipts
data/.travis.yml DELETED
@@ -1,18 +0,0 @@
1
- language: ruby
2
- sudo: false
3
- cache: bundler
4
- rvm:
5
- - 2.6.5
6
- - 2.5.7
7
- - 2.4.9
8
- - jruby-9.2.9.0
9
- - ruby-head
10
- - jruby-head
11
- matrix:
12
- allow_failures:
13
- - rvm: ruby-head
14
- - rvm: jruby-head
15
- fast_finish: true
16
- before_install:
17
- - gem update --system
18
- - gem install bundler -v 2.0.2