From 904c8124c93063999c84b54bfee3240a35e21c17 Mon Sep 17 00:00:00 2001 From: Client Engineering Bot Date: Thu, 26 Mar 2020 09:54:22 +0000 Subject: [PATCH] PubNub SDK v4.13.1 release. --- .gitignore | 6 +- .pubnub.yml | 17 +- .travis.yml | 8 +- CHANGELOG.md | 14 +- Framework/PubNub/Info.plist | 6 +- Framework/PubNub/PubNub-iOS-Info.plist | 6 +- Framework/PubNub/PubNub-tvOS-Info.plist | 6 +- Framework/PubNub/PubNub-watchOS-Info.plist | 6 +- PubNub.podspec | 14 +- PubNub/Core/PubNub+Core.m | 21 - PubNub/Misc/PNConstants.h | 8 +- PubNub/PubNub.h | 5 - README.md | 4 +- Tests/PubNub Tests.xcodeproj/project.pbxproj | 368 ------------------ .../Scripts/create-configuration.sh | 45 +++ Tests/Support Files/Scripts/tests-runner.sh | 102 +++++ VERSION | 2 +- 17 files changed, 202 insertions(+), 436 deletions(-) create mode 100755 Tests/Support Files/Scripts/create-configuration.sh create mode 100755 Tests/Support Files/Scripts/tests-runner.sh diff --git a/.gitignore b/.gitignore index b9b854e32..33865f2ac 100644 --- a/.gitignore +++ b/.gitignore @@ -74,5 +74,9 @@ ehthumbs.db Thumbs.db .idea/ +.travis/README.md +.travis/scripts + deployment_keys -deployment_keys.pub +deployment_keys-private +deployment_keys.tar diff --git a/.pubnub.yml b/.pubnub.yml index cc65c4d1e..cfe456ce2 100644 --- a/.pubnub.yml +++ b/.pubnub.yml @@ -1,9 +1,16 @@ --- name: objective-c scm: github.com/pubnub/objective-c -version: "4.13.0" +version: "4.13.1" schema: 1 changelog: + - + changes: + - + text: "Remove Fabric components from `PubNub.podspec` because they have been removed from SDK with latest release." + type: bug + date: Mar 26, 20 + version: v4.13.1 - changes: - @@ -33,10 +40,13 @@ changelog: - text: "Remove 'macOS' from supported platforms in iOS Framework targets and rely on command-line specified flags to build Framework with Catalyst support." type: bug - date: Feb, 9 20 + date: Mar 9, 20 version: v4.13.0 - changes: + - + text: "Added support for new endpoint which allow register and use devices with APNS2." + type: feature - text: "Added new interfaces (builder-based API also has been modified) which allow pass device push token / identifier (not only NSData) using specific push service type." type: feature @@ -632,8 +642,7 @@ changelog: text: "mobile push payload removed from received message." type: improvement - - text: "'pn_other' key has been removed and original object will be returned in delegate callback (this field used with message encryption and/or mobile push payload). -" + text: "'pn_other' key has been removed and original object will be returned in delegate callback (this field used with message encryption and/or mobile push payload)." type: improvement date: May 12, 16 version: v4.3.1 diff --git a/.travis.yml b/.travis.yml index 9967b722a..8c8657a47 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,7 +13,7 @@ env: before_script: - sudo gem install xcpretty - - ./.travis/repo-scripts/create-configuration.sh + - . "./Tests/Support Files/Scripts/create-configuration.sh" stages: - name: test @@ -22,11 +22,11 @@ jobs: include: - stage: "test" name: "[iOS] Mocked Integration test" - script: ./.travis/repo-scripts/tests-runner.sh ios + script: . "./Tests/Support Files/Scripts/tests-runner.sh" ios - name: "[macOS] Mocked Integration test" - script: ./.travis/repo-scripts/tests-runner.sh macos + script: . "./Tests/Support Files/Scripts/tests-runner.sh" macos - name: "[tvOS] Mocked Integration test" - script: ./.travis/repo-scripts/tests-runner.sh tvos + script: . "./Tests/Support Files/Scripts/tests-runner.sh" tvos after_failure: - cat -n ~/Library/Logs/scan/* diff --git a/CHANGELOG.md b/CHANGELOG.md index ddc8cddc0..cefb8d944 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,16 @@ +## [v4.13.1](https://github.com/pubnub/objective-c/releases/tag/v4.13.1) +March 26 2020 + +[Full Changelog](https://github.com/pubnub/objective-c/compare/v4.13.0...v4.13.1) + +#### Modified +- Remove line breaks which affect change log generator. Addresses the following PRs from [@samiahmedsiddiqui](https://github.com/samiahmedsiddiqui): [#423](https://github.com/pubnub/objective-c/pull/423). + +#### Fixed +- Remove Fabric components from `PubNub.podspec` because they have been removed from SDK with latest release. + ## [v4.13.0](https://github.com/pubnub/objective-c/releases/tag/v4.13.0) -February 9 2020 +March 9 2020 [Full Changelog](https://github.com/pubnub/objective-c/compare/v4.12.0...v4.13.0) @@ -25,6 +36,7 @@ December 5 2019 [Full Changelog](https://github.com/pubnub/objective-c/compare/v4.11.1...v4.12.0) #### Added +- Add support for new endpoint which allow register and use devices with APNS2. - Add new interfaces (builder-based API also has been modified) which allow pass device push token / identifier (not only NSData) using specific push service type. - Add class which simplify basic notifications composition for multiple platforms / providers at once. #### Modified diff --git a/Framework/PubNub/Info.plist b/Framework/PubNub/Info.plist index aa655752c..beeebdec6 100644 --- a/Framework/PubNub/Info.plist +++ b/Framework/PubNub/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable PubNub CFBundleGetInfoString - 4.13.0 + 4.13.1 CFBundleIdentifier com.pubnub.pubnub-objc CFBundleInfoDictionaryVersion @@ -17,11 +17,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 4.13.0 + 4.13.1 CFBundleSignature ???? CFBundleVersion - 4.13.0 + 4.13.1 NSHumanReadableCopyright © 2010 - 2020 PubNub, Inc. NSPrincipalClass diff --git a/Framework/PubNub/PubNub-iOS-Info.plist b/Framework/PubNub/PubNub-iOS-Info.plist index aa655752c..beeebdec6 100644 --- a/Framework/PubNub/PubNub-iOS-Info.plist +++ b/Framework/PubNub/PubNub-iOS-Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable PubNub CFBundleGetInfoString - 4.13.0 + 4.13.1 CFBundleIdentifier com.pubnub.pubnub-objc CFBundleInfoDictionaryVersion @@ -17,11 +17,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 4.13.0 + 4.13.1 CFBundleSignature ???? CFBundleVersion - 4.13.0 + 4.13.1 NSHumanReadableCopyright © 2010 - 2020 PubNub, Inc. NSPrincipalClass diff --git a/Framework/PubNub/PubNub-tvOS-Info.plist b/Framework/PubNub/PubNub-tvOS-Info.plist index aa655752c..beeebdec6 100644 --- a/Framework/PubNub/PubNub-tvOS-Info.plist +++ b/Framework/PubNub/PubNub-tvOS-Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable PubNub CFBundleGetInfoString - 4.13.0 + 4.13.1 CFBundleIdentifier com.pubnub.pubnub-objc CFBundleInfoDictionaryVersion @@ -17,11 +17,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 4.13.0 + 4.13.1 CFBundleSignature ???? CFBundleVersion - 4.13.0 + 4.13.1 NSHumanReadableCopyright © 2010 - 2020 PubNub, Inc. NSPrincipalClass diff --git a/Framework/PubNub/PubNub-watchOS-Info.plist b/Framework/PubNub/PubNub-watchOS-Info.plist index aa655752c..beeebdec6 100644 --- a/Framework/PubNub/PubNub-watchOS-Info.plist +++ b/Framework/PubNub/PubNub-watchOS-Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable PubNub CFBundleGetInfoString - 4.13.0 + 4.13.1 CFBundleIdentifier com.pubnub.pubnub-objc CFBundleInfoDictionaryVersion @@ -17,11 +17,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 4.13.0 + 4.13.1 CFBundleSignature ???? CFBundleVersion - 4.13.0 + 4.13.1 NSHumanReadableCopyright © 2010 - 2020 PubNub, Inc. NSPrincipalClass diff --git a/PubNub.podspec b/PubNub.podspec index 13e41be98..f24ec9043 100644 --- a/PubNub.podspec +++ b/PubNub.podspec @@ -9,7 +9,7 @@ Pod::Spec.new do |spec| spec.name = 'PubNub' - spec.version = '4.13.0' + spec.version = '4.13.1' spec.summary = 'The PubNub Real-Time Network. Build real-time apps quickly and scale them globally.' spec.homepage = 'https://github.com/pubnub/objective-c' @@ -54,18 +54,6 @@ Pod::Spec.new do |spec| ] end - spec.subspec 'Fabric' do |fabric| - fabric.dependency 'PubNub/Core' - fabric.source_files = 'PubNub/Core/PubNub+FAB.{h,m}', 'Support/Fabric/Headers/*' - fabric.private_header_files = [ 'Support/Fabric/Headers/{Fabric+FABKits,FABKitProtocol}.h' ] - fabric.exclude_files = 'Support/Fabric/Headers/PubNub.h' - fabric.xcconfig = { 'GCC_PREPROCESSOR_DEFINITIONS' => 'FABRIC_SUPPORT=1' } - fabric.pod_target_xcconfig = { - 'APPLICATION_EXTENSION_API_ONLY' => 'YES', - 'GCC_PREPROCESSOR_DEFINITIONS' => 'FABRIC_SUPPORT=1' - } - end - spec.library = 'z' spec.default_subspec = 'Core' diff --git a/PubNub/Core/PubNub+Core.m b/PubNub/Core/PubNub+Core.m index fdaeb562d..224ced7ca 100644 --- a/PubNub/Core/PubNub+Core.m +++ b/PubNub/Core/PubNub+Core.m @@ -7,13 +7,6 @@ #import "PubNub+CorePrivate.h" #define PN_CORE_PROTOCOLS PNObjectEventListener -// Fabric -#ifdef FABRIC_SUPPORT - #import "FABKitProtocol.h" - #undef PN_CORE_PROTOCOLS - #define PN_CORE_PROTOCOLS PNObjectEventListener, FABKit -#endif - #if TARGET_OS_IOS #import #elif TARGET_OS_OSX @@ -414,20 +407,6 @@ - (void)setRecentClientStatus:(PNStatusCategory)recentClientStatus } -#pragma mark - Fabric support -#ifdef FABRIC_SUPPORT -+ (NSString *)bundleIdentifier { - - return kPNClientIdentifier; -} - -+ (NSString *)kitDisplayVersion { - - return [self information].version; -} -#endif - - #pragma mark - Reachability - (void)prepareReachability { diff --git a/PubNub/Misc/PNConstants.h b/PubNub/Misc/PNConstants.h index e2c81dbbc..b53906336 100644 --- a/PubNub/Misc/PNConstants.h +++ b/PubNub/Misc/PNConstants.h @@ -15,14 +15,14 @@ #pragma mark General information constants // Stores client library version number -static NSString * const kPNLibraryVersion = @"4.13.0"; +static NSString * const kPNLibraryVersion = @"4.13.1"; // Stores information about SDK codebase -static NSString * const kPNCommit = @"7415dab5abb8c5f83989c6bab4906f81002019b8"; +static NSString * const kPNCommit = @"91348b8f5e6222c8eb777cad2d53582fc7d813a5"; /** - @brief Stores reference on unique identifier which is used to identify  PubNub client among other -  PubNub products. + @brief Stores reference on unique identifier which is used to identify \b PubNub client among other + \b PubNub products. @since 4.5.0 */ diff --git a/PubNub/PubNub.h b/PubNub/PubNub.h index c2ad99c0e..6f778f8e4 100644 --- a/PubNub/PubNub.h +++ b/PubNub/PubNub.h @@ -53,9 +53,4 @@ #import "PNStatus.h" #import "PNAES.h" -// Fabric -#ifdef FABRIC_SUPPORT - #import "PubNub+FAB.h" -#endif - #endif diff --git a/README.md b/README.md index 79f83c292..8d2ab7889 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# PubNub 4.13.0 for iOS 9+ +# PubNub 4.13.1 for iOS 9+ [![Twitter](https://img.shields.io/badge/twitter-%40PubNub-blue.svg?style=flat)](https://twitter.com/PubNub) [![Twitter Releases](https://img.shields.io/badge/twitter-%40PubNubRelease-blue.svg?style=flat)](https://twitter.com/PubNubRelease) [![License](https://img.shields.io/github/license/pubnub/objective-c.svg?style=flat)](https://img.shields.io/github/license/pubnub/objective-c.svg) @@ -6,7 +6,7 @@ [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![Platform](https://img.shields.io/cocoapods/p/PubNub.svg?style=flat)](https://img.shields.io/cocoapods/p/PubNub.svg) [![Docs Coverage](https://img.shields.io/cocoapods/metrics/doc-percent/PubNub.svg?style=flat)](https://img.shields.io/cocoapods/metrics/doc-percent/PubNub.svg) -[![Build Status](https://travis-ci.org/pubnub/objective-c?branch=master)](https://travis-ci.org/pubnub/objective-c) +[![Build Status](https://travis-ci.org/pubnub/objective-c.svg?branch=master)](https://travis-ci.org/pubnub/objective-c) ## Please direct all Support Questions and Concerns to Support@PubNub.com ## Complete Docs Check out our [official docs page](http://www.pubnub.com/docs/ios-objective-c/pubnub-objective-c-sdk-v4) diff --git a/Tests/PubNub Tests.xcodeproj/project.pbxproj b/Tests/PubNub Tests.xcodeproj/project.pbxproj index 6654d162c..6f9a1e7c7 100644 --- a/Tests/PubNub Tests.xcodeproj/project.pbxproj +++ b/Tests/PubNub Tests.xcodeproj/project.pbxproj @@ -7,12 +7,6 @@ objects = { /* Begin PBXBuildFile section */ - 0042D029DF0A60EAE9E97E75 /* Pods_MockableTests__iOS__Unit_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 807C1E4B133D73D0A73F4A63 /* Pods_MockableTests__iOS__Unit_Tests.framework */; }; - 1347928A376D92E131BA1364 /* Pods_MockableTests__iOS__Mocked_Integration_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 630BF161A05F88463997CDEF /* Pods_MockableTests__iOS__Mocked_Integration_Tests.framework */; }; - 14B1794D5C6CC4266ED22AD3 /* Pods_MockableTests__tvOS__Mocked_Integration_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 11D69858FFE7F4EAE285F2D5 /* Pods_MockableTests__tvOS__Mocked_Integration_Tests.framework */; }; - 1BB1E4C2C8AAC18D4C7199C3 /* Pods__iOS__Integration_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 920B649044F618C346B0C2F0 /* Pods__iOS__Integration_Tests.framework */; }; - 77FE92A55FFE3011A2993F88 /* Pods_MockableTests__macOS__Unit_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 53E26974366CA7B8A99340E7 /* Pods_MockableTests__macOS__Unit_Tests.framework */; }; - 86F37F6E8DC420D32AF14AAA /* Pods_MockableTests__tvOS__Unit_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6335C248B76FFB7012F2D151 /* Pods_MockableTests__tvOS__Unit_Tests.framework */; }; A529271023B181FE00FF46DD /* PNRecordableTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = A529270F23B181FE00FF46DD /* PNRecordableTestCase.m */; }; A529271123B181FE00FF46DD /* PNRecordableTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = A529270F23B181FE00FF46DD /* PNRecordableTestCase.m */; }; A529271223B181FE00FF46DD /* PNRecordableTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = A529270F23B181FE00FF46DD /* PNRecordableTestCase.m */; }; @@ -148,27 +142,9 @@ A5DB1E9E23B412E7009B1B23 /* PNPublishIntegrationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = A5DB1E9B23B412E7009B1B23 /* PNPublishIntegrationTests.m */; }; A5DB1E9F23B412E7009B1B23 /* PNPublishIntegrationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = A5DB1E9B23B412E7009B1B23 /* PNPublishIntegrationTests.m */; }; A5DB1EA023B41476009B1B23 /* tests-configuration.json in Resources */ = {isa = PBXBuildFile; fileRef = A529271823B1855A00FF46DD /* tests-configuration.json */; }; - E8384D24DB0C3F49BB43F3AC /* Pods_MockableTests__macOS__Mocked_Integration_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DCFC59753168B05940319DBA /* Pods_MockableTests__macOS__Mocked_Integration_Tests.framework */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ - 11D69858FFE7F4EAE285F2D5 /* Pods_MockableTests__tvOS__Mocked_Integration_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MockableTests__tvOS__Mocked_Integration_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 1BA98F1E8EEB1CEB98EFD3C4 /* Pods-MockableTests-[macOS] Mocked Integration Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[macOS] Mocked Integration Tests.release.xcconfig"; path = "Target Support Files/Pods-MockableTests-[macOS] Mocked Integration Tests/Pods-MockableTests-[macOS] Mocked Integration Tests.release.xcconfig"; sourceTree = ""; }; - 25692505FB8B6A6B76FF7C26 /* Pods-MockableTests-[iOS] Mocked Integration Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[iOS] Mocked Integration Tests.debug.xcconfig"; path = "Target Support Files/Pods-MockableTests-[iOS] Mocked Integration Tests/Pods-MockableTests-[iOS] Mocked Integration Tests.debug.xcconfig"; sourceTree = ""; }; - 29CA30C01DA11D9A77017982 /* Pods-MockableTests-[tvOS] Mocked Integration Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[tvOS] Mocked Integration Tests.release.xcconfig"; path = "Target Support Files/Pods-MockableTests-[tvOS] Mocked Integration Tests/Pods-MockableTests-[tvOS] Mocked Integration Tests.release.xcconfig"; sourceTree = ""; }; - 45686882FCB959B97FADC986 /* Pods-MockableTests-[macOS] Mocked Integration Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[macOS] Mocked Integration Tests.debug.xcconfig"; path = "Target Support Files/Pods-MockableTests-[macOS] Mocked Integration Tests/Pods-MockableTests-[macOS] Mocked Integration Tests.debug.xcconfig"; sourceTree = ""; }; - 4E925E53782772E8DADCD599 /* Pods-MockableTests-[tvOS] Unit Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[tvOS] Unit Tests.release.xcconfig"; path = "Target Support Files/Pods-MockableTests-[tvOS] Unit Tests/Pods-MockableTests-[tvOS] Unit Tests.release.xcconfig"; sourceTree = ""; }; - 53E26974366CA7B8A99340E7 /* Pods_MockableTests__macOS__Unit_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MockableTests__macOS__Unit_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 62A9E0261BD01762FE2C2D0C /* Pods-MockableTests-[iOS] Unit Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[iOS] Unit Tests.release.xcconfig"; path = "Target Support Files/Pods-MockableTests-[iOS] Unit Tests/Pods-MockableTests-[iOS] Unit Tests.release.xcconfig"; sourceTree = ""; }; - 630BF161A05F88463997CDEF /* Pods_MockableTests__iOS__Mocked_Integration_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MockableTests__iOS__Mocked_Integration_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 6335C248B76FFB7012F2D151 /* Pods_MockableTests__tvOS__Unit_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MockableTests__tvOS__Unit_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 69FF522A83ED4BDED019829C /* Pods-MockableTests-[iOS] Unit Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[iOS] Unit Tests.debug.xcconfig"; path = "Target Support Files/Pods-MockableTests-[iOS] Unit Tests/Pods-MockableTests-[iOS] Unit Tests.debug.xcconfig"; sourceTree = ""; }; - 6E739F838BE83C3CB6579E9D /* Pods-MockableTests-[tvOS] Unit Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[tvOS] Unit Tests.debug.xcconfig"; path = "Target Support Files/Pods-MockableTests-[tvOS] Unit Tests/Pods-MockableTests-[tvOS] Unit Tests.debug.xcconfig"; sourceTree = ""; }; - 728AD9FCB981CBE691F7A6D0 /* Pods-MockableTests-[macOS] Unit Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[macOS] Unit Tests.debug.xcconfig"; path = "Target Support Files/Pods-MockableTests-[macOS] Unit Tests/Pods-MockableTests-[macOS] Unit Tests.debug.xcconfig"; sourceTree = ""; }; - 807C1E4B133D73D0A73F4A63 /* Pods_MockableTests__iOS__Unit_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MockableTests__iOS__Unit_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 86365B3A571F666A5ED76D80 /* Pods-[iOS] Integration Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-[iOS] Integration Tests.debug.xcconfig"; path = "Target Support Files/Pods-[iOS] Integration Tests/Pods-[iOS] Integration Tests.debug.xcconfig"; sourceTree = ""; }; - 896A4CE66BD47FDE65276FAA /* Pods-MockableTests-[macOS] Unit Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[macOS] Unit Tests.release.xcconfig"; path = "Target Support Files/Pods-MockableTests-[macOS] Unit Tests/Pods-MockableTests-[macOS] Unit Tests.release.xcconfig"; sourceTree = ""; }; - 920B649044F618C346B0C2F0 /* Pods__iOS__Integration_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods__iOS__Integration_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; A529268323B0D07500FF46DD /* [iOS] Code Coverage.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "[iOS] Code Coverage.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; A52926D823B0E3CF00FF46DD /* ios-tests.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "ios-tests.plist"; sourceTree = ""; }; A52926DF23B0E6C500FF46DD /* [tvOS] Mocked Integration Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "[tvOS] Mocked Integration Tests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -216,10 +192,6 @@ A5DB1E9123B2D212009B1B23 /* NSInvocation+PNTest.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "NSInvocation+PNTest.h"; sourceTree = ""; }; A5DB1E9223B2D212009B1B23 /* NSInvocation+PNTest.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSInvocation+PNTest.m"; sourceTree = ""; }; A5DB1E9B23B412E7009B1B23 /* PNPublishIntegrationTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = PNPublishIntegrationTests.m; sourceTree = ""; }; - AB136D4CA397621245829B4A /* Pods-MockableTests-[iOS] Mocked Integration Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[iOS] Mocked Integration Tests.release.xcconfig"; path = "Target Support Files/Pods-MockableTests-[iOS] Mocked Integration Tests/Pods-MockableTests-[iOS] Mocked Integration Tests.release.xcconfig"; sourceTree = ""; }; - BCF45540E9166EED4F363FD0 /* Pods-MockableTests-[tvOS] Mocked Integration Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MockableTests-[tvOS] Mocked Integration Tests.debug.xcconfig"; path = "Target Support Files/Pods-MockableTests-[tvOS] Mocked Integration Tests/Pods-MockableTests-[tvOS] Mocked Integration Tests.debug.xcconfig"; sourceTree = ""; }; - DCFC59753168B05940319DBA /* Pods_MockableTests__macOS__Mocked_Integration_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MockableTests__macOS__Mocked_Integration_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FC07360087EEF919F88D5CE5 /* Pods-[iOS] Integration Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-[iOS] Integration Tests.release.xcconfig"; path = "Target Support Files/Pods-[iOS] Integration Tests/Pods-[iOS] Integration Tests.release.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -234,7 +206,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 14B1794D5C6CC4266ED22AD3 /* Pods_MockableTests__tvOS__Mocked_Integration_Tests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -242,7 +213,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 86F37F6E8DC420D32AF14AAA /* Pods_MockableTests__tvOS__Unit_Tests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -250,7 +220,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E8384D24DB0C3F49BB43F3AC /* Pods_MockableTests__macOS__Mocked_Integration_Tests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -258,7 +227,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 77FE92A55FFE3011A2993F88 /* Pods_MockableTests__macOS__Unit_Tests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -266,7 +234,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 0042D029DF0A60EAE9E97E75 /* Pods_MockableTests__iOS__Unit_Tests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -274,7 +241,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 1347928A376D92E131BA1364 /* Pods_MockableTests__iOS__Mocked_Integration_Tests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -282,27 +248,12 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 1BB1E4C2C8AAC18D4C7199C3 /* Pods__iOS__Integration_Tests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 9F8068D907CCBE75CE4F72C9 /* Frameworks */ = { - isa = PBXGroup; - children = ( - 630BF161A05F88463997CDEF /* Pods_MockableTests__iOS__Mocked_Integration_Tests.framework */, - 807C1E4B133D73D0A73F4A63 /* Pods_MockableTests__iOS__Unit_Tests.framework */, - DCFC59753168B05940319DBA /* Pods_MockableTests__macOS__Mocked_Integration_Tests.framework */, - 53E26974366CA7B8A99340E7 /* Pods_MockableTests__macOS__Unit_Tests.framework */, - 11D69858FFE7F4EAE285F2D5 /* Pods_MockableTests__tvOS__Mocked_Integration_Tests.framework */, - 6335C248B76FFB7012F2D151 /* Pods_MockableTests__tvOS__Unit_Tests.framework */, - 920B649044F618C346B0C2F0 /* Pods__iOS__Integration_Tests.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; A52926AF23B0D63100FF46DD /* Support Files */ = { isa = PBXGroup; children = ( @@ -502,7 +453,6 @@ A52926AF23B0D63100FF46DD /* Support Files */, A5B65D5523B03DB1006B7BFB /* Products */, DC23E0797E4D29A69E09CCB4 /* Pods */, - 9F8068D907CCBE75CE4F72C9 /* Frameworks */, ); sourceTree = ""; }; @@ -545,20 +495,6 @@ DC23E0797E4D29A69E09CCB4 /* Pods */ = { isa = PBXGroup; children = ( - 25692505FB8B6A6B76FF7C26 /* Pods-MockableTests-[iOS] Mocked Integration Tests.debug.xcconfig */, - AB136D4CA397621245829B4A /* Pods-MockableTests-[iOS] Mocked Integration Tests.release.xcconfig */, - 69FF522A83ED4BDED019829C /* Pods-MockableTests-[iOS] Unit Tests.debug.xcconfig */, - 62A9E0261BD01762FE2C2D0C /* Pods-MockableTests-[iOS] Unit Tests.release.xcconfig */, - 45686882FCB959B97FADC986 /* Pods-MockableTests-[macOS] Mocked Integration Tests.debug.xcconfig */, - 1BA98F1E8EEB1CEB98EFD3C4 /* Pods-MockableTests-[macOS] Mocked Integration Tests.release.xcconfig */, - 728AD9FCB981CBE691F7A6D0 /* Pods-MockableTests-[macOS] Unit Tests.debug.xcconfig */, - 896A4CE66BD47FDE65276FAA /* Pods-MockableTests-[macOS] Unit Tests.release.xcconfig */, - BCF45540E9166EED4F363FD0 /* Pods-MockableTests-[tvOS] Mocked Integration Tests.debug.xcconfig */, - 29CA30C01DA11D9A77017982 /* Pods-MockableTests-[tvOS] Mocked Integration Tests.release.xcconfig */, - 6E739F838BE83C3CB6579E9D /* Pods-MockableTests-[tvOS] Unit Tests.debug.xcconfig */, - 4E925E53782772E8DADCD599 /* Pods-MockableTests-[tvOS] Unit Tests.release.xcconfig */, - 86365B3A571F666A5ED76D80 /* Pods-[iOS] Integration Tests.debug.xcconfig */, - FC07360087EEF919F88D5CE5 /* Pods-[iOS] Integration Tests.release.xcconfig */, ); path = Pods; sourceTree = ""; @@ -587,11 +523,9 @@ isa = PBXNativeTarget; buildConfigurationList = A52926E423B0E6C500FF46DD /* Build configuration list for PBXNativeTarget "[tvOS] Mocked Integration Tests" */; buildPhases = ( - CB960BDC9B81AF4A06788F00 /* [CP] Check Pods Manifest.lock */, A52926DB23B0E6C500FF46DD /* Sources */, A52926DC23B0E6C500FF46DD /* Frameworks */, A52926DD23B0E6C500FF46DD /* Resources */, - 69716F34DBEF059E16377242 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -606,11 +540,9 @@ isa = PBXNativeTarget; buildConfigurationList = A52926F023B0E6DD00FF46DD /* Build configuration list for PBXNativeTarget "[tvOS] Unit Tests" */; buildPhases = ( - 41E9E6BD60B43AC55DE2148D /* [CP] Check Pods Manifest.lock */, A52926E723B0E6DC00FF46DD /* Sources */, A52926E823B0E6DC00FF46DD /* Frameworks */, A52926E923B0E6DC00FF46DD /* Resources */, - DC37B66A8B4AA3A19978D5FC /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -625,11 +557,9 @@ isa = PBXNativeTarget; buildConfigurationList = A52926FC23B0E71700FF46DD /* Build configuration list for PBXNativeTarget "[macOS] Mocked Integration Tests" */; buildPhases = ( - 997FEBC407DCC91B3FCF3A56 /* [CP] Check Pods Manifest.lock */, A52926F323B0E71700FF46DD /* Sources */, A52926F423B0E71700FF46DD /* Frameworks */, A52926F523B0E71700FF46DD /* Resources */, - 2C6D3573E8878185833FB1BC /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -644,11 +574,9 @@ isa = PBXNativeTarget; buildConfigurationList = A529270823B0E72500FF46DD /* Build configuration list for PBXNativeTarget "[macOS] Unit Tests" */; buildPhases = ( - 140671F7E9AA5E12782547E6 /* [CP] Check Pods Manifest.lock */, A52926FF23B0E72500FF46DD /* Sources */, A529270023B0E72500FF46DD /* Frameworks */, A529270123B0E72500FF46DD /* Resources */, - 04839ECB3FDCDD3C4B1E0474 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -663,11 +591,9 @@ isa = PBXNativeTarget; buildConfigurationList = A5B65D7B23B03DB4006B7BFB /* Build configuration list for PBXNativeTarget "[iOS] Unit Tests" */; buildPhases = ( - D296950A8A8594AD7AE541D5 /* [CP] Check Pods Manifest.lock */, A5B65D6B23B03DB4006B7BFB /* Sources */, A5B65D6C23B03DB4006B7BFB /* Frameworks */, A5B65D6D23B03DB4006B7BFB /* Resources */, - 845F211BB22B94EEA0FAB5E9 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -682,11 +608,9 @@ isa = PBXNativeTarget; buildConfigurationList = A5B65D8723B03FFD006B7BFB /* Build configuration list for PBXNativeTarget "[iOS] Mocked Integration Tests" */; buildPhases = ( - D7CB23BDA79C17F7A60D7D62 /* [CP] Check Pods Manifest.lock */, A5B65D7E23B03FFD006B7BFB /* Sources */, A5B65D7F23B03FFD006B7BFB /* Frameworks */, A5B65D8023B03FFD006B7BFB /* Resources */, - B8789384B731316FBF45A4E1 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -701,11 +625,9 @@ isa = PBXNativeTarget; buildConfigurationList = A5B65D9423B04148006B7BFB /* Build configuration list for PBXNativeTarget "[iOS] Integration Tests" */; buildPhases = ( - A99DCD69725AE4F35639F239 /* [CP] Check Pods Manifest.lock */, A5B65D8B23B04148006B7BFB /* Sources */, A5B65D8C23B04148006B7BFB /* Frameworks */, A5B65D8D23B04148006B7BFB /* Resources */, - DA4AC18938F39167BCC08A81 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -849,282 +771,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - 04839ECB3FDCDD3C4B1E0474 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[macOS] Unit Tests/Pods-MockableTests-[macOS] Unit Tests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[macOS] Unit Tests/Pods-MockableTests-[macOS] Unit Tests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-MockableTests-[macOS] Unit Tests/Pods-MockableTests-[macOS] Unit Tests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 140671F7E9AA5E12782547E6 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-MockableTests-[macOS] Unit Tests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 2C6D3573E8878185833FB1BC /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[macOS] Mocked Integration Tests/Pods-MockableTests-[macOS] Mocked Integration Tests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[macOS] Mocked Integration Tests/Pods-MockableTests-[macOS] Mocked Integration Tests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-MockableTests-[macOS] Mocked Integration Tests/Pods-MockableTests-[macOS] Mocked Integration Tests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 41E9E6BD60B43AC55DE2148D /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-MockableTests-[tvOS] Unit Tests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 69716F34DBEF059E16377242 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[tvOS] Mocked Integration Tests/Pods-MockableTests-[tvOS] Mocked Integration Tests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[tvOS] Mocked Integration Tests/Pods-MockableTests-[tvOS] Mocked Integration Tests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-MockableTests-[tvOS] Mocked Integration Tests/Pods-MockableTests-[tvOS] Mocked Integration Tests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 845F211BB22B94EEA0FAB5E9 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[iOS] Unit Tests/Pods-MockableTests-[iOS] Unit Tests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[iOS] Unit Tests/Pods-MockableTests-[iOS] Unit Tests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-MockableTests-[iOS] Unit Tests/Pods-MockableTests-[iOS] Unit Tests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 997FEBC407DCC91B3FCF3A56 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-MockableTests-[macOS] Mocked Integration Tests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - A99DCD69725AE4F35639F239 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-[iOS] Integration Tests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - B8789384B731316FBF45A4E1 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[iOS] Mocked Integration Tests/Pods-MockableTests-[iOS] Mocked Integration Tests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[iOS] Mocked Integration Tests/Pods-MockableTests-[iOS] Mocked Integration Tests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-MockableTests-[iOS] Mocked Integration Tests/Pods-MockableTests-[iOS] Mocked Integration Tests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - CB960BDC9B81AF4A06788F00 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-MockableTests-[tvOS] Mocked Integration Tests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - D296950A8A8594AD7AE541D5 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-MockableTests-[iOS] Unit Tests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - D7CB23BDA79C17F7A60D7D62 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-MockableTests-[iOS] Mocked Integration Tests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - DA4AC18938F39167BCC08A81 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-[iOS] Integration Tests/Pods-[iOS] Integration Tests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-[iOS] Integration Tests/Pods-[iOS] Integration Tests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-[iOS] Integration Tests/Pods-[iOS] Integration Tests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - DC37B66A8B4AA3A19978D5FC /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[tvOS] Unit Tests/Pods-MockableTests-[tvOS] Unit Tests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-MockableTests-[tvOS] Unit Tests/Pods-MockableTests-[tvOS] Unit Tests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-MockableTests-[tvOS] Unit Tests/Pods-MockableTests-[tvOS] Unit Tests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ A529267F23B0D07500FF46DD /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -1348,7 +994,6 @@ }; A52926E523B0E6C500FF46DD /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = BCF45540E9166EED4F363FD0 /* Pods-MockableTests-[tvOS] Mocked Integration Tests.debug.xcconfig */; buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; @@ -1372,7 +1017,6 @@ }; A52926E623B0E6C500FF46DD /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 29CA30C01DA11D9A77017982 /* Pods-MockableTests-[tvOS] Mocked Integration Tests.release.xcconfig */; buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; @@ -1397,7 +1041,6 @@ }; A52926F123B0E6DD00FF46DD /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 6E739F838BE83C3CB6579E9D /* Pods-MockableTests-[tvOS] Unit Tests.debug.xcconfig */; buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; @@ -1421,7 +1064,6 @@ }; A52926F223B0E6DD00FF46DD /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 4E925E53782772E8DADCD599 /* Pods-MockableTests-[tvOS] Unit Tests.release.xcconfig */; buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; @@ -1446,7 +1088,6 @@ }; A52926FD23B0E71700FF46DD /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 45686882FCB959B97FADC986 /* Pods-MockableTests-[macOS] Mocked Integration Tests.debug.xcconfig */; buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; @@ -1469,7 +1110,6 @@ }; A52926FE23B0E71700FF46DD /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 1BA98F1E8EEB1CEB98EFD3C4 /* Pods-MockableTests-[macOS] Mocked Integration Tests.release.xcconfig */; buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; @@ -1493,7 +1133,6 @@ }; A529270923B0E72500FF46DD /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 728AD9FCB981CBE691F7A6D0 /* Pods-MockableTests-[macOS] Unit Tests.debug.xcconfig */; buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; @@ -1516,7 +1155,6 @@ }; A529270A23B0E72500FF46DD /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 896A4CE66BD47FDE65276FAA /* Pods-MockableTests-[macOS] Unit Tests.release.xcconfig */; buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; CLANG_CXX_LIBRARY = "libc++"; @@ -1664,7 +1302,6 @@ }; A5B65D7C23B03DB4006B7BFB /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 69FF522A83ED4BDED019829C /* Pods-MockableTests-[iOS] Unit Tests.debug.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = "-"; CODE_SIGN_STYLE = Manual; @@ -1689,7 +1326,6 @@ }; A5B65D7D23B03DB4006B7BFB /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 62A9E0261BD01762FE2C2D0C /* Pods-MockableTests-[iOS] Unit Tests.release.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = "-"; CODE_SIGN_STYLE = Manual; @@ -1714,7 +1350,6 @@ }; A5B65D8823B03FFD006B7BFB /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 25692505FB8B6A6B76FF7C26 /* Pods-MockableTests-[iOS] Mocked Integration Tests.debug.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = "-"; CODE_SIGN_STYLE = Manual; @@ -1740,7 +1375,6 @@ }; A5B65D8923B03FFD006B7BFB /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AB136D4CA397621245829B4A /* Pods-MockableTests-[iOS] Mocked Integration Tests.release.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = "-"; CODE_SIGN_STYLE = Manual; @@ -1766,7 +1400,6 @@ }; A5B65D9523B04148006B7BFB /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 86365B3A571F666A5ED76D80 /* Pods-[iOS] Integration Tests.debug.xcconfig */; buildSettings = { CLANG_ENABLE_CODE_COVERAGE = YES; CODE_SIGN_IDENTITY = "-"; @@ -1792,7 +1425,6 @@ }; A5B65D9623B04148006B7BFB /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FC07360087EEF919F88D5CE5 /* Pods-[iOS] Integration Tests.release.xcconfig */; buildSettings = { CLANG_ENABLE_CODE_COVERAGE = YES; CODE_SIGN_IDENTITY = "-"; diff --git a/Tests/Support Files/Scripts/create-configuration.sh b/Tests/Support Files/Scripts/create-configuration.sh new file mode 100755 index 000000000..c932a77ca --- /dev/null +++ b/Tests/Support Files/Scripts/create-configuration.sh @@ -0,0 +1,45 @@ +#!/usr/bin/env bash +set -e + + +BRCF="\033[1;31m" + + + +# Git root directory (initially call is done from repository on which Travis started job, so it appears to be +# private / source repository), +GIT_ROOT_PATH="$(git rev-parse --show-toplevel)" +CONFIGURATION_PATH="$GIT_ROOT_PATH/Tests/Support Files/tests-configuration.json" + + +if [[ -z $TESTS_SUBSCRIBE_KEY ]]; then + echo -e "${BRCF}Regular subscribe key for integration tests is missing (TESTS_SUBSCRIBE_KEY)${CF}" + exit 1 +fi + +if [[ -z $TESTS_PUBLISH_KEY ]]; then + echo -e "${BRCF}Regular publish key for integration tests is missing (TESTS_PUBLISH_KEY)${CF}" + exit 1 +fi + +if [[ -z $TESTS_PAM_SUBSCRIBE_KEY ]]; then + echo -e "${BRCF}PAM-enabled subscribe key for integration tests is missing +(TESTS_PAM_SUBSCRIBE_KEY)${CF}" + exit 1 +fi + +if [[ -z $TESTS_PAM_PUBLISH_KEY ]]; then + echo -e "${BRCF}PAM-enabled publish key for integration tests is missing +(TESTS_PAM_PUBLISH_KEY)${CF}" + exit 1 +fi + +# Store file with tests configuration. +echo "{ + \"keys\": { + \"publish\": \"$TESTS_PUBLISH_KEY\", + \"subscribe\": \"$TESTS_SUBSCRIBE_KEY\", + \"publish-pam\": \"$TESTS_PAM_PUBLISH_KEY\", + \"subscribe-pam\": \"$TESTS_PAM_SUBSCRIBE_KEY\" + } +}" > "$CONFIGURATION_PATH" \ No newline at end of file diff --git a/Tests/Support Files/Scripts/tests-runner.sh b/Tests/Support Files/Scripts/tests-runner.sh new file mode 100755 index 000000000..ccc857602 --- /dev/null +++ b/Tests/Support Files/Scripts/tests-runner.sh @@ -0,0 +1,102 @@ +#!/usr/bin/env bash +set -e + + +CF="\033[0m" +BF="\033[1m" +DF="\033[2m" +BRCF="\033[1;31m" +GCF="\033[32m" +LCCF="\033[96m" + + +# Git root directory (initially call is done from repository on which Travis started job, so it appears to be +# private / source repository), +GIT_ROOT_PATH="$(git rev-parse --show-toplevel)" +PODSPEC_FILE_PATH="$GIT_ROOT_PATH/PubNub.podspec" + +if ! [[ -r $PODSPEC_FILE_PATH ]]; then + echo -e "${BRCF}PubNub.podspec file not found: $PODSPEC_FILE_PATH${CF}" + exit 1 +fi + + +TEST_SCHEME_TYPE="Mocked Integration Tests" +[[ $2 == integration ]] && TEST_SCHEME_TYPE="Integration Tests" +[[ $2 == coverage ]] && TEST_SCHEME_TYPE="Code Coverage" + +# Maximum number of tests which should run for same device type (various versions). +[[ -n $3 ]] && MAXIMUM_DESTINATIONS="$3" || MAXIMUM_DESTINATIONS=3 +# List of targets on which test should be launched. +DESTINATION_NAMES=("macOS") +DESTINATIONS=() +PLATFORM="macOS" + + +if [[ $1 != macos ]]; then + [[ $1 == tvos ]] && PLATFORM="tvOS" || PLATFORM="iOS" + [[ $1 == tvos ]] && DEVICE="Apple TV" || DEVICE="iPhone" + SUPPORTED_VERSION_SPECS_KEY="spec.$1.deployment_target" + REGEXP="${SUPPORTED_VERSION_SPECS_KEY}[[:space:]]*=[[:space:]]*'([0-9]+)\.[0-9]+'" + VERSION_REGEXP="\((([0-9]+)\.[0-9]+(\.[0-9]+)?)\)" + [[ $(< "$PODSPEC_FILE_PATH") =~ $REGEXP ]] && MINIMUM_MAJOR_VERSION="${BASH_REMATCH[1]}" + MAXIMUM_MAJOR_VERSION="$MINIMUM_MAJOR_VERSION" + AVAILABLE_DEVICES=() + DESTINATION_NAMES=() + + # Extract list of devices which correspond to target platform and minimum version requirement + while IFS='' read -r match; do + # Skip destinations for iPhone paired watches + [[ $DEVICE == iPhone ]] && [[ $match =~ Watch ]] && continue + + # Skip destination if it's OS version is lower than specified in Podspec. + [[ $match =~ $VERSION_REGEXP ]] && [[ ${BASH_REMATCH[2]} -lt $MINIMUM_MAJOR_VERSION ]] && \ + continue + + [[ ${BASH_REMATCH[2]} -gt $MAXIMUM_MAJOR_VERSION ]] && \ + MAXIMUM_MAJOR_VERSION="${BASH_REMATCH[2]}" + + AVAILABLE_DEVICES+=("$match") + done < <(echo "$(instruments -s devices)" | grep -E "^$DEVICE") + + NEXT_MAJOR_VERSION=$MAXIMUM_MAJOR_VERSION + + while [[ $NEXT_MAJOR_VERSION -ge $MINIMUM_MAJOR_VERSION ]] && [[ $MAXIMUM_DESTINATIONS -gt 0 ]]; do + for ((deviceIdx=${#AVAILABLE_DEVICES[@]}-1; deviceIdx>=0; deviceIdx--)); do + DEVICE_INFORMATION="${AVAILABLE_DEVICES[$deviceIdx]}" + + if [[ $DEVICE_INFORMATION =~ $VERSION_REGEXP ]] && [[ ${BASH_REMATCH[2]} == "$NEXT_MAJOR_VERSION" ]]; then + OS="${BASH_REMATCH[1]}" + [[ $DEVICE_INFORMATION =~ (.*)[[:space:]]\((([0-9]+)\.[0-9]+(\.[0-9]+)?)\) ]] && \ + DEVICE_NAME="${BASH_REMATCH[1]}" + + DESTINATION_NAMES+=("$DEVICE_NAME $OS") + DESTINATIONS+=("platform=$PLATFORM Simulator,name=$DEVICE_NAME,OS=$OS") + MAXIMUM_DESTINATIONS=$((MAXIMUM_DESTINATIONS-1)) + break + fi + done + + NEXT_MAJOR_VERSION=$((NEXT_MAJOR_VERSION-1)) + done +else + DESTINATIONS+=("platform=macOS") +fi + +# Iterate through list of fetched destinations and run tests. +for destinationPlatformIdx in "${!DESTINATIONS[@]}"; do + DESTINATION_PLATFORM="${DESTINATIONS[$destinationPlatformIdx]}" + DESTINATION_NAME="${DESTINATION_NAMES[$destinationPlatformIdx]}" + + echo -e "${LCCF}Running tests for '${DF}$DESTINATION_NAME${CF}${LCCF}'...${CF}" + xcodebuild \ + -workspace "$GIT_ROOT_PATH/Tests/PubNub Tests.xcworkspace" \ + -scheme "[$PLATFORM] $TEST_SCHEME_TYPE" \ + -destination "$DESTINATION_PLATFORM" \ + test | xcpretty --simple && XCODE_BUILD_EXITCODE="${PIPESTATUS[0]}" + + if [[ $XCODE_BUILD_EXITCODE -gt 0 ]]; then + echo -e "${BRCF}xcodebuild exited with error code: $XCODE_BUILD_EXITCODE" + exit $XCODE_BUILD_EXITCODE + fi +done \ No newline at end of file diff --git a/VERSION b/VERSION index 813b83b65..56d2fb548 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -4.13.0 +4.13.1