4.24.0
New Features
- New
TestStoreProduct
for creating mockStoreProduct
s andOffering
s (#2711) via NachoSoto (@NachoSoto)
✨ With this new API you can now create fake products for unit tests and SwiftUI previews! 🎉
Example:
let product = TestStoreProduct(
localizedTitle: "PRO monthly",
price: 3.99,
localizedPriceString: "$3.99",
productIdentifier: "com.revenuecat.product",
productType: .autoRenewableSubscription,
localizedDescription: "Description",
subscriptionGroupIdentifier: "group",
subscriptionPeriod: .init(value: 1, unit: .month)
)
let offering = Offering(
identifier: "offering",
serverDescription: "Main offering",
metadata: [:],
availablePackages: [
.init(
identifier: "monthly",
packageType: .monthly,
storeProduct: product.toStoreProduct(),
offeringIdentifier: offering
)
]
)
Dependency Updates
- Bump fastlane-plugin-revenuecat_internal from
13773d2
tob2108fb
(#2706) via dependabot[bot] (@dependabot[bot])
Other Changes
VerificationResult: CustomDebugStringConvertible
(#2739) via NachoSoto (@NachoSoto)- Refactor: simplified
PurchasesOrchestrator.syncPurchases
(#2731) via NachoSoto (@NachoSoto) Trusted Entitlements
: add integration tests to verifyCustomerInfo
cache invalidation (#2730) via NachoSoto (@NachoSoto)SystemInfo.identifierForVendor
: add tests (#2732) via NachoSoto (@NachoSoto)Tests
: disablediOS 11.x
tests to fixXcode 15
tests (#2720) via NachoSoto (@NachoSoto)DebugViewSwiftUITests
: create separate snapshots for each OS version (#2721) via NachoSoto (@NachoSoto)Integration Tests
: fix clearingUserDefaults
before each test (#2719) via NachoSoto (@NachoSoto)- Remove unused
Signing.loadPublicKey(with:)
(#2714) via NachoSoto (@NachoSoto) - Add
UInt32(littleEndian32Bits:)
andUInt32.littleEndianData
(#2713) via NachoSoto (@NachoSoto) TimingUtil
: added synchronous API (#2716) via NachoSoto (@NachoSoto)XCFramework
: sign archive forXcode 15
(#2709) via NachoSoto (@NachoSoto)CI
: removedcarthage_archive
fromrelease
lane (#2710) via NachoSoto (@NachoSoto)PriceFormatterProvider.priceFormatterForSK2
: enable on all versions (#2712) via NachoSoto (@NachoSoto)xrOS
: add support fordebugRevenueCatOverlay
(#2702) via NachoSoto (@NachoSoto)- Refactor method to get product ID including plan ID in android purchases (#2708) via Toni Rico (@tonidero)
Purchases.restoreLogHandler
(#2699) via NachoSoto (@NachoSoto)- Remove alpha from purchase tester icon to upload to testflight (#2705) via Toni Rico (@tonidero)