* Add validation logic for Test Store API keys under the TEST_STORE compiler flag
* add unit test for test store api key validation
* Move API key validation to `configure` and store validation result in `SystemInfo`
* start new flow for purchase of `TestStoreProduct`s
* WIP: implement alert for purchase of a Test Store product
* Add file to Xcode workspace
* WIP: implement fake purchase alert in all platforms and OSs
* Enforce only one test purchases at once. Use constants for test purchase alert strings
* Place new test store purchase APIs under the TEST_STORE compiler flag
* fix lint
* fix unit tests after change of internal APIs
* PR comments
* temporarily return hardcoded `CustomerInfo` on confirmed test purchase
* tests: adapt unit tests to new `TestStorePurchaseHandler` dependency of `PurchasesOrchestrator`
* fix lint
* Fix backend integration tests compilation
* Remove deprecation warning
* remove unnecessary OSs checks
Since the minimum supported versions of the SDK are iOS 13 and tvOS 13
* add `GetWebProductsOperation`
* avoid duplicating decoding objects from WebOfferingProductsResponse and WebProductsResponse
* add missing tests snapshots
* Add `WebProductsResponse.ProductType` enum
* Fix tests
* add web products decoding tests
* Rename WebProducts to WebBillingProducts
* (more) rename WebProducts to WebBillingProducts
* (even more) rename WebProducts to WebBillingProducts
* Move `getWebBillingProducts` outside of `OfferingsAPI` into a new `WebBillingAPI` object
* improve test
* remove unnecessary `sorted()` of `Set`
* fix lint
* fix tests
Since the GetWebBilling request path contains an unordered set of productIds, which the tests do not support, we're only doing snapshot tests with 1 product ID
* fix more tests
* Change to use new endpoint to fetch web product info
* [skip ci] Generating new test snapshots (#5142)
* [skip ci] Generating new test snapshots (#5141)
* [skip ci] Generating new test snapshots (#5140)
* [skip ci] Generating new test snapshots (#5139)
* [skip ci] Generating new test snapshots (#5138)
* [skip ci] Generating new test snapshots (#5137)
* [skip ci] Generating new test snapshots (#5136)
* Add small utility function to know if offerings has any web biling offering available
---------
Co-authored-by: RevenueCat Git Bot <72824662+RCGitBot@users.noreply.github.com>
* Add support for fetching web billing products
* Some fixes
* Escape product ids
* Fixes from review
* Support etags
* Change to Int64
* Add method to MockOfferingsAPI