candy_check 0.3.0 → 0.5.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.
- checksums.yaml +4 -4
- data/.github/workflows/build.yml +34 -0
- data/.gitignore +2 -1
- data/.ruby-version +1 -1
- data/README.md +2 -2
- data/candy_check.gemspec +7 -5
- data/lib/candy_check/cli/app.rb +6 -2
- data/lib/candy_check/play_store.rb +2 -1
- data/lib/candy_check/version.rb +1 -1
- data/spec/app_store/client_spec.rb +2 -2
- data/spec/app_store/config_spec.rb +5 -5
- data/spec/app_store/receipt_collection_spec.rb +9 -9
- data/spec/app_store/receipt_spec.rb +16 -16
- data/spec/app_store/subscription_verification_spec.rb +20 -20
- data/spec/app_store/verifcation_failure_spec.rb +6 -6
- data/spec/app_store/verification_spec.rb +12 -12
- data/spec/app_store/verifier_spec.rb +14 -14
- data/spec/candy_check_spec.rb +1 -1
- data/spec/cli/app_spec.rb +10 -6
- data/spec/cli/commands/app_store_spec.rb +6 -6
- data/spec/cli/commands/version_spec.rb +1 -1
- data/spec/cli/out_spec.rb +4 -4
- data/spec/fixtures/vcr_cassettes/play_store/product_acknowledgements/acknowledged.yml +1 -1
- data/spec/fixtures/vcr_cassettes/play_store/product_acknowledgements/already_acknowledged.yml +1 -1
- data/spec/fixtures/vcr_cassettes/play_store/product_acknowledgements/refunded.yml +1 -1
- data/spec/fixtures/vcr_cassettes/play_store/product_purchases/permission_denied.yml +2 -2
- data/spec/fixtures/vcr_cassettes/play_store/product_purchases/response_with_empty_body.yml +2 -2
- data/spec/fixtures/vcr_cassettes/play_store/product_purchases/valid_but_not_consumed.yml +1 -1
- data/spec/fixtures/vcr_cassettes/play_store/subscription_purchases/permission_denied.yml +2 -2
- data/spec/fixtures/vcr_cassettes/play_store/subscription_purchases/valid_but_expired.yml +1 -1
- data/spec/play_store/acknowledger_spec.rb +11 -11
- data/spec/play_store/product_acknowledgements/acknowledgement_spec.rb +11 -11
- data/spec/play_store/product_acknowledgements/response_spec.rb +5 -5
- data/spec/play_store/product_purchases/product_purchase_spec.rb +12 -12
- data/spec/play_store/product_purchases/product_verification_spec.rb +7 -7
- data/spec/play_store/subscription_purchases/subscription_purchase_spec.rb +26 -26
- data/spec/play_store/subscription_purchases/subscription_verification_spec.rb +7 -7
- data/spec/play_store/verification_failure_spec.rb +4 -4
- data/spec/play_store/verifier_spec.rb +6 -6
- data/spec/spec_helper.rb +15 -2
- data/spec/support/with_command.rb +0 -3
- metadata +53 -25
- data/.travis.yml +0 -18
@@ -15,16 +15,16 @@ describe CandyCheck::PlayStore::Verifier do
|
|
15
15
|
it "verifies a product purchase" do
|
16
16
|
VCR.use_cassette("play_store/product_purchases/valid_but_not_consumed") do
|
17
17
|
result = subject.verify_product_purchase(package_name: package_name, product_id: product_id, token: token)
|
18
|
-
result.must_be_instance_of CandyCheck::PlayStore::ProductPurchases::ProductPurchase
|
19
|
-
result.valid
|
20
|
-
result.consumed
|
18
|
+
_(result).must_be_instance_of CandyCheck::PlayStore::ProductPurchases::ProductPurchase
|
19
|
+
_(result.valid?).must_be_true
|
20
|
+
_(result.consumed?).must_be_false
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
24
24
|
it "can return a product purchase verification failure" do
|
25
25
|
VCR.use_cassette("play_store/product_purchases/permission_denied") do
|
26
26
|
result = subject.verify_product_purchase(package_name: package_name, product_id: product_id, token: token)
|
27
|
-
result.must_be_instance_of CandyCheck::PlayStore::VerificationFailure
|
27
|
+
_(result).must_be_instance_of CandyCheck::PlayStore::VerificationFailure
|
28
28
|
end
|
29
29
|
end
|
30
30
|
end
|
@@ -33,14 +33,14 @@ describe CandyCheck::PlayStore::Verifier do
|
|
33
33
|
it "verifies a subscription purchase" do
|
34
34
|
VCR.use_cassette("play_store/subscription_purchases/valid_but_expired") do
|
35
35
|
result = subject.verify_subscription_purchase(package_name: package_name, subscription_id: subscription_id, token: token)
|
36
|
-
result.must_be_instance_of CandyCheck::PlayStore::SubscriptionPurchases::SubscriptionPurchase
|
36
|
+
_(result).must_be_instance_of CandyCheck::PlayStore::SubscriptionPurchases::SubscriptionPurchase
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
40
40
|
it "can return a subscription purchase verification failure" do
|
41
41
|
VCR.use_cassette("play_store/subscription_purchases/permission_denied") do
|
42
42
|
result = subject.verify_subscription_purchase(package_name: package_name, subscription_id: subscription_id, token: token)
|
43
|
-
result.must_be_instance_of CandyCheck::PlayStore::VerificationFailure
|
43
|
+
_(result).must_be_instance_of CandyCheck::PlayStore::VerificationFailure
|
44
44
|
end
|
45
45
|
end
|
46
46
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,5 +1,3 @@
|
|
1
|
-
require "coveralls"
|
2
|
-
Coveralls.wear!
|
3
1
|
|
4
2
|
require "candy_check"
|
5
3
|
require "candy_check/cli"
|
@@ -8,6 +6,21 @@ def in_continuous_integration_environment?
|
|
8
6
|
ENV["CI"] || ENV["TRAVIS"] || ENV["CONTINUOUS_INTEGRATION"]
|
9
7
|
end
|
10
8
|
|
9
|
+
require "simplecov"
|
10
|
+
|
11
|
+
SimpleCov.start do
|
12
|
+
if in_continuous_integration_environment?
|
13
|
+
require "simplecov-lcov"
|
14
|
+
|
15
|
+
SimpleCov::Formatter::LcovFormatter.config do |c|
|
16
|
+
c.report_with_single_file = true
|
17
|
+
c.single_report_path = "coverage/lcov.info"
|
18
|
+
end
|
19
|
+
|
20
|
+
formatter SimpleCov::Formatter::LcovFormatter
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
11
24
|
require "minitest/autorun"
|
12
25
|
require "minitest/around/spec"
|
13
26
|
require "minitest/focus" unless in_continuous_integration_environment?
|
metadata
CHANGED
@@ -1,86 +1,86 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: candy_check
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonas Thiel
|
8
8
|
- Christoph Weegen
|
9
|
-
autorequire:
|
9
|
+
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2023-02-23 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name: google-
|
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.
|
20
|
+
version: 0.25.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.
|
27
|
+
version: 0.25.0
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
|
-
name:
|
29
|
+
name: googleauth
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
32
|
- - "~>"
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version:
|
34
|
+
version: 1.2.0
|
35
35
|
type: :runtime
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
39
|
- - "~>"
|
40
40
|
- !ruby/object:Gem::Version
|
41
|
-
version:
|
41
|
+
version: 1.2.0
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
|
-
name:
|
43
|
+
name: multi_json
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
46
|
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version: '
|
48
|
+
version: '1.15'
|
49
49
|
type: :runtime
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
53
|
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version: '
|
55
|
+
version: '1.15'
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
|
-
name:
|
57
|
+
name: thor
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
59
59
|
requirements:
|
60
|
-
- - "
|
60
|
+
- - "<"
|
61
61
|
- !ruby/object:Gem::Version
|
62
62
|
version: '2.0'
|
63
|
-
type: :
|
63
|
+
type: :runtime
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
|
-
- - "
|
67
|
+
- - "<"
|
68
68
|
- !ruby/object:Gem::Version
|
69
69
|
version: '2.0'
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
|
-
name:
|
71
|
+
name: bundler
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
74
|
- - "~>"
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version: '0
|
76
|
+
version: '2.0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
79
|
version_requirements: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
81
|
- - "~>"
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: '0
|
83
|
+
version: '2.0'
|
84
84
|
- !ruby/object:Gem::Dependency
|
85
85
|
name: inch
|
86
86
|
requirement: !ruby/object:Gem::Requirement
|
@@ -263,7 +263,35 @@ dependencies:
|
|
263
263
|
- - ">="
|
264
264
|
- !ruby/object:Gem::Version
|
265
265
|
version: '0'
|
266
|
-
|
266
|
+
- !ruby/object:Gem::Dependency
|
267
|
+
name: simplecov
|
268
|
+
requirement: !ruby/object:Gem::Requirement
|
269
|
+
requirements:
|
270
|
+
- - "~>"
|
271
|
+
- !ruby/object:Gem::Version
|
272
|
+
version: 0.18.0
|
273
|
+
type: :development
|
274
|
+
prerelease: false
|
275
|
+
version_requirements: !ruby/object:Gem::Requirement
|
276
|
+
requirements:
|
277
|
+
- - "~>"
|
278
|
+
- !ruby/object:Gem::Version
|
279
|
+
version: 0.18.0
|
280
|
+
- !ruby/object:Gem::Dependency
|
281
|
+
name: simplecov-lcov
|
282
|
+
requirement: !ruby/object:Gem::Requirement
|
283
|
+
requirements:
|
284
|
+
- - "~>"
|
285
|
+
- !ruby/object:Gem::Version
|
286
|
+
version: 0.8.0
|
287
|
+
type: :development
|
288
|
+
prerelease: false
|
289
|
+
version_requirements: !ruby/object:Gem::Requirement
|
290
|
+
requirements:
|
291
|
+
- - "~>"
|
292
|
+
- !ruby/object:Gem::Version
|
293
|
+
version: 0.8.0
|
294
|
+
description:
|
267
295
|
email:
|
268
296
|
- jonas@thiel.io
|
269
297
|
executables:
|
@@ -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
|
@@ -356,7 +384,7 @@ homepage: https://github.com/jnbt/candy_check
|
|
356
384
|
licenses:
|
357
385
|
- MIT
|
358
386
|
metadata: {}
|
359
|
-
post_install_message:
|
387
|
+
post_install_message:
|
360
388
|
rdoc_options: []
|
361
389
|
require_paths:
|
362
390
|
- lib
|
@@ -364,15 +392,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
364
392
|
requirements:
|
365
393
|
- - ">="
|
366
394
|
- !ruby/object:Gem::Version
|
367
|
-
version: '2.
|
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.
|
375
|
-
signing_key:
|
402
|
+
rubygems_version: 3.3.26
|
403
|
+
signing_key:
|
376
404
|
specification_version: 4
|
377
405
|
summary: Check and verify in-app receipts
|
378
406
|
test_files:
|
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
|