From 4d81f4e663a13abab1850273114e2a5633bcbc15 Mon Sep 17 00:00:00 2001 From: Sam Spencer Date: Fri, 29 May 2020 18:07:20 -0400 Subject: [PATCH] Fixes #534 RecieptItem now conforms to Codable --- SwiftyStoreKit.xcodeproj/project.pbxproj | 10 +++++----- SwiftyStoreKit/SwiftyStoreKit+Types.swift | 2 +- SwiftyStoreKitTests/InAppReceiptTests.swift | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/SwiftyStoreKit.xcodeproj/project.pbxproj b/SwiftyStoreKit.xcodeproj/project.pbxproj index 276344f1..d001803b 100644 --- a/SwiftyStoreKit.xcodeproj/project.pbxproj +++ b/SwiftyStoreKit.xcodeproj/project.pbxproj @@ -582,7 +582,7 @@ }; 658A083D1E2EC5120074A98F = { CreatedOnToolsVersion = 8.2.1; - LastSwiftMigration = 1000; + LastSwiftMigration = 1150; ProvisioningStyle = Automatic; TestTargetID = 6502F5FD1B985833004E342D; }; @@ -1183,8 +1183,8 @@ PRODUCT_BUNDLE_IDENTIFIER = com.musevisions.iOS.SwiftyStoreKitTests; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_SWIFT3_OBJC_INFERENCE = On; - SWIFT_VERSION = 4.2; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 5.0; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SwiftyStoreKit_iOSDemo.app/SwiftyStoreKit_iOSDemo"; }; name = Debug; @@ -1200,8 +1200,8 @@ PRODUCT_BUNDLE_IDENTIFIER = com.musevisions.iOS.SwiftyStoreKitTests; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_SWIFT3_OBJC_INFERENCE = On; - SWIFT_VERSION = 4.2; + SWIFT_SWIFT3_OBJC_INFERENCE = Default; + SWIFT_VERSION = 5.0; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SwiftyStoreKit_iOSDemo.app/SwiftyStoreKit_iOSDemo"; }; name = Release; diff --git a/SwiftyStoreKit/SwiftyStoreKit+Types.swift b/SwiftyStoreKit/SwiftyStoreKit+Types.swift index 3aa16b34..0013bfa3 100644 --- a/SwiftyStoreKit/SwiftyStoreKit+Types.swift +++ b/SwiftyStoreKit/SwiftyStoreKit+Types.swift @@ -180,7 +180,7 @@ public enum SubscriptionType { case nonRenewing(validDuration: TimeInterval) } -public struct ReceiptItem: Purchased { +public struct ReceiptItem: Purchased, Codable { // The product identifier of the item that was purchased. This value corresponds to the productIdentifier property of the SKPayment object stored in the transaction’s payment property. public let productId: String // The number of items purchased. This value corresponds to the quantity property of the SKPayment object stored in the transaction’s payment property. diff --git a/SwiftyStoreKitTests/InAppReceiptTests.swift b/SwiftyStoreKitTests/InAppReceiptTests.swift index e984cdcf..cf4e4d53 100644 --- a/SwiftyStoreKitTests/InAppReceiptTests.swift +++ b/SwiftyStoreKitTests/InAppReceiptTests.swift @@ -26,7 +26,6 @@ import XCTest import SwiftyStoreKit -// swiftlint:disable file_length private extension TimeInterval { var millisecondsNSString: NSString { return String(format: "%.0f", self * 1000) as NSString @@ -107,6 +106,7 @@ extension VerifyPurchaseResult: Equatable { } } +// swiftlint:disable file_length class InAppReceiptTests: XCTestCase { // MARK: Verify Purchase