diff --git a/.travis.yml b/.travis.yml index 5bf3419..876143c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,5 @@ language: objective-c -osx_image: xcode6.4 +osx_image: xcode7 script: script/cibuild branches: only: diff --git a/Cartfile b/Cartfile index 007a244..0e33295 100644 --- a/Cartfile +++ b/Cartfile @@ -1,2 +1 @@ -github "ReactiveCocoa/ReactiveCocoa" ~> 3.0.0 -github "CocoaLumberjack/CocoaLumberjack" ~> 2.0.1 +github "CocoaLumberjack/CocoaLumberjack" "swift_2.0" diff --git a/Cartfile.private b/Cartfile.private index e3379a3..a1b9a05 100644 --- a/Cartfile.private +++ b/Cartfile.private @@ -1,2 +1,2 @@ -github "specta/specta" ~> 1.0.0 +github "specta/specta" "master" github "specta/expecta" ~> 1.0.1 diff --git a/Cartfile.resolved b/Cartfile.resolved index 43dad2c..dd8449f 100644 --- a/Cartfile.resolved +++ b/Cartfile.resolved @@ -1,6 +1,3 @@ -github "robrix/Box" "1.2.2" -github "CocoaLumberjack/CocoaLumberjack" "2.0.1" +github "CocoaLumberjack/CocoaLumberjack" "479279f102a8ab23084290697bafa77aac0d1bdf" github "specta/expecta" "v1.0.3" -github "specta/specta" "v1.0.3" -github "antitypical/Result" "0.4.4" -github "ReactiveCocoa/ReactiveCocoa" "v3.0.0" +github "specta/specta" "8f7ac2989d5ad953ded6c3c3668ee128cd2e5683" diff --git a/Gemfile.lock b/Gemfile.lock index 4e53755..ae316f6 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,7 +1,7 @@ GEM remote: https://rubygems.org/ specs: - xcpretty (0.1.10) + xcpretty (0.1.12) PLATFORMS ruby diff --git a/WLXBluetoothDevice.xcodeproj/project.pbxproj b/WLXBluetoothDevice.xcodeproj/project.pbxproj index 22322a6..d10c437 100644 --- a/WLXBluetoothDevice.xcodeproj/project.pbxproj +++ b/WLXBluetoothDevice.xcodeproj/project.pbxproj @@ -16,14 +16,6 @@ 9D5CA63F1B131DAC00356292 /* Specta.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1FD8881B1230E5004A45F4 /* Specta.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 9D5CA6401B131DB600356292 /* OCHamcrestIOS.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D5CA5FE1B13092900356292 /* OCHamcrestIOS.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 9D5CA6411B131DB600356292 /* OCMockitoIOS.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D44AB2C1B12DAE00009A4A6 /* OCMockitoIOS.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 9D5CA65A1B132CB000356292 /* WLXBluetoothDeviceReactiveExtensions.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D5CA64F1B132CAF00356292 /* WLXBluetoothDeviceReactiveExtensions.framework */; }; - 9D5CA6681B132CC100356292 /* WLXBluetoothDevice.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D1FD7D31B12076C004A45F4 /* WLXBluetoothDevice.framework */; }; - 9D5CA66B1B132CDE00356292 /* WLXBluetoothDevice.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D1FD7D31B12076C004A45F4 /* WLXBluetoothDevice.framework */; }; - 9D5CA66F1B132D3700356292 /* OCHamcrestIOS.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D5CA5FE1B13092900356292 /* OCHamcrestIOS.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 9D5CA6701B132D3700356292 /* ReactiveCocoa.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D44AB2E1B12FFCA0009A4A6 /* ReactiveCocoa.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 9D5CA6711B132D3700356292 /* OCMockitoIOS.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D44AB2C1B12DAE00009A4A6 /* OCMockitoIOS.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 9D5CA6731B132D3700356292 /* Expecta.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1FD8871B1230E5004A45F4 /* Expecta.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 9D5CA6741B132D3700356292 /* Specta.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D1FD8881B1230E5004A45F4 /* Specta.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 9D5CA67E1B132E8400356292 /* WLXBluetoothConnectionManagerSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA6751B132E8400356292 /* WLXBluetoothConnectionManagerSpec.m */; }; 9D5CA67F1B132E8400356292 /* WLXBluetoothDeviceConnectionRecordSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA6761B132E8400356292 /* WLXBluetoothDeviceConnectionRecordSpec.m */; }; 9D5CA6801B132E8400356292 /* WLXBluetoothDeviceDiscovererSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA6771B132E8400356292 /* WLXBluetoothDeviceDiscovererSpec.m */; }; @@ -84,37 +76,9 @@ 9D5CA6EA1B132E9B00356292 /* WLXServicesManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D5CA6B71B132E9B00356292 /* WLXServicesManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9D5CA6EB1B132E9B00356292 /* WLXServicesManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA6B81B132E9B00356292 /* WLXServicesManager.m */; }; 9D5CA6EC1B132E9B00356292 /* WLXServicesManagerDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D5CA6B91B132E9B00356292 /* WLXServicesManagerDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9D5CA6F61B132EE100356292 /* WLXBluetoothDeviceReactiveExtensions.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D5CA6ED1B132EE100356292 /* WLXBluetoothDeviceReactiveExtensions.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9D5CA6F71B132EE100356292 /* WLXReactiveConnectionManagerDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D5CA6EE1B132EE100356292 /* WLXReactiveConnectionManagerDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9D5CA6F81B132EE100356292 /* WLXReactiveConnectionManagerDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA6EF1B132EE100356292 /* WLXReactiveConnectionManagerDelegate.m */; }; - 9D5CA6F91B132EE100356292 /* WLXReactiveDeviceDiscovererDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D5CA6F01B132EE100356292 /* WLXReactiveDeviceDiscovererDelegate.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9D5CA6FA1B132EE100356292 /* WLXReactiveDeviceDiscovererDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA6F11B132EE100356292 /* WLXReactiveDeviceDiscovererDelegate.m */; }; - 9D5CA6FB1B132EE100356292 /* WLXServiceManager+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D5CA6F21B132EE100356292 /* WLXServiceManager+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9D5CA6FC1B132EE100356292 /* WLXServiceManager+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA6F31B132EE100356292 /* WLXServiceManager+RACSignalSupport.m */; }; - 9D5CA6FD1B132EE100356292 /* WLXServicesManager+RACSignalSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D5CA6F41B132EE100356292 /* WLXServicesManager+RACSignalSupport.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9D5CA6FE1B132EE100356292 /* WLXServicesManager+RACSignalSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA6F51B132EE100356292 /* WLXServicesManager+RACSignalSupport.m */; }; - 9D5CA7051B132EF000356292 /* WLXReactiveConnectionManagerDelegateSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA7001B132EF000356292 /* WLXReactiveConnectionManagerDelegateSpec.m */; }; - 9D5CA7061B132EF000356292 /* WLXReactiveDeviceDiscovererDelegateSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA7011B132EF000356292 /* WLXReactiveDeviceDiscovererDelegateSpec.m */; }; - 9D5CA7071B132EF000356292 /* WLXServiceManager+RACSignalSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA7021B132EF000356292 /* WLXServiceManager+RACSignalSupportSpec.m */; }; - 9D5CA7081B132EF000356292 /* WLXServicesManager+RACSignalSupportSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA7031B132EF000356292 /* WLXServicesManager+RACSignalSupportSpec.m */; }; - 9D5CA7091B132F8A00356292 /* ReactiveCocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D44AB2E1B12FFCA0009A4A6 /* ReactiveCocoa.framework */; }; - 9D5CA70A1B132FB200356292 /* OCHamcrestIOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D5CA5FE1B13092900356292 /* OCHamcrestIOS.framework */; }; - 9D5CA70B1B132FB200356292 /* OCMockitoIOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D44AB2C1B12DAE00009A4A6 /* OCMockitoIOS.framework */; }; - 9D5CA70C1B132FB200356292 /* Expecta.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D1FD8871B1230E5004A45F4 /* Expecta.framework */; }; - 9D5CA70D1B132FB200356292 /* Specta.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D1FD8881B1230E5004A45F4 /* Specta.framework */; }; - 9D5CA7101B1332DB00356292 /* Box.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D5CA70F1B1332DB00356292 /* Box.framework */; }; - 9D5CA7111B1332E400356292 /* Box.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D5CA70F1B1332DB00356292 /* Box.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 9D5CA7121B13333900356292 /* Box.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D5CA70F1B1332DB00356292 /* Box.framework */; }; - 9D5CA7171B13374B00356292 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D5CA7161B13374B00356292 /* Result.framework */; }; - 9D5CA7181B13375F00356292 /* Result.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D5CA7161B13374B00356292 /* Result.framework */; }; - 9D5CA7191B13376800356292 /* Result.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9D5CA7161B13374B00356292 /* Result.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 9D5CA71D1B133DA900356292 /* SwiftFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D5CA71C1B133DA900356292 /* SwiftFile.swift */; }; 9DBF379D1B1D8BAE009E99EE /* CocoaLumberjack.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DBF379C1B1D8BAE009E99EE /* CocoaLumberjack.framework */; }; - 9DBF379E1B1D8BD7009E99EE /* CocoaLumberjack.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DBF379C1B1D8BAE009E99EE /* CocoaLumberjack.framework */; }; 9DBF37B61B1E01DB009E99EE /* CocoaLumberjack.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DBF379C1B1D8BAE009E99EE /* CocoaLumberjack.framework */; }; 9DBF37B71B1E01E8009E99EE /* CocoaLumberjack.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DBF379C1B1D8BAE009E99EE /* CocoaLumberjack.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 9DBF37B81B1E01F1009E99EE /* CocoaLumberjack.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 9DBF379C1B1D8BAE009E99EE /* CocoaLumberjack.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 9DBF37B91B1E01F8009E99EE /* CocoaLumberjack.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9DBF379C1B1D8BAE009E99EE /* CocoaLumberjack.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -125,27 +89,6 @@ remoteGlobalIDString = 9D1FD7D21B12076C004A45F4; remoteInfo = WLXBluetoothDevice; }; - 9D5CA65B1B132CB000356292 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 9D1FD7CA1B12076C004A45F4 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 9D5CA64E1B132CAF00356292; - remoteInfo = WLXBluetoothDeviceReactiveExtensions; - }; - 9D5CA6691B132CCF00356292 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 9D1FD7CA1B12076C004A45F4 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 9D1FD7D21B12076C004A45F4; - remoteInfo = WLXBluetoothDevice; - }; - 9D5CA66C1B132CE300356292 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 9D1FD7CA1B12076C004A45F4 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 9D1FD7D21B12076C004A45F4; - remoteInfo = WLXBluetoothDevice; - }; /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -163,23 +106,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 9D5CA66E1B132D2B00356292 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - 9D5CA7191B13376800356292 /* Result.framework in CopyFiles */, - 9D5CA7111B1332E400356292 /* Box.framework in CopyFiles */, - 9D5CA66F1B132D3700356292 /* OCHamcrestIOS.framework in CopyFiles */, - 9DBF37B81B1E01F1009E99EE /* CocoaLumberjack.framework in CopyFiles */, - 9D5CA6701B132D3700356292 /* ReactiveCocoa.framework in CopyFiles */, - 9D5CA6711B132D3700356292 /* OCMockitoIOS.framework in CopyFiles */, - 9D5CA6731B132D3700356292 /* Expecta.framework in CopyFiles */, - 9D5CA6741B132D3700356292 /* Specta.framework in CopyFiles */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ @@ -193,10 +119,6 @@ 9D44AB2E1B12FFCA0009A4A6 /* ReactiveCocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ReactiveCocoa.framework; path = Carthage/Build/iOS/ReactiveCocoa.framework; sourceTree = ""; }; 9D5CA5FD1B1307EB00356292 /* SpecHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpecHelper.h; sourceTree = ""; }; 9D5CA5FE1B13092900356292 /* OCHamcrestIOS.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OCHamcrestIOS.framework; path = Frameworks/OCHamcrestIOS.framework; sourceTree = ""; }; - 9D5CA64F1B132CAF00356292 /* WLXBluetoothDeviceReactiveExtensions.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WLXBluetoothDeviceReactiveExtensions.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 9D5CA6521B132CAF00356292 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 9D5CA6591B132CB000356292 /* WLXBluetoothDeviceReactiveExtensionsTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = WLXBluetoothDeviceReactiveExtensionsTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 9D5CA65F1B132CB000356292 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 9D5CA6751B132E8400356292 /* WLXBluetoothConnectionManagerSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WLXBluetoothConnectionManagerSpec.m; sourceTree = ""; }; 9D5CA6761B132E8400356292 /* WLXBluetoothDeviceConnectionRecordSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WLXBluetoothDeviceConnectionRecordSpec.m; sourceTree = ""; }; 9D5CA6771B132E8400356292 /* WLXBluetoothDeviceDiscovererSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WLXBluetoothDeviceDiscovererSpec.m; sourceTree = ""; }; @@ -257,24 +179,8 @@ 9D5CA6B71B132E9B00356292 /* WLXServicesManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WLXServicesManager.h; sourceTree = ""; }; 9D5CA6B81B132E9B00356292 /* WLXServicesManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WLXServicesManager.m; sourceTree = ""; }; 9D5CA6B91B132E9B00356292 /* WLXServicesManagerDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WLXServicesManagerDelegate.h; sourceTree = ""; }; - 9D5CA6ED1B132EE100356292 /* WLXBluetoothDeviceReactiveExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WLXBluetoothDeviceReactiveExtensions.h; sourceTree = ""; }; - 9D5CA6EE1B132EE100356292 /* WLXReactiveConnectionManagerDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WLXReactiveConnectionManagerDelegate.h; sourceTree = ""; }; - 9D5CA6EF1B132EE100356292 /* WLXReactiveConnectionManagerDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WLXReactiveConnectionManagerDelegate.m; sourceTree = ""; }; - 9D5CA6F01B132EE100356292 /* WLXReactiveDeviceDiscovererDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WLXReactiveDeviceDiscovererDelegate.h; sourceTree = ""; }; - 9D5CA6F11B132EE100356292 /* WLXReactiveDeviceDiscovererDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WLXReactiveDeviceDiscovererDelegate.m; sourceTree = ""; }; - 9D5CA6F21B132EE100356292 /* WLXServiceManager+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WLXServiceManager+RACSignalSupport.h"; sourceTree = ""; }; - 9D5CA6F31B132EE100356292 /* WLXServiceManager+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "WLXServiceManager+RACSignalSupport.m"; sourceTree = ""; }; - 9D5CA6F41B132EE100356292 /* WLXServicesManager+RACSignalSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "WLXServicesManager+RACSignalSupport.h"; sourceTree = ""; }; - 9D5CA6F51B132EE100356292 /* WLXServicesManager+RACSignalSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "WLXServicesManager+RACSignalSupport.m"; sourceTree = ""; }; - 9D5CA7001B132EF000356292 /* WLXReactiveConnectionManagerDelegateSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WLXReactiveConnectionManagerDelegateSpec.m; sourceTree = ""; }; - 9D5CA7011B132EF000356292 /* WLXReactiveDeviceDiscovererDelegateSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WLXReactiveDeviceDiscovererDelegateSpec.m; sourceTree = ""; }; - 9D5CA7021B132EF000356292 /* WLXServiceManager+RACSignalSupportSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "WLXServiceManager+RACSignalSupportSpec.m"; sourceTree = ""; }; - 9D5CA7031B132EF000356292 /* WLXServicesManager+RACSignalSupportSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "WLXServicesManager+RACSignalSupportSpec.m"; sourceTree = ""; }; - 9D5CA70E1B1331D600356292 /* SpecHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpecHelper.h; sourceTree = ""; }; 9D5CA70F1B1332DB00356292 /* Box.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Box.framework; path = Carthage/Build/iOS/Box.framework; sourceTree = ""; }; - 9D5CA7131B13370B00356292 /* WLXBluetoothDeviceReactiveExtensionsTests-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "WLXBluetoothDeviceReactiveExtensionsTests-Bridging-Header.h"; sourceTree = ""; }; 9D5CA7161B13374B00356292 /* Result.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Result.framework; path = Carthage/Build/iOS/Result.framework; sourceTree = ""; }; - 9D5CA71C1B133DA900356292 /* SwiftFile.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SwiftFile.swift; path = WLXBluetoothDeviceReactiveExtensionsTests/SwiftFile.swift; sourceTree = SOURCE_ROOT; }; 9DBF379C1B1D8BAE009E99EE /* CocoaLumberjack.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CocoaLumberjack.framework; path = Carthage/Build/iOS/CocoaLumberjack.framework; sourceTree = ""; }; /* End PBXFileReference section */ @@ -300,34 +206,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 9D5CA64B1B132CAF00356292 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 9DBF379E1B1D8BD7009E99EE /* CocoaLumberjack.framework in Frameworks */, - 9D5CA7171B13374B00356292 /* Result.framework in Frameworks */, - 9D5CA7121B13333900356292 /* Box.framework in Frameworks */, - 9D5CA7091B132F8A00356292 /* ReactiveCocoa.framework in Frameworks */, - 9D5CA6681B132CC100356292 /* WLXBluetoothDevice.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 9D5CA6561B132CB000356292 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 9D5CA7181B13375F00356292 /* Result.framework in Frameworks */, - 9D5CA7101B1332DB00356292 /* Box.framework in Frameworks */, - 9DBF37B91B1E01F8009E99EE /* CocoaLumberjack.framework in Frameworks */, - 9D5CA66B1B132CDE00356292 /* WLXBluetoothDevice.framework in Frameworks */, - 9D5CA65A1B132CB000356292 /* WLXBluetoothDeviceReactiveExtensions.framework in Frameworks */, - 9D5CA70A1B132FB200356292 /* OCHamcrestIOS.framework in Frameworks */, - 9D5CA70B1B132FB200356292 /* OCMockitoIOS.framework in Frameworks */, - 9D5CA70C1B132FB200356292 /* Expecta.framework in Frameworks */, - 9D5CA70D1B132FB200356292 /* Specta.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ @@ -336,8 +214,6 @@ children = ( 9D1FD7D51B12076C004A45F4 /* WLXBluetoothDevice */, 9D1FD7E21B12076D004A45F4 /* WLXBluetoothDeviceTests */, - 9D5CA6501B132CAF00356292 /* WLXBluetoothDeviceReactiveExtensions */, - 9D5CA65D1B132CB000356292 /* WLXBluetoothDeviceReactiveExtensionsTests */, 9D5CA6001B13097400356292 /* Frameworks */, 9D1FD7D41B12076C004A45F4 /* Products */, ); @@ -348,8 +224,6 @@ children = ( 9D1FD7D31B12076C004A45F4 /* WLXBluetoothDevice.framework */, 9D1FD7DE1B12076D004A45F4 /* WLXBluetoothDeviceTests.xctest */, - 9D5CA64F1B132CAF00356292 /* WLXBluetoothDeviceReactiveExtensions.framework */, - 9D5CA6591B132CB000356292 /* WLXBluetoothDeviceReactiveExtensionsTests.xctest */, ); name = Products; sourceTree = ""; @@ -462,54 +336,6 @@ name = Frameworks; sourceTree = ""; }; - 9D5CA6501B132CAF00356292 /* WLXBluetoothDeviceReactiveExtensions */ = { - isa = PBXGroup; - children = ( - 9D5CA6ED1B132EE100356292 /* WLXBluetoothDeviceReactiveExtensions.h */, - 9D5CA6EE1B132EE100356292 /* WLXReactiveConnectionManagerDelegate.h */, - 9D5CA6EF1B132EE100356292 /* WLXReactiveConnectionManagerDelegate.m */, - 9D5CA6F01B132EE100356292 /* WLXReactiveDeviceDiscovererDelegate.h */, - 9D5CA6F11B132EE100356292 /* WLXReactiveDeviceDiscovererDelegate.m */, - 9D5CA6F21B132EE100356292 /* WLXServiceManager+RACSignalSupport.h */, - 9D5CA6F31B132EE100356292 /* WLXServiceManager+RACSignalSupport.m */, - 9D5CA6F41B132EE100356292 /* WLXServicesManager+RACSignalSupport.h */, - 9D5CA6F51B132EE100356292 /* WLXServicesManager+RACSignalSupport.m */, - 9D5CA6511B132CAF00356292 /* Supporting Files */, - ); - path = WLXBluetoothDeviceReactiveExtensions; - sourceTree = ""; - }; - 9D5CA6511B132CAF00356292 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 9D5CA6521B132CAF00356292 /* Info.plist */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; - 9D5CA65D1B132CB000356292 /* WLXBluetoothDeviceReactiveExtensionsTests */ = { - isa = PBXGroup; - children = ( - 9D5CA7001B132EF000356292 /* WLXReactiveConnectionManagerDelegateSpec.m */, - 9D5CA7011B132EF000356292 /* WLXReactiveDeviceDiscovererDelegateSpec.m */, - 9D5CA7021B132EF000356292 /* WLXServiceManager+RACSignalSupportSpec.m */, - 9D5CA7031B132EF000356292 /* WLXServicesManager+RACSignalSupportSpec.m */, - 9D5CA65E1B132CB000356292 /* Supporting Files */, - ); - path = WLXBluetoothDeviceReactiveExtensionsTests; - sourceTree = ""; - }; - 9D5CA65E1B132CB000356292 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 9D5CA7131B13370B00356292 /* WLXBluetoothDeviceReactiveExtensionsTests-Bridging-Header.h */, - 9D5CA65F1B132CB000356292 /* Info.plist */, - 9D5CA70E1B1331D600356292 /* SpecHelper.h */, - 9D5CA71C1B133DA900356292 /* SwiftFile.swift */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ @@ -551,18 +377,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 9D5CA64C1B132CAF00356292 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 9D5CA6F71B132EE100356292 /* WLXReactiveConnectionManagerDelegate.h in Headers */, - 9D5CA6FD1B132EE100356292 /* WLXServicesManager+RACSignalSupport.h in Headers */, - 9D5CA6FB1B132EE100356292 /* WLXServiceManager+RACSignalSupport.h in Headers */, - 9D5CA6F91B132EE100356292 /* WLXReactiveDeviceDiscovererDelegate.h in Headers */, - 9D5CA6F61B132EE100356292 /* WLXBluetoothDeviceReactiveExtensions.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ @@ -603,52 +417,14 @@ productReference = 9D1FD7DE1B12076D004A45F4 /* WLXBluetoothDeviceTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; - 9D5CA64E1B132CAF00356292 /* WLXBluetoothDeviceReactiveExtensions */ = { - isa = PBXNativeTarget; - buildConfigurationList = 9D5CA6621B132CB000356292 /* Build configuration list for PBXNativeTarget "WLXBluetoothDeviceReactiveExtensions" */; - buildPhases = ( - 9D5CA64A1B132CAF00356292 /* Sources */, - 9D5CA64B1B132CAF00356292 /* Frameworks */, - 9D5CA64C1B132CAF00356292 /* Headers */, - 9D5CA64D1B132CAF00356292 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 9D5CA66A1B132CCF00356292 /* PBXTargetDependency */, - ); - name = WLXBluetoothDeviceReactiveExtensions; - productName = WLXBluetoothDeviceReactiveExtensions; - productReference = 9D5CA64F1B132CAF00356292 /* WLXBluetoothDeviceReactiveExtensions.framework */; - productType = "com.apple.product-type.framework"; - }; - 9D5CA6581B132CB000356292 /* WLXBluetoothDeviceReactiveExtensionsTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 9D5CA6651B132CB000356292 /* Build configuration list for PBXNativeTarget "WLXBluetoothDeviceReactiveExtensionsTests" */; - buildPhases = ( - 9D5CA6551B132CB000356292 /* Sources */, - 9D5CA6561B132CB000356292 /* Frameworks */, - 9D5CA6571B132CB000356292 /* Resources */, - 9D5CA66E1B132D2B00356292 /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - 9D5CA66D1B132CE300356292 /* PBXTargetDependency */, - 9D5CA65C1B132CB000356292 /* PBXTargetDependency */, - ); - name = WLXBluetoothDeviceReactiveExtensionsTests; - productName = WLXBluetoothDeviceReactiveExtensionsTests; - productReference = 9D5CA6591B132CB000356292 /* WLXBluetoothDeviceReactiveExtensionsTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ 9D1FD7CA1B12076C004A45F4 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0630; + LastSwiftUpdateCheck = 0700; + LastUpgradeCheck = 0700; ORGANIZATIONNAME = Wolox; TargetAttributes = { 9D1FD7D21B12076C004A45F4 = { @@ -658,12 +434,6 @@ 9D1FD7DD1B12076D004A45F4 = { CreatedOnToolsVersion = 6.3.1; }; - 9D5CA64E1B132CAF00356292 = { - CreatedOnToolsVersion = 6.3.1; - }; - 9D5CA6581B132CB000356292 = { - CreatedOnToolsVersion = 6.3.1; - }; }; }; buildConfigurationList = 9D1FD7CD1B12076C004A45F4 /* Build configuration list for PBXProject "WLXBluetoothDevice" */; @@ -680,8 +450,6 @@ targets = ( 9D1FD7D21B12076C004A45F4 /* WLXBluetoothDevice */, 9D1FD7DD1B12076D004A45F4 /* WLXBluetoothDeviceTests */, - 9D5CA64E1B132CAF00356292 /* WLXBluetoothDeviceReactiveExtensions */, - 9D5CA6581B132CB000356292 /* WLXBluetoothDeviceReactiveExtensionsTests */, ); }; /* End PBXProject section */ @@ -701,20 +469,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 9D5CA64D1B132CAF00356292 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 9D5CA6571B132CB000356292 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -761,29 +515,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 9D5CA64A1B132CAF00356292 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 9D5CA6FC1B132EE100356292 /* WLXServiceManager+RACSignalSupport.m in Sources */, - 9D5CA6F81B132EE100356292 /* WLXReactiveConnectionManagerDelegate.m in Sources */, - 9D5CA6FE1B132EE100356292 /* WLXServicesManager+RACSignalSupport.m in Sources */, - 9D5CA6FA1B132EE100356292 /* WLXReactiveDeviceDiscovererDelegate.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 9D5CA6551B132CB000356292 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 9D5CA71D1B133DA900356292 /* SwiftFile.swift in Sources */, - 9D5CA7081B132EF000356292 /* WLXServicesManager+RACSignalSupportSpec.m in Sources */, - 9D5CA7061B132EF000356292 /* WLXReactiveDeviceDiscovererDelegateSpec.m in Sources */, - 9D5CA7071B132EF000356292 /* WLXServiceManager+RACSignalSupportSpec.m in Sources */, - 9D5CA7051B132EF000356292 /* WLXReactiveConnectionManagerDelegateSpec.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ @@ -792,21 +523,6 @@ target = 9D1FD7D21B12076C004A45F4 /* WLXBluetoothDevice */; targetProxy = 9D1FD7E01B12076D004A45F4 /* PBXContainerItemProxy */; }; - 9D5CA65C1B132CB000356292 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 9D5CA64E1B132CAF00356292 /* WLXBluetoothDeviceReactiveExtensions */; - targetProxy = 9D5CA65B1B132CB000356292 /* PBXContainerItemProxy */; - }; - 9D5CA66A1B132CCF00356292 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 9D1FD7D21B12076C004A45F4 /* WLXBluetoothDevice */; - targetProxy = 9D5CA6691B132CCF00356292 /* PBXContainerItemProxy */; - }; - 9D5CA66D1B132CE300356292 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 9D1FD7D21B12076C004A45F4 /* WLXBluetoothDevice */; - targetProxy = 9D5CA66C1B132CE300356292 /* PBXContainerItemProxy */; - }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ @@ -832,6 +548,7 @@ CURRENT_PROJECT_VERSION = 1; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -915,6 +632,7 @@ INFOPLIST_FILE = WLXBluetoothDevice/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "ar.com.wolox.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; }; @@ -936,6 +654,7 @@ INFOPLIST_FILE = WLXBluetoothDevice/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "ar.com.wolox.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; }; @@ -962,6 +681,7 @@ XCTest, "-ObjC", ); + PRODUCT_BUNDLE_IDENTIFIER = "ar.com.wolox.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Debug; @@ -983,105 +703,11 @@ XCTest, "-ObjC", ); + PRODUCT_BUNDLE_IDENTIFIER = "ar.com.wolox.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; }; name = Release; }; - 9D5CA6631B132CB000356292 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - "$(PROJECT_DIR)/Frameworks", - ); - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = WLXBluetoothDeviceReactiveExtensions/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - }; - name = Debug; - }; - 9D5CA6641B132CB000356292 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - "$(PROJECT_DIR)/Frameworks", - ); - INFOPLIST_FILE = WLXBluetoothDeviceReactiveExtensions/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - }; - name = Release; - }; - 9D5CA6661B132CB000356292 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - "$(PROJECT_DIR)/Frameworks", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = WLXBluetoothDeviceReactiveExtensionsTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-framework", - XCTest, - "-ObjC", - ); - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "WLXBluetoothDeviceReactiveExtensionsTests/WLXBluetoothDeviceReactiveExtensionsTests-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - }; - name = Debug; - }; - 9D5CA6671B132CB000356292 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - "$(PROJECT_DIR)/Frameworks", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = WLXBluetoothDeviceReactiveExtensionsTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - OTHER_LDFLAGS = ( - "$(inherited)", - "-framework", - XCTest, - "-ObjC", - ); - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "WLXBluetoothDeviceReactiveExtensionsTests/WLXBluetoothDeviceReactiveExtensionsTests-Bridging-Header.h"; - }; - name = Release; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ @@ -1112,24 +738,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 9D5CA6621B132CB000356292 /* Build configuration list for PBXNativeTarget "WLXBluetoothDeviceReactiveExtensions" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 9D5CA6631B132CB000356292 /* Debug */, - 9D5CA6641B132CB000356292 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 9D5CA6651B132CB000356292 /* Build configuration list for PBXNativeTarget "WLXBluetoothDeviceReactiveExtensionsTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 9D5CA6661B132CB000356292 /* Debug */, - 9D5CA6671B132CB000356292 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; /* End XCConfigurationList section */ }; rootObject = 9D1FD7CA1B12076C004A45F4 /* Project object */; diff --git a/WLXBluetoothDevice.xcodeproj/xcshareddata/xcschemes/WLXBluetoothDevice.xcscheme b/WLXBluetoothDevice.xcodeproj/xcshareddata/xcschemes/WLXBluetoothDevice.xcscheme index 1d68696..fc22af7 100644 --- a/WLXBluetoothDevice.xcodeproj/xcshareddata/xcschemes/WLXBluetoothDevice.xcscheme +++ b/WLXBluetoothDevice.xcodeproj/xcshareddata/xcschemes/WLXBluetoothDevice.xcscheme @@ -1,6 +1,6 @@ + shouldUseLaunchSchemeArgsEnv = "YES"> @@ -62,15 +62,18 @@ ReferencedContainer = "container:WLXBluetoothDevice.xcodeproj"> + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WLXBluetoothDevice/Info.plist b/WLXBluetoothDevice/Info.plist index 2c27510..dfb6492 100644 --- a/WLXBluetoothDevice/Info.plist +++ b/WLXBluetoothDevice/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier - ar.com.wolox.$(PRODUCT_NAME:rfc1034identifier) + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/WLXBluetoothDeviceReactiveExtensions/Info.plist b/WLXBluetoothDeviceReactiveExtensions/Info.plist deleted file mode 100644 index 003a402..0000000 --- a/WLXBluetoothDeviceReactiveExtensions/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - ar.com.wolox.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - NSPrincipalClass - - - diff --git a/WLXBluetoothDeviceReactiveExtensions/WLXBluetoothDeviceReactiveExtensions.h b/WLXBluetoothDeviceReactiveExtensions/WLXBluetoothDeviceReactiveExtensions.h deleted file mode 100644 index ec372a9..0000000 --- a/WLXBluetoothDeviceReactiveExtensions/WLXBluetoothDeviceReactiveExtensions.h +++ /dev/null @@ -1,21 +0,0 @@ -// -// WLXBluetoothDeviceReactiveExtensions.h -// WLXBluetoothDeviceReactiveExtensions -// -// Created by Guido Marucci Blas on 5/25/15. -// Copyright (c) 2015 Wolox. All rights reserved. -// - -#import - -//! Project version number for WLXBluetoothDeviceReactiveExtensions. -FOUNDATION_EXPORT double WLXBluetoothDeviceReactiveExtensionsVersionNumber; - -//! Project version string for WLXBluetoothDeviceReactiveExtensions. -FOUNDATION_EXPORT const unsigned char WLXBluetoothDeviceReactiveExtensionsVersionString[]; - -#import -#import -#import -#import - diff --git a/WLXBluetoothDeviceReactiveExtensions/WLXReactiveConnectionManagerDelegate.h b/WLXBluetoothDeviceReactiveExtensions/WLXReactiveConnectionManagerDelegate.h deleted file mode 100644 index d3fe8c3..0000000 --- a/WLXBluetoothDeviceReactiveExtensions/WLXReactiveConnectionManagerDelegate.h +++ /dev/null @@ -1,22 +0,0 @@ -// -// WLXReactiveConnectionManagerDelegate.h -// Pods -// -// Created by Guido Marucci Blas on 3/10/15. -// -// - -#import -#import -#import - -@interface WLXReactiveConnectionManagerDelegate : NSObject - -@property (nonatomic, readonly) RACSignal * connectionEstablished; -@property (nonatomic, readonly) RACSignal * connectionTerminated; -@property (nonatomic, readonly) RACSignal * reconnectionEstablished; -@property (nonatomic, readonly) RACSignal * failToConnect; -@property (nonatomic, readonly) RACSignal * connectionLost; -@property (nonatomic, readonly) RACSignal * reconnectionAttempt; - -@end diff --git a/WLXBluetoothDeviceReactiveExtensions/WLXReactiveConnectionManagerDelegate.m b/WLXBluetoothDeviceReactiveExtensions/WLXReactiveConnectionManagerDelegate.m deleted file mode 100644 index 3c47291..0000000 --- a/WLXBluetoothDeviceReactiveExtensions/WLXReactiveConnectionManagerDelegate.m +++ /dev/null @@ -1,93 +0,0 @@ -// -// WLXReactiveConnectionManagerDelegate.m -// Pods -// -// Created by Guido Marucci Blas on 3/10/15. -// -// - -#import "WLXReactiveConnectionManagerDelegate.h" - -@interface WLXReactiveConnectionManagerDelegate () - -@property (nonatomic, readonly) RACSubject * connectionEstablishedSubject; -@property (nonatomic, readonly) RACSubject * connectionTerminatedSubject; -@property (nonatomic, readonly) RACSubject * reconnectionEstablishedSubject; -@property (nonatomic, readonly) RACSubject * failToConnectSubject; -@property (nonatomic, readonly) RACSubject * connectionLostSubject; -@property (nonatomic, readonly) RACSubject * reconnectionAttemptSubject; - -@end - -@implementation WLXReactiveConnectionManagerDelegate - -@dynamic connectionEstablished; -@dynamic connectionTerminated; -@dynamic reconnectionEstablished; -@dynamic failToConnect; -@dynamic connectionLost; -@dynamic reconnectionAttempt; - -- (instancetype)init { - self = [super init]; - if (self) { - _connectionEstablishedSubject = [RACSubject subject]; - _connectionTerminatedSubject = [RACSubject subject]; - _reconnectionAttemptSubject = [RACSubject subject]; - _failToConnectSubject = [RACSubject subject]; - _connectionLostSubject = [RACSubject subject]; - _reconnectionEstablishedSubject = [RACSubject subject]; - } - return self; -} - -- (RACSignal *)connectionLost { - return self.connectionLostSubject; -} - -- (RACSignal *)connectionTerminated { - return self.connectionTerminatedSubject; -} - -- (RACSignal *)connectionEstablished { - return self.connectionEstablishedSubject; -} - -- (RACSignal *)failToConnect { - return self.failToConnectSubject; -} - -- (RACSignal *)reconnectionAttempt { - return self.reconnectionAttemptSubject; -} - -- (RACSignal *)reconnectionEstablished { - return self.reconnectionEstablishedSubject; -} - -- (void)connectionManagerDidConnect:(id)connectionManager { - [self.connectionEstablishedSubject sendNext:[RACUnit defaultUnit]]; -} - -- (void)connectionManagerDidTerminateConnection:(id)connectionManager { - [self.connectionTerminatedSubject sendNext:[RACUnit defaultUnit]]; -} - -- (void)connectionManager:(id)connectionManager didFailToConnect:(NSError *)error { - [self.failToConnectSubject sendNext:error]; -} - -- (void)connectionManager:(id)connectionManager didLostConnection:(NSError *)error { - [self.connectionLostSubject sendNext:error]; -} - -- (void)connectionManager:(id)connectionManager - willAttemptToReconnect:(NSUInteger)remainingReconnectionAttemps { - [self.reconnectionAttemptSubject sendNext:@(remainingReconnectionAttemps)]; -} - -- (void)connecitonManagerDidReconnect:(id)connectionManager { - [self.reconnectionEstablishedSubject sendNext:[RACUnit defaultUnit]]; -} - -@end diff --git a/WLXBluetoothDeviceReactiveExtensions/WLXReactiveDeviceDiscovererDelegate.h b/WLXBluetoothDeviceReactiveExtensions/WLXReactiveDeviceDiscovererDelegate.h deleted file mode 100644 index 2256606..0000000 --- a/WLXBluetoothDeviceReactiveExtensions/WLXReactiveDeviceDiscovererDelegate.h +++ /dev/null @@ -1,19 +0,0 @@ -// -// WLXReactiveDeviceDiscovererDelegate.h -// Pods -// -// Created by Guido Marucci Blas on 3/10/15. -// -// - -#import -#import -#import - -@interface WLXReactiveDeviceDiscovererDelegate : NSObject - -@property (nonatomic, readonly) RACSignal * startDiscoveringDevices; -@property (nonatomic, readonly) RACSignal * stopDiscoveringDevices; -@property (nonatomic, readonly) RACSignal * discoveredDevice; - -@end diff --git a/WLXBluetoothDeviceReactiveExtensions/WLXReactiveDeviceDiscovererDelegate.m b/WLXBluetoothDeviceReactiveExtensions/WLXReactiveDeviceDiscovererDelegate.m deleted file mode 100644 index e631a8d..0000000 --- a/WLXBluetoothDeviceReactiveExtensions/WLXReactiveDeviceDiscovererDelegate.m +++ /dev/null @@ -1,61 +0,0 @@ -// -// WLXReactiveDeviceDiscovererDelegate.m -// Pods -// -// Created by Guido Marucci Blas on 3/10/15. -// -// - -#import "WLXReactiveDeviceDiscovererDelegate.h" - -@interface WLXReactiveDeviceDiscovererDelegate () - -@property (nonatomic) RACSubject * startDiscoveringDevicesSubject; -@property (nonatomic) RACSubject * stopDiscoveringDevicesSubject; -@property (nonatomic) RACSubject * discoveredDeviceSubject; - -@end - -@implementation WLXReactiveDeviceDiscovererDelegate - -@dynamic startDiscoveringDevices; -@dynamic stopDiscoveringDevices; -@dynamic discoveredDevice; - -- (instancetype)init { - self = [super init]; - if (self) { - _startDiscoveringDevicesSubject = [RACSubject subject]; - _stopDiscoveringDevicesSubject = [RACSubject subject]; - _discoveredDeviceSubject = [RACSubject subject]; - } - return self; -} - -- (RACSignal *)startDiscoveringDevices { - return self.startDiscoveringDevicesSubject; -} - -- (RACSignal *)stopDiscoveringDevices { - return self.stopDiscoveringDevicesSubject; -} - -- (RACSignal *)discoveredDevice { - return self.discoveredDeviceSubject; -} - -#pragma mark - WLXDeviceDiscovererDelegate methods - -- (void)deviceDiscoverer:(id)discoverer startDiscoveringDevicesWithTimeout:(NSUInteger)timeout { - [self.startDiscoveringDevicesSubject sendNext:@(timeout)]; -} - -- (void)deviceDiscoverer:(id)discoverer discoveredDevice:(WLXDeviceDiscoveryData *)discoveryData { - [self.discoveredDeviceSubject sendNext:discoveryData]; -} - -- (void)deviceDiscovererStopDiscoveringDevices:(id)discoverer { - [self.stopDiscoveringDevicesSubject sendNext:[RACUnit defaultUnit]]; -} - -@end diff --git a/WLXBluetoothDeviceReactiveExtensions/WLXServiceManager+RACSignalSupport.h b/WLXBluetoothDeviceReactiveExtensions/WLXServiceManager+RACSignalSupport.h deleted file mode 100644 index 664be1c..0000000 --- a/WLXBluetoothDeviceReactiveExtensions/WLXServiceManager+RACSignalSupport.h +++ /dev/null @@ -1,29 +0,0 @@ -// -// WLXServiceManager+RACSignalSupport.h -// Pods -// -// Created by Guido Marucci Blas on 3/10/15. -// -// - -#import -#import -#import - -@interface WLXServiceManager (RACSignalSupport) - -#pragma mark - Reading & writing characteristic value - -- (RACSignal *)rac_readValueFromCharacteristic:(CBUUID *)characteristicUUID; - -- (RACSignal *)rac_writeValue:(NSData *)data toCharacteristic:(CBUUID *)characteristicUUID; - -#pragma mark - Handling characteristic notifications - -- (RACSignal *)rac_enableNotificationsForCharacteristic:(CBUUID *)characteristicUUID; - -- (RACSignal *)rac_disableNotificationsForCharacteristic:(CBUUID *)characteristicUUID; - -- (RACSignal *)rac_notificationsForCharacteristic:(CBUUID *)characteristicUUID; - -@end diff --git a/WLXBluetoothDeviceReactiveExtensions/WLXServiceManager+RACSignalSupport.m b/WLXBluetoothDeviceReactiveExtensions/WLXServiceManager+RACSignalSupport.m deleted file mode 100644 index 81b4537..0000000 --- a/WLXBluetoothDeviceReactiveExtensions/WLXServiceManager+RACSignalSupport.m +++ /dev/null @@ -1,85 +0,0 @@ -// -// WLXServiceManager+RACSignalSupport.m -// Pods -// -// Created by Guido Marucci Blas on 3/10/15. -// -// - -#import "WLXServiceManager+RACSignalSupport.h" - -@implementation WLXServiceManager (RACSignalSupport) - -#pragma mark - Reading & writing characteristic value - -- (RACSignal *)rac_readValueFromCharacteristic:(CBUUID *)characteristicUUID { - return [[RACSignal createSignal:^RACDisposable *(id subscriber) { - [self readValueFromCharacteristic:characteristicUUID usingBlock:^(NSError * error, NSData * data) { - if (error) { - [subscriber sendError:error]; - } else { - [subscriber sendNext:data]; - [subscriber sendCompleted]; - } - }]; - return nil; - }] replayLast]; -} - -- (RACSignal *)rac_writeValue:(NSData *)data toCharacteristic:(CBUUID *)characteristicUUID { - return [[RACSignal createSignal:^RACDisposable *(id subscriber) { - [self writeValue:data toCharacteristic:characteristicUUID usingBlock:^(NSError * error) { - if (error) { - [subscriber sendError:error]; - } else { - [subscriber sendCompleted]; - } - }]; - return nil; - }] replayLast]; -} - -#pragma mark - Handling characteristic notifications - -- (RACSignal *)rac_enableNotificationsForCharacteristic:(CBUUID *)characteristicUUID { - return [[RACSignal createSignal:^RACDisposable *(id subscriber) { - [self enableNotificationsForCharacteristic:characteristicUUID usingBlock:^(NSError * error) { - if (error) { - [subscriber sendError:error]; - } else { - [subscriber sendCompleted]; - } - }]; - return nil; - }] replayLast]; -} - -- (RACSignal *)rac_disableNotificationsForCharacteristic:(CBUUID *)characteristicUUID { - return [[RACSignal createSignal:^RACDisposable *(id subscriber) { - [self disableNotificationsForCharacteristic:characteristicUUID usingBlock:^(NSError * error) { - if (error) { - [subscriber sendError:error]; - } else { - [subscriber sendCompleted]; - } - }]; - return nil; - }] replayLast]; -} - -- (RACSignal *)rac_notificationsForCharacteristic:(CBUUID *)characteristicUUID { - return [RACSignal createSignal:^RACDisposable *(id subscriber) { - id observer = [self addObserverForCharacteristic:characteristicUUID usingBlock:^(NSError * error, NSData * data) { - if (error) { - [subscriber sendError:error]; - } else { - [subscriber sendNext:data]; - } - }]; - return [RACDisposable disposableWithBlock:^{ - [self removeObserver:observer]; - }]; - }]; -} - -@end diff --git a/WLXBluetoothDeviceReactiveExtensions/WLXServicesManager+RACSignalSupport.h b/WLXBluetoothDeviceReactiveExtensions/WLXServicesManager+RACSignalSupport.h deleted file mode 100644 index 47f9125..0000000 --- a/WLXBluetoothDeviceReactiveExtensions/WLXServicesManager+RACSignalSupport.h +++ /dev/null @@ -1,17 +0,0 @@ -// -// WLXServicesManager+RACSignalSupport.h -// Pods -// -// Created by Guido Marucci Blas on 3/10/15. -// -// - -#import -#import -#import - -@interface WLXServicesManager (RACSignalSupport) - -- (RACSignal *)rac_discoverServices; - -@end diff --git a/WLXBluetoothDeviceReactiveExtensions/WLXServicesManager+RACSignalSupport.m b/WLXBluetoothDeviceReactiveExtensions/WLXServicesManager+RACSignalSupport.m deleted file mode 100644 index 1e29d9f..0000000 --- a/WLXBluetoothDeviceReactiveExtensions/WLXServicesManager+RACSignalSupport.m +++ /dev/null @@ -1,27 +0,0 @@ -// -// WLXServicesManager+RACSignalSupport.m -// Pods -// -// Created by Guido Marucci Blas on 3/10/15. -// -// - -#import "WLXServicesManager+RACSignalSupport.h" - -@implementation WLXServicesManager (RACSignalSupport) - -- (RACSignal *)rac_discoverServices { - return [[RACSignal createSignal:^RACDisposable *(id subscriber) { - [self discoverServicesUsingBlock:^(NSError * error) { - if (error) { - [subscriber sendError:error]; - } else { - [subscriber sendCompleted]; - } - }]; - return nil; - }] replayLazily]; -} - - -@end diff --git a/WLXBluetoothDeviceReactiveExtensionsTests/Info.plist b/WLXBluetoothDeviceReactiveExtensionsTests/Info.plist deleted file mode 100644 index 8a1fb5d..0000000 --- a/WLXBluetoothDeviceReactiveExtensionsTests/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - ar.com.wolox.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - - diff --git a/WLXBluetoothDeviceReactiveExtensionsTests/SpecHelper.h b/WLXBluetoothDeviceReactiveExtensionsTests/SpecHelper.h deleted file mode 100644 index bddbe65..0000000 --- a/WLXBluetoothDeviceReactiveExtensionsTests/SpecHelper.h +++ /dev/null @@ -1,29 +0,0 @@ -// -// SpecHelper.h -// WLXBluetoothDevice -// -// Created by Guido Marucci Blas on 5/25/15. -// Copyright (c) 2015 Wolox. All rights reserved. -// - -#ifndef WLXBluetoothDeviceReactiveExtensions_SpecHelper_h -#define WLXBluetoothDeviceReactiveExtensions_SpecHelper_h - -#ifndef WLXBluetoothDevice_SpecHelper_h -#define WLXBluetoothDevice_SpecHelper_h - -#import -#import -#import - -#define EXP_SHORTHAND -#import -#import -#define HC_SHORTHAND -#import -#define MOCKITO_SHORTHAND -#import - -#endif - -#endif diff --git a/WLXBluetoothDeviceReactiveExtensionsTests/SwiftFile.swift b/WLXBluetoothDeviceReactiveExtensionsTests/SwiftFile.swift deleted file mode 100644 index bcbad71..0000000 --- a/WLXBluetoothDeviceReactiveExtensionsTests/SwiftFile.swift +++ /dev/null @@ -1,9 +0,0 @@ -// -// SwiftFile.swift -// WLXBluetoothDevice -// -// Created by Guido Marucci Blas on 5/25/15. -// Copyright (c) 2015 Wolox. All rights reserved. -// - -import Foundation diff --git a/WLXBluetoothDeviceReactiveExtensionsTests/WLXBluetoothDeviceReactiveExtensionsTests-Bridging-Header.h b/WLXBluetoothDeviceReactiveExtensionsTests/WLXBluetoothDeviceReactiveExtensionsTests-Bridging-Header.h deleted file mode 100644 index 1b2cb5d..0000000 --- a/WLXBluetoothDeviceReactiveExtensionsTests/WLXBluetoothDeviceReactiveExtensionsTests-Bridging-Header.h +++ /dev/null @@ -1,4 +0,0 @@ -// -// Use this file to import your target's public headers that you would like to expose to Swift. -// - diff --git a/WLXBluetoothDeviceReactiveExtensionsTests/WLXReactiveConnectionManagerDelegateSpec.m b/WLXBluetoothDeviceReactiveExtensionsTests/WLXReactiveConnectionManagerDelegateSpec.m deleted file mode 100644 index 92ace55..0000000 --- a/WLXBluetoothDeviceReactiveExtensionsTests/WLXReactiveConnectionManagerDelegateSpec.m +++ /dev/null @@ -1,131 +0,0 @@ -// -// WLXReactiveConnectionManagerDelegateSpec.m -// WLXBluetoothDevice -// -// Created by Guido Marucci Blas on 3/10/15. -// Copyright (c) 2015 Guido Marucci Blas. All rights reserved. -// -#import "SpecHelper.h" - -SpecBegin(WLXReactiveConnectionManagerDelegate) - -__block WLXReactiveConnectionManagerDelegate * delegate; -__block id connectionManager; - -beforeEach(^{ - connectionManager = mockProtocol(@protocol(WLXConnectionManager)); - delegate = [[WLXReactiveConnectionManagerDelegate alloc] init]; -}); - -describe(@"#connectionEstablished", ^{ - - context(@"when the connection manager establishes a new connection", ^{ - - it(@"sends a RACUnit value", ^{ waitUntil(^(DoneCallback done) { - [delegate.connectionEstablished subscribeNext:^(id x) { - done(); - }]; - [delegate connectionManagerDidConnect:connectionManager]; - });}); - - }); - -}); - -describe(@"#connectionTerminated", ^{ - - context(@"when the connection manager terminates a connections", ^{ - - it(@"sends a RACUnit value", ^{ waitUntil(^(DoneCallback done) { - [delegate.connectionTerminated subscribeNext:^(id x) { - done(); - }]; - [delegate connectionManagerDidTerminateConnection:connectionManager]; - });}); - - }); - -}); - -describe(@"#reconnectionEstablished", ^{ - - context(@"when the connection manager reconnects", ^{ - - it(@"sends a RACUnit value", ^{ waitUntil(^(DoneCallback done) { - [delegate.reconnectionEstablished subscribeNext:^(id x) { - done(); - }]; - [delegate connecitonManagerDidReconnect:connectionManager]; - });}); - - }); - -}); - -describe(@"#failToConnect", ^{ - - context(@"when the connection manager fails to connect", ^{ - - __block NSError * error; - - beforeEach(^{ - error = mock([NSError class]); - }); - - it(@"sends the error", ^{ waitUntil(^(DoneCallback done) { - [delegate.failToConnect subscribeNext:^(NSError * anError) { - expect(anError).to.equal(error); - done(); - }]; - [delegate connectionManager:connectionManager didFailToConnect:error]; - });}); - - }); - -}); - -describe(@"#connectionLost", ^{ - - context(@"when the connection is lost", ^{ - - __block NSError * error; - - beforeEach(^{ - error = mock([NSError class]); - }); - - it(@"sends the error", ^{ waitUntil(^(DoneCallback done) { - [delegate.connectionLost subscribeNext:^(NSError * anError) { - expect(anError).to.equal(error); - done(); - }]; - [delegate connectionManager:connectionManager didLostConnection:error]; - });}); - - }); - -}); - -describe(@"#reconnectionAttempt", ^{ - - context(@"when the connection manager will attempt to reconnect", ^{ - - __block NSUInteger remainingReconnectionAttemps; - - beforeEach(^{ - remainingReconnectionAttemps = 2; - }); - - it(@"sends the remaining reconnection attemps", ^{ waitUntil(^(DoneCallback done) { - [delegate.reconnectionAttempt subscribeNext:^(NSNumber * remaining) { - expect(remaining.unsignedIntegerValue).to.equal(remainingReconnectionAttemps); - done(); - }]; - [delegate connectionManager:connectionManager willAttemptToReconnect:remainingReconnectionAttemps]; - });}); - - }); - -}); - -SpecEnd \ No newline at end of file diff --git a/WLXBluetoothDeviceReactiveExtensionsTests/WLXReactiveDeviceDiscovererDelegateSpec.m b/WLXBluetoothDeviceReactiveExtensionsTests/WLXReactiveDeviceDiscovererDelegateSpec.m deleted file mode 100644 index a20a07e..0000000 --- a/WLXBluetoothDeviceReactiveExtensionsTests/WLXReactiveDeviceDiscovererDelegateSpec.m +++ /dev/null @@ -1,77 +0,0 @@ -// -// WLXReactiveDeviceDiscovererDelegateSpec.m -// WLXBluetoothDevice -// -// Created by Guido Marucci Blas on 3/10/15. -// Copyright (c) 2015 Guido Marucci Blas. All rights reserved. -// -#import "SpecHelper.h" - -SpecBegin(WLXReactiveDeviceDiscovererDelegate) - -__block WLXReactiveDeviceDiscovererDelegate * delegate; -__block id discoverer; - -beforeEach(^{ - delegate = [[WLXReactiveDeviceDiscovererDelegate alloc] init]; -}); - -describe(@"#startDiscoveringDevices", ^{ - - __block NSUInteger timeout; - - beforeEach(^{ - timeout = 10; - discoverer = mockProtocol(@protocol(WLXDeviceDiscoverer)); - }); - - context(@"when the device discoverer starts discovering devices", ^{ - - it(@"sends the timeout use to discover devices", ^{ - [delegate.startDiscoveringDevices subscribeNext:^(NSNumber * aTimeout) { - expect(aTimeout.unsignedIntegerValue).to.equal(timeout); - }]; - [delegate deviceDiscoverer:discoverer startDiscoveringDevicesWithTimeout:timeout]; - }); - - }); - -}); - -describe(@"#stopDiscoveringDevices", ^{ - - context(@"when the device discoverer stops discovering devices", ^{ - - it(@"sends a RACUnit", ^{ waitUntil(^(DoneCallback done) { - [delegate.stopDiscoveringDevices subscribeNext:^(id x) { - done(); - }]; - [delegate deviceDiscovererStopDiscoveringDevices:discoverer]; - });}); - - }); - -}); - -describe(@"#discoveredDevice", ^{ - - context(@"when the device discoverer discovers a new device", ^{ - - __block WLXDeviceDiscoveryData * discoveryData; - - beforeEach(^{ - discoveryData = mock([WLXDeviceDiscoveryData class]); - }); - - it(@"sends the discovery data object", ^{ - [delegate.discoveredDevice subscribeNext:^(WLXDeviceDiscoveryData * aDiscoveryData) { - expect(aDiscoveryData).to.equal(discoveryData); - }]; - [delegate deviceDiscoverer:discoverer discoveredDevice:discoveryData]; - }); - - }); - -}); - -SpecEnd diff --git a/WLXBluetoothDeviceReactiveExtensionsTests/WLXServiceManager+RACSignalSupportSpec.m b/WLXBluetoothDeviceReactiveExtensionsTests/WLXServiceManager+RACSignalSupportSpec.m deleted file mode 100644 index 01227f8..0000000 --- a/WLXBluetoothDeviceReactiveExtensionsTests/WLXServiceManager+RACSignalSupportSpec.m +++ /dev/null @@ -1,240 +0,0 @@ -// -// WLXServiceManager+RACSignalSupportSpec.m -// WLXBluetoothDevice -// -// Created by Guido Marucci Blas on 3/11/15. -// Copyright (c) 2015 Guido Marucci Blas. All rights reserved. -// -#import "SpecHelper.h" - -#define STUB_ASYNC_EXECUTOR(e) \ - do { \ - MKTArgumentCaptor * argument = [[MKTArgumentCaptor alloc] init]; \ - [MKTVerify(asyncExecutor) executeBlock:argument.capture forCharacteristic:characteristicUUID]; \ - void(^executeBlock)(NSError *, CBCharacteristic *) = argument.value; \ - executeBlock(e, characteristic); \ - } while (0) - -SpecBegin(WLXServiceManager_RACSignalSupport) - -__block CBPeripheral * peripheral; -__block CBService * service; -__block WLXCharacteristicAsyncExecutor * asyncExecutor; -__block CBCharacteristic * characteristic; -__block CBUUID * characteristicUUID; -__block WLXServiceManager * serviceManager; -__block NSNotificationCenter * notificationCenter; - -beforeEach(^{ - notificationCenter = [NSNotificationCenter defaultCenter]; - characteristicUUID = [CBUUID UUIDWithString:@"68753A44-4D6F-1226-9C60-0050E4C00067"]; - characteristic = mock([CBCharacteristic class]); - peripheral = mock([CBPeripheral class]); - service = mock([CBService class]); - asyncExecutor = mock([WLXCharacteristicAsyncExecutor class]); - serviceManager = [[WLXServiceManager alloc] initWithPeripheral:peripheral - service:service - notificationCenter:notificationCenter]; - serviceManager.asyncExecutor = asyncExecutor; - [MKTGiven([characteristic UUID]) willReturn:characteristicUUID]; - -}); - -describe(@"#rac_readValueFromCharacteristic:", ^{ - - context(@"when the value is successfully read", ^{ - - __block NSData * data; - - beforeEach(^{ - data = [NSMutableData data]; - [MKTGiven(characteristic.value) willReturn:data]; - }); - - it(@"returns a signal that sends the value", ^{ waitUntil(^(DoneCallback done) { - [[serviceManager rac_readValueFromCharacteristic:characteristicUUID] subscribeNext:^(NSData * value) { - expect(value).to.equal(data); - done(); - }]; - - STUB_ASYNC_EXECUTOR(nil); - [serviceManager didUpdateValueForCharacteristic:characteristic error:nil]; - });}); - - }); - - context(@"when the value could not be read", ^{ - - __block NSError * error; - - beforeEach(^{ - error = [NSError errorWithDomain:@"" code:1 userInfo:nil]; - }); - - it(@"returns a signal that errors", ^{ waitUntil(^(DoneCallback done) { - [[serviceManager rac_readValueFromCharacteristic:characteristicUUID] subscribeError:^(NSError * anError) { - expect(anError).to.equal(error); - done(); - }]; - STUB_ASYNC_EXECUTOR(error); - [serviceManager didUpdateValueForCharacteristic:characteristic error:error]; - });}); - - }); - -}); - -describe(@"#rac_writeValue:toCharacteristic:", ^{ - - __block NSData * data; - - beforeEach(^{ - data = [NSMutableData data]; - }); - - context(@"when the value is successfully writtern", ^{ - - it(@"returns a signal that completes", ^{ waitUntil(^(DoneCallback done) { - [[serviceManager rac_writeValue:data toCharacteristic:characteristicUUID] subscribeCompleted:^{ - done(); - }]; - STUB_ASYNC_EXECUTOR(nil); - [serviceManager didWriteValueForCharacteristic:characteristic error:nil]; - });}); - - }); - - context(@"when the value could not be written", ^{ - - __block NSError * error; - - beforeEach(^{ - error = [NSError errorWithDomain:@"" code:1 userInfo:nil]; - }); - - it(@"returns a signal that errors", ^{ waitUntil(^(DoneCallback done) { - [[serviceManager rac_writeValue:data toCharacteristic:characteristicUUID] subscribeError:^(NSError * anError) { - expect(anError).to.equal(error); - done(); - }]; - STUB_ASYNC_EXECUTOR(error); - [serviceManager didWriteValueForCharacteristic:characteristic error:error]; - });}); - - }); - -}); - -describe(@"#rac_enableNotificationsForCharacteristic:", ^{ - - context(@"when the notification are successfully enabled", ^{ - - it(@"returns a signal that complets", ^{ waitUntil(^(DoneCallback done) { - [[serviceManager rac_enableNotificationsForCharacteristic:characteristicUUID] subscribeCompleted:^{ - done(); - }]; - STUB_ASYNC_EXECUTOR(nil); - [serviceManager didUpdateNotificationStateForCharacteristic:characteristic error:nil]; - });}); - - }); - - context(@"when the notification could not be enabled", ^{ - - __block NSError * error; - - beforeEach(^{ - error = [NSError errorWithDomain:@"" code:1 userInfo:nil]; - }); - - it(@"returns a signal that errors", ^{ waitUntil(^(DoneCallback done) { - [[serviceManager rac_enableNotificationsForCharacteristic:characteristicUUID] subscribeError:^(NSError * anError) { - expect(anError).to.equal(error); - done(); - }]; - STUB_ASYNC_EXECUTOR(nil); - [serviceManager didUpdateNotificationStateForCharacteristic:characteristic error:error]; - });}); - - }); - -}); - -describe(@"#rac_disableNotificationsForCharacteristic:", ^{ - - context(@"when the notification are successfully disabled", ^{ - - it(@"returns a signal that completes", ^{ waitUntil(^(DoneCallback done) { - [[serviceManager rac_disableNotificationsForCharacteristic:characteristicUUID] subscribeCompleted:^{ - done(); - }]; - STUB_ASYNC_EXECUTOR(nil); - [serviceManager didUpdateNotificationStateForCharacteristic:characteristic error:nil]; - });}); - - }); - - context(@"when the notification could not be disabled", ^{ - - __block NSError * error; - - beforeEach(^{ - error = [NSError errorWithDomain:@"" code:1 userInfo:nil]; - }); - - it(@"returns a signal that errors", ^{ waitUntil(^(DoneCallback done) { - [[serviceManager rac_disableNotificationsForCharacteristic:characteristicUUID] subscribeError:^(NSError * anError) { - expect(anError).to.equal(error); - done(); - }]; - STUB_ASYNC_EXECUTOR(error); - [serviceManager didUpdateNotificationStateForCharacteristic:characteristic error:error]; - });}); - - }); - -}); - -describe(@"#rac_notificationsForCharacteristic:", ^{ - - __block NSData * data; - - beforeEach(^{ - data = [NSMutableData data]; - [MKTGiven(characteristic.value) willReturn:data]; - }); - - context(@"when an update is received", ^{ - - it(@"sends the received value to the signal", ^{ waitUntil(^(DoneCallback done) { - [[serviceManager rac_notificationsForCharacteristic:characteristicUUID] subscribeNext:^(NSData * value) { - expect(value).to.equal(data); - done(); - }]; - [serviceManager didUpdateValueForCharacteristic:characteristic error:nil]; - });}); - - }); - - context(@"when an error is received", ^{ - - __block NSError * error; - - beforeEach(^{ - error = [NSError errorWithDomain:@"" code:1 userInfo:nil]; - }); - - it(@"sends the received value to the signal", ^{ waitUntil(^(DoneCallback done) { - [[serviceManager rac_notificationsForCharacteristic:characteristicUUID] subscribeError:^(NSError * anError) { - expect(anError).to.equal(error); - done(); - }]; - [serviceManager didUpdateValueForCharacteristic:characteristic error:error]; - });}); - - }); - -}); - - -SpecEnd \ No newline at end of file diff --git a/WLXBluetoothDeviceReactiveExtensionsTests/WLXServicesManager+RACSignalSupportSpec.m b/WLXBluetoothDeviceReactiveExtensionsTests/WLXServicesManager+RACSignalSupportSpec.m deleted file mode 100644 index f6a5ba8..0000000 --- a/WLXBluetoothDeviceReactiveExtensionsTests/WLXServicesManager+RACSignalSupportSpec.m +++ /dev/null @@ -1,61 +0,0 @@ -// -// WLXServicesManager+RACSignalSupportSpec.m -// WLXBluetoothDevice -// -// Created by Guido Marucci Blas on 3/11/15. -// Copyright (c) 2015 Guido Marucci Blas. All rights reserved. -// -#import "SpecHelper.h" - -SpecBegin(WLXServicesManager_RACSignalSupport) - -__block CBPeripheral * peripheral; -__block WLXServicesManager * servicesManager; - -beforeEach(^{ - NSNotificationCenter * notificationCenter = [NSNotificationCenter defaultCenter]; - peripheral = mock([CBPeripheral class]); - servicesManager = [[WLXServicesManager alloc] initWithPeripheral:peripheral notificationCenter:notificationCenter]; -}); - -describe(@"#rac_discoverServices", ^{ - - __block RACSignal * signal; - - afterEach(^{ - signal = nil; - servicesManager = nil; - }); - - context(@"when the services discovery process succeeds", ^{ - - it(@"returns a signal that complets", ^{ waitUntil(^(DoneCallback done) { - [[servicesManager rac_discoverServices] subscribeCompleted:^{ - done(); - }]; - [servicesManager peripheral:peripheral didDiscoverServices:nil]; - });}); - - }); - - context(@"when the services discovery process fails", ^{ - - __block NSError * error; - - beforeEach(^{ - error = [NSError errorWithDomain:@"" code:0 userInfo:nil]; - }); - - it(@"returns a signal that errors", ^{ waitUntil(^(DoneCallback done) { - [[servicesManager rac_discoverServices] subscribeError:^(NSError * anError) { - expect(anError).to.equal(error); - done(); - }]; - [servicesManager peripheral:peripheral didDiscoverServices:error]; - });}); - - }); - -}); - -SpecEnd \ No newline at end of file diff --git a/WLXBluetoothDeviceTests/Info.plist b/WLXBluetoothDeviceTests/Info.plist index 8a1fb5d..ba72822 100644 --- a/WLXBluetoothDeviceTests/Info.plist +++ b/WLXBluetoothDeviceTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier - ar.com.wolox.$(PRODUCT_NAME:rfc1034identifier) + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/WLXBluetoothDeviceTests/WLXCharacteristicAsyncExecutorSpec.m b/WLXBluetoothDeviceTests/WLXCharacteristicAsyncExecutorSpec.m index 08dcdb4..6c3f278 100644 --- a/WLXBluetoothDeviceTests/WLXCharacteristicAsyncExecutorSpec.m +++ b/WLXBluetoothDeviceTests/WLXCharacteristicAsyncExecutorSpec.m @@ -90,7 +90,7 @@ [MKTVerify(mockLocator) discoverCharacteristics:@[characteristicUUID]]; }); - it(@"increments the amount of pending operations", ^{ + it(@"increments the amount of pending operations", ^{ NSUInteger pendingOperations = [asyncExecutor pendingOperationsCountForCharacteristic:characteristicUUID]; [asyncExecutor executeBlock:^(NSError * error, CBCharacteristic * characteristic) { @@ -114,14 +114,15 @@ [MKTGiven(mockLocator.characteristics) willReturn:@[mockCharacteristic]]; }); - it(@"executes the pending operations", ^{ + it(@"executes the pending operations", ^{ waitUntil(^(DoneCallback done) { block = ^(NSError * error, CBCharacteristic * characteristic) { expect(error).to.beNil; expect(characteristic).to.equal(mockCharacteristic); + done(); }; [asyncExecutor executeBlock:block forCharacteristic:characteristicUUID]; [asyncExecutor flushPendingOperations]; - }); + });}); }); @@ -138,14 +139,16 @@ [MKTGiven(mockLocator.characteristics) willReturn:@[mockCharacteristic]]; }); - it(@"executes the pending operations", ^{ + it(@"executes the pending operations", ^{ waitUntil(^(DoneCallback done) { block = ^(NSError * error, CBCharacteristic * characteristic) { expect(error).notTo.beNil; - expect(characteristic).to.beNil; }; + expect(characteristic).to.beNil; + done(); + }; [asyncExecutor executeBlock:block forCharacteristic:characteristicUUID]; NSError * error = [NSError errorWithDomain:@"foo" code:0 userInfo:nil]; [asyncExecutor flushPendingOperationsWithError:error]; - }); + });}); }); diff --git a/script/test b/script/test index 20fdb33..4a84477 100755 --- a/script/test +++ b/script/test @@ -14,7 +14,7 @@ run_tests () else test_command="$test_command -workspace $XCODE_WORKSPACE" fi - test_command="$test_command -sdk iphonesimulator clean build test -configuration Debug" + test_command="$test_command -sdk iphonesimulator -destination \"platform=iOS Simulator,OS=latest,name=iPhone 6\" clean build test -configuration Debug" if [ ! -z "$CIRCLE_ARTIFACTS" ] then test_command="$test_command | tee $CIRCLE_ARTIFACTS/xcode_raw.log"