Commit Graph

67 Commits

Author SHA1 Message Date
Minhaz Ahmed Syrus
1fe1bd0f92 Add missing subscription billing retry flag 2020-02-11 20:25:08 +06:00
Minhaz Ahmed Syrus
f0ee201e43 Add missing notification verification fields 2020-02-11 20:24:39 +06:00
Minhaz Ahmed Syrus
312aa41817 Add missing subscription billing retry flag 2020-02-11 20:22:08 +06:00
Minhaz Ahmed Syrus
eb89375f2e Add missing notification verification fields 2020-02-11 20:22:08 +06:00
Junpei Tsuji
d9ae3a1d88 Merge pull request #105 from mhemmings/add-missing-omitempty
appstore: Set IsUpgraded as omitempty
2020-01-29 23:37:14 +09:00
Oleksandr Mykhailiuta
be7b768650 Add SubscriptionNotification deprecation comments 2020-01-29 12:24:20 +02:00
Matija Lesar
c8962b67cb Fixing NotificationUnifiedReceipt Status type 2020-01-16 09:19:57 +01:00
Mark Hemmings
627fa5e7d1 appstore: Set IsUpgraded as omitempty 2019-12-27 15:07:54 +00:00
Matija Lesar
1bd99243d7 Changed environment property type 2019-11-25 12:42:41 +01:00
Matija Lesar
7d624ad068 Updated order of properties 2019-11-25 11:26:42 +01:00
Matija Lesar
31a625b71e CR changes 2019-11-25 11:25:31 +01:00
Matija Lesar
4209b06a64 Added unified receipt 2019-11-25 10:00:13 +01:00
Junpei Tsuji
e895c80eb0 Added grace period fields 2019-09-17 13:23:05 +09:00
Junpei Tsuji
b4e4bec42f Use go modules 2019-05-23 17:27:20 +09:00
Owen
46a2f52ca6 Return errors from JSON encode/decode
I found two JSON errors being shadowed; the one in amazon/validator.go
is being hidden by errors.New(responseError.Message) -- which should be
an empty string if there's a JSON error. So, it wouldn't report success,
but this gives the caller better information on what failed.

The second is in appstore/validator.go, which was ignoring encode errors
before POSTing a verify request.
2019-04-24 11:39:02 -04:00
jordancco
aa29cda61f Update notification.go
Added new const NotificationTypeDidChangeRenewalStatus
2019-03-25 14:38:48 +01:00
micnncim
74773834e2 Add missing error handling 2019-03-11 18:21:25 +09:00
WhiteRaven777
29290dc24e Add pending_renewal_info.original_transaction_id
- Since `original_transaction_id` included in `pending_renewal_info` is not defined, it was added.
2018-11-22 13:50:56 +09:00
Junpei Tsuji
3380afe242 Update golang 1.11 2018-11-06 17:21:59 +09:00
Minhaz Ahmed Syrus
49d7fb675d Add is_in_intro_offer_period in NotificationReceipt 2018-10-29 08:28:12 +06:00
Minhaz Syrus
b0d36e4962 Add is_in_intro_offer_period in InApp 2018-10-28 16:45:35 +06:00
Junpei Tsuji
63258ccb00 Update subscription notification type for IAP 2018-05-23 11:07:07 +09:00
Junpei Tsuji
8e67f122c0 Added client timeout because http.DefaultClient doesn't have timeout 2018-05-18 12:31:19 +09:00
Junpei Tsuji
0cfabb49bb Support context package when requesting AppStore 2018-05-17 13:37:16 +09:00
Junpei Tsuji
2a724a9d7c Support custom client 2018-05-17 12:36:12 +09:00
Junpei Tsuji
90290e9d74 Added cancellation date fields 2018-03-30 10:41:53 +09:00
Junpei Tsuji
ac1a97ceb4 Added iOS6 style receipt 2018-03-29 17:05:57 +09:00
Junpei Tsuji
d8d590ec03 Merge pull request #53 from mizzy/omitempty-some-keys
Add "omitempty" to some keys which need not to be returned
2018-03-29 17:05:04 +09:00
Junpei Tsuji
659dd4b8ca Fixed environmental constants 2018-02-28 14:29:41 +09:00
Junpei Tsuji
a2381d2dfd Fixed environment values 2018-02-23 17:58:56 +09:00
Gosuke Miyashita
ff603d9e83 Add "omitempty" to some keys which need not to be returned 2018-02-21 10:52:43 +09:00
Junpei Tsuji
77b179753c Handle type mismatch 2018-02-08 20:06:41 +09:00
Junpei Tsuji
2e30b9a5bb Merge pull request #45 from Timothylock/master
Have app store hit prod and then sandbox if 21007
2018-02-08 17:14:11 +09:00
Timothy Lock
c809bb0ee2 Fix test case of BadRequest
Should have been StatusOK
2018-01-29 18:01:54 -05:00
Timothy Lock
3b95498cbe Add Success test case + Refactor Comments 2018-01-29 17:53:58 -05:00
Timothy Lock
594d8d6544 Correct tests
serverWithResponse was hardcoded to return http.StatusBadRequest whereas it differed in the tests in the previous commits. This has been corrected by turning it into a parameter.
2018-01-22 17:17:05 -05:00
Timothy Lock
6d00842743 Bring tests back up to 100%
Make a new method called parseResponse which essentially allows us to feed it our own response  so that we can feed it bad body so that it cannot unmarshal or even read it.
2018-01-22 15:40:28 -05:00
Timothy Lock
fe51698284 Fix bug involving HttpStatusResponse
the `ok` in `r, ok := result.(*HttpStatusResponse)` would always fail unless the `result` being passed in was also of type `HttpStatusResponse`
2018-01-17 16:47:14 -05:00
Timothy Lock
132768c0fe Use new struct to check status & Remove IAP_ENVIRONMENT
Use a new struct called `HttpStatusResponse` to check the status code returned in the receipt. This is ios-type independent and will redirect the receipt to sandbox if needed.

Following Apple's recommendation, always hit production and then sandbox. There is no more need to specify which environment to hit.
2018-01-17 16:02:52 -05:00
Junpei Tsuji
6753b53cde Added real time notification definition for google play 2017-12-28 11:41:57 +09:00
Timothy Lock
12a6e01874 Correct test
Needed to set an invalid SandboxURL to trigger the err.
2017-12-11 17:20:32 -05:00
Timothy Lock
8b1c5e29d2 Bring coverage up to 100
Remove sandbox timeout to actually cause POST to fail.
2017-12-11 17:12:38 -05:00
Timothy Lock
60800c1f90 Have app store hit prod and then sandbox if 21007
According to https://developer.apple.com/library/content/technotes/tn2413/_index.html#//apple_ref/doc/uid/DTS40016228-CH1-RECEIPTURL

Always verify your receipt first with the production URL; proceed to verify with the sandbox URL if you receive a 21007 status code. Following this approach ensures that you do not have to switch between URLs while your application is being tested or reviewed in the sandbox or is live in the App Store.
2017-12-11 17:05:53 -05:00
Yingjie Run
b28879e74d Add is_trial_period field to NotificationReceipt 2017-10-07 17:20:04 +08:00
Yingjie Run
612fd98174 add app store subscription notify model 2017-07-28 17:57:04 +08:00
Yingjie Run
4b4785955a Remove the fields which are not existing in the raw response from AppStore 2017-07-25 14:49:01 +08:00
Yingjie Run
58b1c636fd Remove iOS 6 style transaction receipt fields 2017-07-24 17:43:16 +08:00
Yingjie Run
7808531e12 fix: error iap request fields 2017-07-21 17:35:35 +08:00
Yingjie Run
c9721f9346 add new errors test case 2017-07-20 18:40:34 +08:00
Yingjie Run
2eb7bcf51a append new IAP receipt fields 2017-07-20 18:20:07 +08:00