├── .gitattributes ├── .gitignore ├── .travis.yml ├── CONTRIBUTING.md ├── DelegateDispatch ├── S2MDelegateDispatcher.h ├── S2MDelegateDispatcher.m ├── S2MProtocolIntrospector.h └── S2MProtocolIntrospector.m ├── Example ├── .gitignore ├── Podfile ├── Podfile.lock ├── Pods │ ├── Headers │ │ ├── Private │ │ │ ├── Kiwi │ │ │ │ ├── KWAfterAllNode.h │ │ │ │ ├── KWAfterEachNode.h │ │ │ │ ├── KWAny.h │ │ │ │ ├── KWAsyncVerifier.h │ │ │ │ ├── KWBeBetweenMatcher.h │ │ │ │ ├── KWBeEmptyMatcher.h │ │ │ │ ├── KWBeIdenticalToMatcher.h │ │ │ │ ├── KWBeKindOfClassMatcher.h │ │ │ │ ├── KWBeMemberOfClassMatcher.h │ │ │ │ ├── KWBeSubclassOfClassMatcher.h │ │ │ │ ├── KWBeTrueMatcher.h │ │ │ │ ├── KWBeWithinMatcher.h │ │ │ │ ├── KWBeZeroMatcher.h │ │ │ │ ├── KWBeforeAllNode.h │ │ │ │ ├── KWBeforeEachNode.h │ │ │ │ ├── KWBlock.h │ │ │ │ ├── KWBlockNode.h │ │ │ │ ├── KWBlockRaiseMatcher.h │ │ │ │ ├── KWCallSite.h │ │ │ │ ├── KWCaptureSpy.h │ │ │ │ ├── KWChangeMatcher.h │ │ │ │ ├── KWConformToProtocolMatcher.h │ │ │ │ ├── KWContainMatcher.h │ │ │ │ ├── KWContainStringMatcher.h │ │ │ │ ├── KWContextNode.h │ │ │ │ ├── KWCountType.h │ │ │ │ ├── KWDeviceInfo.h │ │ │ │ ├── KWEqualMatcher.h │ │ │ │ ├── KWExample.h │ │ │ │ ├── KWExampleDelegate.h │ │ │ │ ├── KWExampleNode.h │ │ │ │ ├── KWExampleNodeVisitor.h │ │ │ │ ├── KWExampleSuite.h │ │ │ │ ├── KWExampleSuiteBuilder.h │ │ │ │ ├── KWExistVerifier.h │ │ │ │ ├── KWExpectationType.h │ │ │ │ ├── KWFailure.h │ │ │ │ ├── KWFormatter.h │ │ │ │ ├── KWFutureObject.h │ │ │ │ ├── KWGenericMatchEvaluator.h │ │ │ │ ├── KWGenericMatcher.h │ │ │ │ ├── KWGenericMatchingAdditions.h │ │ │ │ ├── KWHaveMatcher.h │ │ │ │ ├── KWHaveValueMatcher.h │ │ │ │ ├── KWInequalityMatcher.h │ │ │ │ ├── KWIntercept.h │ │ │ │ ├── KWInvocationCapturer.h │ │ │ │ ├── KWItNode.h │ │ │ │ ├── KWLet.h │ │ │ │ ├── KWLetNode.h │ │ │ │ ├── KWMatchVerifier.h │ │ │ │ ├── KWMatcher.h │ │ │ │ ├── KWMatcherFactory.h │ │ │ │ ├── KWMatchers.h │ │ │ │ ├── KWMatching.h │ │ │ │ ├── KWMessagePattern.h │ │ │ │ ├── KWMessageSpying.h │ │ │ │ ├── KWMessageTracker.h │ │ │ │ ├── KWMock.h │ │ │ │ ├── KWNilMatcher.h │ │ │ │ ├── KWNotificationMatcher.h │ │ │ │ ├── KWNull.h │ │ │ │ ├── KWObjCUtilities.h │ │ │ │ ├── KWPendingNode.h │ │ │ │ ├── KWProbe.h │ │ │ │ ├── KWProbePoller.h │ │ │ │ ├── KWReceiveMatcher.h │ │ │ │ ├── KWRegisterMatchersNode.h │ │ │ │ ├── KWRegularExpressionPatternMatcher.h │ │ │ │ ├── KWReporting.h │ │ │ │ ├── KWRespondToSelectorMatcher.h │ │ │ │ ├── KWSpec.h │ │ │ │ ├── KWStringContainsMatcher.h │ │ │ │ ├── KWStringPrefixMatcher.h │ │ │ │ ├── KWStringUtilities.h │ │ │ │ ├── KWStub.h │ │ │ │ ├── KWSuiteConfigurationBase.h │ │ │ │ ├── KWSymbolicator.h │ │ │ │ ├── KWUserDefinedMatcher.h │ │ │ │ ├── KWValue.h │ │ │ │ ├── KWVerifying.h │ │ │ │ ├── KWWorkarounds.h │ │ │ │ ├── Kiwi.h │ │ │ │ ├── KiwiBlockMacros.h │ │ │ │ ├── KiwiConfiguration.h │ │ │ │ ├── KiwiMacros.h │ │ │ │ ├── NSInvocation+KiwiAdditions.h │ │ │ │ ├── NSInvocation+OCMAdditions.h │ │ │ │ ├── NSMethodSignature+KiwiAdditions.h │ │ │ │ ├── NSNumber+KiwiAdditions.h │ │ │ │ ├── NSObject+KiwiMockAdditions.h │ │ │ │ ├── NSObject+KiwiSpyAdditions.h │ │ │ │ ├── NSObject+KiwiStubAdditions.h │ │ │ │ ├── NSObject+KiwiVerifierAdditions.h │ │ │ │ ├── NSProxy+KiwiVerifierAdditions.h │ │ │ │ └── NSValue+KiwiAdditions.h │ │ │ └── S2MToolbox │ │ │ │ ├── KWSpec+S2MWaitFor.h │ │ │ │ ├── NSError+S2MErrorHandling.h │ │ │ │ ├── NSNotification+S2MKeyboard.h │ │ │ │ ├── NSString+S2MMD5.h │ │ │ │ ├── NSString+S2MNotificationHelper.h │ │ │ │ ├── NSString+S2MRegExValidation.h │ │ │ │ ├── S2MCalloutAnnotation.h │ │ │ │ ├── S2MDelegateDispatcher.h │ │ │ │ ├── S2MErrorAlertViewDelegate.h │ │ │ │ ├── S2MErrorHandler.h │ │ │ │ ├── S2MHockeyHandler.h │ │ │ │ ├── S2MNotificationHelper.h │ │ │ │ ├── S2MProtocolIntrospector.h │ │ │ │ ├── S2MQRViewController.h │ │ │ │ ├── S2MRefreshControl.h │ │ │ │ ├── S2MShopFinderController.h │ │ │ │ ├── UIBarButtonItem+S2MAdditions.h │ │ │ │ ├── UILocalNotification+S2MNotificationHelper.h │ │ │ │ ├── UIView+S2MAdditions.h │ │ │ │ └── UIView+S2MAutolayout.h │ │ └── Public │ │ │ ├── HockeySDK │ │ │ └── HockeySDK │ │ │ │ ├── BITAuthenticator.h │ │ │ │ ├── BITCrashAttachment.h │ │ │ │ ├── BITCrashDetails.h │ │ │ │ ├── BITCrashManager.h │ │ │ │ ├── BITCrashManagerDelegate.h │ │ │ │ ├── BITCrashMetaData.h │ │ │ │ ├── BITFeedbackActivity.h │ │ │ │ ├── BITFeedbackComposeViewController.h │ │ │ │ ├── BITFeedbackComposeViewControllerDelegate.h │ │ │ │ ├── BITFeedbackListViewController.h │ │ │ │ ├── BITFeedbackManager.h │ │ │ │ ├── BITFeedbackManagerDelegate.h │ │ │ │ ├── BITHockeyAttachment.h │ │ │ │ ├── BITHockeyBaseManager.h │ │ │ │ ├── BITHockeyBaseViewController.h │ │ │ │ ├── BITHockeyManager.h │ │ │ │ ├── BITHockeyManagerDelegate.h │ │ │ │ ├── BITStoreUpdateManager.h │ │ │ │ ├── BITStoreUpdateManagerDelegate.h │ │ │ │ ├── BITUpdateManager.h │ │ │ │ ├── BITUpdateManagerDelegate.h │ │ │ │ ├── BITUpdateViewController.h │ │ │ │ ├── HockeySDK.h │ │ │ │ └── HockeySDKFeatureConfig.h │ │ │ ├── Kiwi │ │ │ ├── KWAfterAllNode.h │ │ │ ├── KWAfterEachNode.h │ │ │ ├── KWAny.h │ │ │ ├── KWAsyncVerifier.h │ │ │ ├── KWBeBetweenMatcher.h │ │ │ ├── KWBeEmptyMatcher.h │ │ │ ├── KWBeIdenticalToMatcher.h │ │ │ ├── KWBeKindOfClassMatcher.h │ │ │ ├── KWBeMemberOfClassMatcher.h │ │ │ ├── KWBeSubclassOfClassMatcher.h │ │ │ ├── KWBeTrueMatcher.h │ │ │ ├── KWBeWithinMatcher.h │ │ │ ├── KWBeZeroMatcher.h │ │ │ ├── KWBeforeAllNode.h │ │ │ ├── KWBeforeEachNode.h │ │ │ ├── KWBlock.h │ │ │ ├── KWBlockNode.h │ │ │ ├── KWBlockRaiseMatcher.h │ │ │ ├── KWCallSite.h │ │ │ ├── KWCaptureSpy.h │ │ │ ├── KWChangeMatcher.h │ │ │ ├── KWConformToProtocolMatcher.h │ │ │ ├── KWContainMatcher.h │ │ │ ├── KWContainStringMatcher.h │ │ │ ├── KWContextNode.h │ │ │ ├── KWCountType.h │ │ │ ├── KWDeviceInfo.h │ │ │ ├── KWEqualMatcher.h │ │ │ ├── KWExample.h │ │ │ ├── KWExampleDelegate.h │ │ │ ├── KWExampleNode.h │ │ │ ├── KWExampleNodeVisitor.h │ │ │ ├── KWExampleSuite.h │ │ │ ├── KWExampleSuiteBuilder.h │ │ │ ├── KWExistVerifier.h │ │ │ ├── KWExpectationType.h │ │ │ ├── KWFailure.h │ │ │ ├── KWFormatter.h │ │ │ ├── KWFutureObject.h │ │ │ ├── KWGenericMatchEvaluator.h │ │ │ ├── KWGenericMatcher.h │ │ │ ├── KWGenericMatchingAdditions.h │ │ │ ├── KWHaveMatcher.h │ │ │ ├── KWHaveValueMatcher.h │ │ │ ├── KWInequalityMatcher.h │ │ │ ├── KWIntercept.h │ │ │ ├── KWInvocationCapturer.h │ │ │ ├── KWItNode.h │ │ │ ├── KWLet.h │ │ │ ├── KWLetNode.h │ │ │ ├── KWMatchVerifier.h │ │ │ ├── KWMatcher.h │ │ │ ├── KWMatcherFactory.h │ │ │ ├── KWMatchers.h │ │ │ ├── KWMatching.h │ │ │ ├── KWMessagePattern.h │ │ │ ├── KWMessageSpying.h │ │ │ ├── KWMessageTracker.h │ │ │ ├── KWMock.h │ │ │ ├── KWNilMatcher.h │ │ │ ├── KWNotificationMatcher.h │ │ │ ├── KWNull.h │ │ │ ├── KWObjCUtilities.h │ │ │ ├── KWPendingNode.h │ │ │ ├── KWProbe.h │ │ │ ├── KWProbePoller.h │ │ │ ├── KWReceiveMatcher.h │ │ │ ├── KWRegisterMatchersNode.h │ │ │ ├── KWRegularExpressionPatternMatcher.h │ │ │ ├── KWReporting.h │ │ │ ├── KWRespondToSelectorMatcher.h │ │ │ ├── KWSpec.h │ │ │ ├── KWStringContainsMatcher.h │ │ │ ├── KWStringPrefixMatcher.h │ │ │ ├── KWStringUtilities.h │ │ │ ├── KWStub.h │ │ │ ├── KWSuiteConfigurationBase.h │ │ │ ├── KWSymbolicator.h │ │ │ ├── KWUserDefinedMatcher.h │ │ │ ├── KWValue.h │ │ │ ├── KWVerifying.h │ │ │ ├── KWWorkarounds.h │ │ │ ├── Kiwi.h │ │ │ ├── KiwiBlockMacros.h │ │ │ ├── KiwiConfiguration.h │ │ │ ├── KiwiMacros.h │ │ │ ├── NSInvocation+KiwiAdditions.h │ │ │ ├── NSInvocation+OCMAdditions.h │ │ │ ├── NSMethodSignature+KiwiAdditions.h │ │ │ ├── NSNumber+KiwiAdditions.h │ │ │ ├── NSObject+KiwiMockAdditions.h │ │ │ ├── NSObject+KiwiSpyAdditions.h │ │ │ ├── NSObject+KiwiStubAdditions.h │ │ │ ├── NSObject+KiwiVerifierAdditions.h │ │ │ ├── NSProxy+KiwiVerifierAdditions.h │ │ │ └── NSValue+KiwiAdditions.h │ │ │ └── S2MToolbox │ │ │ ├── KWSpec+S2MWaitFor.h │ │ │ ├── NSError+S2MErrorHandling.h │ │ │ ├── NSNotification+S2MKeyboard.h │ │ │ ├── NSString+S2MMD5.h │ │ │ ├── NSString+S2MNotificationHelper.h │ │ │ ├── NSString+S2MRegExValidation.h │ │ │ ├── S2MCalloutAnnotation.h │ │ │ ├── S2MDelegateDispatcher.h │ │ │ ├── S2MErrorAlertViewDelegate.h │ │ │ ├── S2MErrorHandler.h │ │ │ ├── S2MHockeyHandler.h │ │ │ ├── S2MNotificationHelper.h │ │ │ ├── S2MProtocolIntrospector.h │ │ │ ├── S2MQRViewController.h │ │ │ ├── S2MRefreshControl.h │ │ │ ├── S2MShopFinderController.h │ │ │ ├── UIBarButtonItem+S2MAdditions.h │ │ │ ├── UILocalNotification+S2MNotificationHelper.h │ │ │ ├── UIView+S2MAdditions.h │ │ │ └── UIView+S2MAutolayout.h │ ├── HockeySDK │ │ └── HockeySDK-iOS │ │ │ ├── HockeySDK.embeddedframework │ │ │ └── HockeySDK.framework │ │ │ │ ├── Headers │ │ │ │ ├── HockeySDK │ │ │ │ ├── Modules │ │ │ │ └── module.modulemap │ │ │ │ ├── Resources │ │ │ │ └── Versions │ │ │ │ ├── A │ │ │ │ ├── Headers │ │ │ │ │ ├── BITAuthenticator.h │ │ │ │ │ ├── BITCrashAttachment.h │ │ │ │ │ ├── BITCrashDetails.h │ │ │ │ │ ├── BITCrashManager.h │ │ │ │ │ ├── BITCrashManagerDelegate.h │ │ │ │ │ ├── BITCrashMetaData.h │ │ │ │ │ ├── BITFeedbackActivity.h │ │ │ │ │ ├── BITFeedbackComposeViewController.h │ │ │ │ │ ├── BITFeedbackComposeViewControllerDelegate.h │ │ │ │ │ ├── BITFeedbackListViewController.h │ │ │ │ │ ├── BITFeedbackManager.h │ │ │ │ │ ├── BITFeedbackManagerDelegate.h │ │ │ │ │ ├── BITHockeyAttachment.h │ │ │ │ │ ├── BITHockeyBaseManager.h │ │ │ │ │ ├── BITHockeyBaseViewController.h │ │ │ │ │ ├── BITHockeyManager.h │ │ │ │ │ ├── BITHockeyManagerDelegate.h │ │ │ │ │ ├── BITStoreUpdateManager.h │ │ │ │ │ ├── BITStoreUpdateManagerDelegate.h │ │ │ │ │ ├── BITUpdateManager.h │ │ │ │ │ ├── BITUpdateManagerDelegate.h │ │ │ │ │ ├── BITUpdateViewController.h │ │ │ │ │ ├── HockeySDK.h │ │ │ │ │ └── HockeySDKFeatureConfig.h │ │ │ │ ├── HockeySDK │ │ │ │ └── Resources │ │ │ │ │ ├── HockeySDK.xcconfig │ │ │ │ │ └── HockeySDKResources.bundle │ │ │ │ │ ├── Arrow.png │ │ │ │ │ ├── Arrow@2x.png │ │ │ │ │ ├── Arrow@3x.png │ │ │ │ │ ├── Blur.png │ │ │ │ │ ├── Blur@2x.png │ │ │ │ │ ├── Blur@3x.png │ │ │ │ │ ├── Cancel.png │ │ │ │ │ ├── Cancel@2x.png │ │ │ │ │ ├── Cancel@3x.png │ │ │ │ │ ├── IconGradient.png │ │ │ │ │ ├── IconGradient@2x.png │ │ │ │ │ ├── Info.plist │ │ │ │ │ ├── Ok.png │ │ │ │ │ ├── Ok@2x.png │ │ │ │ │ ├── Ok@3x.png │ │ │ │ │ ├── Rectangle.png │ │ │ │ │ ├── Rectangle@2x.png │ │ │ │ │ ├── Rectangle@3x.png │ │ │ │ │ ├── authorize_denied.png │ │ │ │ │ ├── authorize_denied@2x.png │ │ │ │ │ ├── authorize_denied@3x.png │ │ │ │ │ ├── bg.png │ │ │ │ │ ├── buttonRoundedDelete.png │ │ │ │ │ ├── buttonRoundedDelete@2x.png │ │ │ │ │ ├── buttonRoundedDeleteHighlighted.png │ │ │ │ │ ├── buttonRoundedDeleteHighlighted@2x.png │ │ │ │ │ ├── buttonRoundedRegular.png │ │ │ │ │ ├── buttonRoundedRegular@2x.png │ │ │ │ │ ├── buttonRoundedRegularHighlighted.png │ │ │ │ │ ├── buttonRoundedRegularHighlighted@2x.png │ │ │ │ │ ├── de.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ ├── en.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ ├── es.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ ├── feedbackActivity.png │ │ │ │ │ ├── feedbackActivity@2x.png │ │ │ │ │ ├── feedbackActivity@2x~ipad.png │ │ │ │ │ ├── feedbackActivity@3x.png │ │ │ │ │ ├── feedbackActivity~ipad.png │ │ │ │ │ ├── fr.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ ├── hr.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ ├── hu.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ ├── iconCamera.png │ │ │ │ │ ├── iconCamera@2x.png │ │ │ │ │ ├── it.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ ├── ja.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ ├── nl.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ ├── pt-PT.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ ├── pt.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ ├── ru.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ │ └── zh-Hans.lproj │ │ │ │ │ └── HockeySDK.strings │ │ │ │ └── Current │ │ │ ├── LICENSE │ │ │ └── README.md │ ├── Kiwi │ │ ├── Classes │ │ │ ├── Config │ │ │ │ ├── KWAllTestsSuite.m │ │ │ │ ├── KWSuiteConfigurationBase.h │ │ │ │ └── KWSuiteConfigurationBase.m │ │ │ ├── Core │ │ │ │ ├── KWAny.h │ │ │ │ ├── KWAny.m │ │ │ │ ├── KWBlock.h │ │ │ │ ├── KWBlock.m │ │ │ │ ├── KWCallSite.h │ │ │ │ ├── KWCallSite.m │ │ │ │ ├── KWCaptureSpy.h │ │ │ │ ├── KWCaptureSpy.m │ │ │ │ ├── KWCountType.h │ │ │ │ ├── KWDeviceInfo.h │ │ │ │ ├── KWDeviceInfo.m │ │ │ │ ├── KWExample.h │ │ │ │ ├── KWExample.m │ │ │ │ ├── KWExampleDelegate.h │ │ │ │ ├── KWExampleNodeVisitor.h │ │ │ │ ├── KWExampleSuite.h │ │ │ │ ├── KWExampleSuite.m │ │ │ │ ├── KWExampleSuiteBuilder.h │ │ │ │ ├── KWExampleSuiteBuilder.m │ │ │ │ ├── KWExpectationType.h │ │ │ │ ├── KWFailure.h │ │ │ │ ├── KWFailure.m │ │ │ │ ├── KWFormatter.h │ │ │ │ ├── KWFormatter.m │ │ │ │ ├── KWFutureObject.h │ │ │ │ ├── KWFutureObject.m │ │ │ │ ├── KWInvocationCapturer.h │ │ │ │ ├── KWInvocationCapturer.m │ │ │ │ ├── KWLet.h │ │ │ │ ├── KWMatcher.h │ │ │ │ ├── KWMatcher.m │ │ │ │ ├── KWMatcherFactory.h │ │ │ │ ├── KWMatcherFactory.m │ │ │ │ ├── KWMatchers.h │ │ │ │ ├── KWMatchers.m │ │ │ │ ├── KWMatching.h │ │ │ │ ├── KWMessagePattern.h │ │ │ │ ├── KWMessagePattern.m │ │ │ │ ├── KWMessageSpying.h │ │ │ │ ├── KWMessageTracker.h │ │ │ │ ├── KWMessageTracker.m │ │ │ │ ├── KWNull.h │ │ │ │ ├── KWNull.m │ │ │ │ ├── KWObjCUtilities.h │ │ │ │ ├── KWObjCUtilities.m │ │ │ │ ├── KWProbe.h │ │ │ │ ├── KWProbePoller.h │ │ │ │ ├── KWProbePoller.m │ │ │ │ ├── KWReporting.h │ │ │ │ ├── KWSpec.h │ │ │ │ ├── KWSpec.m │ │ │ │ ├── KWStringUtilities.h │ │ │ │ ├── KWStringUtilities.m │ │ │ │ ├── KWSymbolicator.h │ │ │ │ ├── KWSymbolicator.m │ │ │ │ ├── KWValue.h │ │ │ │ ├── KWValue.m │ │ │ │ ├── KWWorkarounds.h │ │ │ │ ├── KWWorkarounds.m │ │ │ │ ├── Kiwi.h │ │ │ │ ├── KiwiBlockMacros.h │ │ │ │ ├── KiwiConfiguration.h │ │ │ │ ├── KiwiMacros.h │ │ │ │ ├── NSInvocation+KiwiAdditions.h │ │ │ │ ├── NSInvocation+KiwiAdditions.m │ │ │ │ ├── NSInvocation+OCMAdditions.h │ │ │ │ ├── NSInvocation+OCMAdditions.m │ │ │ │ ├── NSMethodSignature+KiwiAdditions.h │ │ │ │ ├── NSMethodSignature+KiwiAdditions.m │ │ │ │ ├── NSNumber+KiwiAdditions.h │ │ │ │ ├── NSNumber+KiwiAdditions.m │ │ │ │ ├── NSObject+KiwiSpyAdditions.h │ │ │ │ ├── NSObject+KiwiSpyAdditions.m │ │ │ │ ├── NSObject+KiwiVerifierAdditions.h │ │ │ │ ├── NSObject+KiwiVerifierAdditions.m │ │ │ │ ├── NSProxy+KiwiVerifierAdditions.h │ │ │ │ ├── NSProxy+KiwiVerifierAdditions.m │ │ │ │ ├── NSValue+KiwiAdditions.h │ │ │ │ └── NSValue+KiwiAdditions.m │ │ │ ├── Matchers │ │ │ │ ├── KWBeBetweenMatcher.h │ │ │ │ ├── KWBeBetweenMatcher.m │ │ │ │ ├── KWBeEmptyMatcher.h │ │ │ │ ├── KWBeEmptyMatcher.m │ │ │ │ ├── KWBeIdenticalToMatcher.h │ │ │ │ ├── KWBeIdenticalToMatcher.m │ │ │ │ ├── KWBeKindOfClassMatcher.h │ │ │ │ ├── KWBeKindOfClassMatcher.m │ │ │ │ ├── KWBeMemberOfClassMatcher.h │ │ │ │ ├── KWBeMemberOfClassMatcher.m │ │ │ │ ├── KWBeSubclassOfClassMatcher.h │ │ │ │ ├── KWBeSubclassOfClassMatcher.m │ │ │ │ ├── KWBeTrueMatcher.h │ │ │ │ ├── KWBeTrueMatcher.m │ │ │ │ ├── KWBeWithinMatcher.h │ │ │ │ ├── KWBeWithinMatcher.m │ │ │ │ ├── KWBeZeroMatcher.h │ │ │ │ ├── KWBeZeroMatcher.m │ │ │ │ ├── KWBlockRaiseMatcher.h │ │ │ │ ├── KWBlockRaiseMatcher.m │ │ │ │ ├── KWChangeMatcher.h │ │ │ │ ├── KWChangeMatcher.m │ │ │ │ ├── KWConformToProtocolMatcher.h │ │ │ │ ├── KWConformToProtocolMatcher.m │ │ │ │ ├── KWContainMatcher.h │ │ │ │ ├── KWContainMatcher.m │ │ │ │ ├── KWContainStringMatcher.h │ │ │ │ ├── KWContainStringMatcher.m │ │ │ │ ├── KWEqualMatcher.h │ │ │ │ ├── KWEqualMatcher.m │ │ │ │ ├── KWGenericMatchEvaluator.h │ │ │ │ ├── KWGenericMatchEvaluator.m │ │ │ │ ├── KWGenericMatcher.h │ │ │ │ ├── KWGenericMatcher.m │ │ │ │ ├── KWGenericMatchingAdditions.h │ │ │ │ ├── KWGenericMatchingAdditions.m │ │ │ │ ├── KWHaveMatcher.h │ │ │ │ ├── KWHaveMatcher.m │ │ │ │ ├── KWHaveValueMatcher.h │ │ │ │ ├── KWHaveValueMatcher.m │ │ │ │ ├── KWInequalityMatcher.h │ │ │ │ ├── KWInequalityMatcher.m │ │ │ │ ├── KWNilMatcher.h │ │ │ │ ├── KWNilMatcher.m │ │ │ │ ├── KWNotificationMatcher.h │ │ │ │ ├── KWNotificationMatcher.m │ │ │ │ ├── KWReceiveMatcher.h │ │ │ │ ├── KWReceiveMatcher.m │ │ │ │ ├── KWRegularExpressionPatternMatcher.h │ │ │ │ ├── KWRegularExpressionPatternMatcher.m │ │ │ │ ├── KWRespondToSelectorMatcher.h │ │ │ │ ├── KWRespondToSelectorMatcher.m │ │ │ │ ├── KWStringContainsMatcher.h │ │ │ │ ├── KWStringContainsMatcher.m │ │ │ │ ├── KWStringPrefixMatcher.h │ │ │ │ ├── KWStringPrefixMatcher.m │ │ │ │ ├── KWUserDefinedMatcher.h │ │ │ │ └── KWUserDefinedMatcher.m │ │ │ ├── Mocking │ │ │ │ ├── KWMock.h │ │ │ │ ├── KWMock.m │ │ │ │ ├── NSObject+KiwiMockAdditions.h │ │ │ │ └── NSObject+KiwiMockAdditions.m │ │ │ ├── Nodes │ │ │ │ ├── KWAfterAllNode.h │ │ │ │ ├── KWAfterAllNode.m │ │ │ │ ├── KWAfterEachNode.h │ │ │ │ ├── KWAfterEachNode.m │ │ │ │ ├── KWBeforeAllNode.h │ │ │ │ ├── KWBeforeAllNode.m │ │ │ │ ├── KWBeforeEachNode.h │ │ │ │ ├── KWBeforeEachNode.m │ │ │ │ ├── KWBlockNode.h │ │ │ │ ├── KWBlockNode.m │ │ │ │ ├── KWContextNode.h │ │ │ │ ├── KWContextNode.m │ │ │ │ ├── KWExampleNode.h │ │ │ │ ├── KWItNode.h │ │ │ │ ├── KWItNode.m │ │ │ │ ├── KWLetNode.h │ │ │ │ ├── KWLetNode.m │ │ │ │ ├── KWPendingNode.h │ │ │ │ ├── KWPendingNode.m │ │ │ │ ├── KWRegisterMatchersNode.h │ │ │ │ └── KWRegisterMatchersNode.m │ │ │ ├── Stubbing │ │ │ │ ├── KWIntercept.h │ │ │ │ ├── KWIntercept.m │ │ │ │ ├── KWStub.h │ │ │ │ ├── KWStub.m │ │ │ │ ├── NSObject+KiwiStubAdditions.h │ │ │ │ └── NSObject+KiwiStubAdditions.m │ │ │ └── Verifiers │ │ │ │ ├── KWAsyncVerifier.h │ │ │ │ ├── KWAsyncVerifier.m │ │ │ │ ├── KWExistVerifier.h │ │ │ │ ├── KWExistVerifier.m │ │ │ │ ├── KWMatchVerifier.h │ │ │ │ ├── KWMatchVerifier.m │ │ │ │ └── KWVerifying.h │ │ ├── License.txt │ │ └── Readme.md │ ├── Local Podspecs │ │ └── S2MToolbox.podspec.json │ ├── Manifest.lock │ ├── Pods.xcodeproj │ │ ├── project.pbxproj │ │ └── xcshareddata │ │ │ └── xcschemes │ │ │ ├── Pods-S2MToolbox-S2MToolbox.xcscheme │ │ │ └── Pods-S2MToolboxTests-S2MToolbox.xcscheme │ ├── S2MToolbox │ │ ├── LICENSE.txt │ │ ├── QRCode │ │ │ ├── S2MQRController.h │ │ │ └── S2MQRController.m │ │ └── README.md │ └── Target Support Files │ │ ├── Kiwi │ │ ├── Kiwi-Private.xcconfig │ │ ├── Kiwi-dummy.m │ │ ├── Kiwi-prefix.pch │ │ └── Kiwi.xcconfig │ │ ├── Pods-S2MToolbox-S2MToolbox │ │ ├── Pods-S2MToolbox-S2MToolbox-Private.xcconfig │ │ ├── Pods-S2MToolbox-S2MToolbox-dummy.m │ │ ├── Pods-S2MToolbox-S2MToolbox-prefix.pch │ │ └── Pods-S2MToolbox-S2MToolbox.xcconfig │ │ ├── Pods-S2MToolbox │ │ ├── Pods-S2MToolbox-acknowledgements.markdown │ │ ├── Pods-S2MToolbox-acknowledgements.plist │ │ ├── Pods-S2MToolbox-dummy.m │ │ ├── Pods-S2MToolbox-resources.sh │ │ ├── Pods-S2MToolbox.debug.xcconfig │ │ └── Pods-S2MToolbox.release.xcconfig │ │ ├── Pods-S2MToolboxTests-S2MToolbox │ │ ├── Pods-S2MToolboxTests-S2MToolbox-Private.xcconfig │ │ ├── Pods-S2MToolboxTests-S2MToolbox-dummy.m │ │ ├── Pods-S2MToolboxTests-S2MToolbox-prefix.pch │ │ └── Pods-S2MToolboxTests-S2MToolbox.xcconfig │ │ └── Pods-S2MToolboxTests │ │ ├── Pods-S2MToolboxTests-acknowledgements.markdown │ │ ├── Pods-S2MToolboxTests-acknowledgements.plist │ │ ├── Pods-S2MToolboxTests-dummy.m │ │ ├── Pods-S2MToolboxTests-resources.sh │ │ ├── Pods-S2MToolboxTests.debug.xcconfig │ │ └── Pods-S2MToolboxTests.release.xcconfig ├── S2MToolbox.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ └── xcshareddata │ │ └── xcschemes │ │ └── S2MToolbox.xcscheme ├── S2MToolbox.xcworkspace │ └── contents.xcworkspacedata ├── S2MToolbox │ ├── Example │ │ ├── .DS_Store │ │ ├── DelegateDispatch.storyboard │ │ ├── LocalNotificatinHelper │ │ │ ├── S2MNotificationViewController.h │ │ │ ├── S2MNotificationViewController.m │ │ │ └── S2MNotificationViewController.xib │ │ ├── S2MDelegate1ViewController.h │ │ ├── S2MDelegate1ViewController.m │ │ ├── S2MDelegate2ViewController.h │ │ ├── S2MDelegate2ViewController.m │ │ ├── S2MDelegateDispatchSampleViewController.h │ │ ├── S2MDelegateDispatchSampleViewController.m │ │ ├── S2MHockeyViewController.h │ │ ├── S2MHockeyViewController.m │ │ ├── S2MShopFinderSearchDelegate.h │ │ ├── S2MShopFinderSearchDelegate.m │ │ ├── S2MViewController.h │ │ └── S2MViewController.m │ ├── Images.xcassets │ │ ├── .DS_Store │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ ├── LaunchImage.launchimage │ │ │ └── Contents.json │ │ ├── icn_location_active.imageset │ │ │ ├── Contents.json │ │ │ └── icn_location_active@2x.png │ │ ├── icn_location_inactive.imageset │ │ │ ├── Contents.json │ │ │ └── icn_location_inactive@2x.png │ │ ├── loading_indicator.imageset │ │ │ ├── Contents.json │ │ │ └── loading_indicator@2x.png │ │ ├── pin_active.imageset │ │ │ ├── Contents.json │ │ │ └── pin_active@2x.png │ │ ├── pin_inactive.imageset │ │ │ ├── Contents.json │ │ │ └── pin_inactive@2x.png │ │ └── qr.imageset │ │ │ ├── Contents.json │ │ │ └── qr@2x.png │ ├── S2MAppDelegate.h │ ├── S2MAppDelegate.m │ ├── S2MCollectionViewController.h │ ├── S2MCollectionViewController.m │ ├── S2MTextLoadingView.h │ ├── S2MTextLoadingView.m │ ├── S2MToolbox-Info.plist │ ├── S2MToolbox-Prefix.pch │ ├── StartViewController.h │ ├── StartViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m └── S2MToolboxTests │ ├── NSString_S2MMD5Spec.m │ ├── NSString_S2MRegExValidationSpec.m │ ├── S2MDelegateDispatcherTests.m │ ├── S2MProtocolInspectorTests.m │ ├── S2MToolboxTests-Info.plist │ ├── UIView+S2MAutolayoutTests.m │ ├── UIView_S2MAdditionsSpec.m │ └── en.lproj │ └── InfoPlist.strings ├── Foundation ├── NSError+S2MErrorHandling.h ├── NSError+S2MErrorHandling.m ├── NSNotification+S2MKeyboard.h ├── NSNotification+S2MKeyboard.m ├── NSString+S2MMD5.h ├── NSString+S2MMD5.m ├── NSString+S2MRegExValidation.h ├── NSString+S2MRegExValidation.m ├── S2MErrorAlertViewDelegate.h └── S2MErrorHandler.h ├── HockeyApp ├── S2MHockeyHandler.h └── S2MHockeyHandler.m ├── LICENSE.txt ├── LocalNotificationHelper ├── NSString+S2MNotificationHelper.h ├── NSString+S2MNotificationHelper.m ├── S2MNotificationHelper.h ├── S2MNotificationHelper.m ├── UILocalNotification+S2MNotificationHelper.h └── UILocalNotification+S2MNotificationHelper.m ├── QRCode ├── S2MQRViewController.h └── S2MQRViewController.m ├── README.md ├── S2MToolbox.podspec ├── ShopFinder ├── S2MCalloutAnnotation.h ├── S2MCalloutAnnotation.m ├── S2MShopFinderController.h └── S2MShopFinderController.m ├── Testing └── Kiwi │ ├── KWSpec+S2MWaitFor.h │ └── KWSpec+S2MWaitFor.m └── UIKit ├── S2MRefreshControl.h ├── S2MRefreshControl.m ├── UIBarButtonItem+S2MAdditions.h ├── UIBarButtonItem+S2MAdditions.m ├── UIView+S2MAdditions.h ├── UIView+S2MAdditions.m ├── UIView+S2MAutolayout.h └── UIView+S2MAutolayout.m /.gitattributes: -------------------------------------------------------------------------------- 1 | *.pbxproj merge=union 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | # Xcode 3 | # 4 | build/ 5 | *.pbxuser 6 | !default.pbxuser 7 | *.mode1v3 8 | !default.mode1v3 9 | *.mode2v3 10 | !default.mode2v3 11 | *.perspectivev3 12 | !default.perspectivev3 13 | xcuserdata 14 | *.xccheckout 15 | *.moved-aside 16 | DerivedData 17 | *.hmap 18 | *.ipa 19 | *.xcuserstate 20 | 21 | # CocoaPods 22 | # 23 | # We recommend against adding the Pods directory to your .gitignore. However 24 | # you should judge for yourself, the pros and cons are mentioned at: 25 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 26 | # 27 | # Pods/ 28 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # references: 2 | # * http://www.objc.io/issue-6/travis-ci.html 3 | # * https://github.com/supermarin/xcpretty#usage 4 | 5 | language: objective-c 6 | # cache: cocoapods 7 | # podfile: Example/Podfile 8 | # before_install: cd Example && pod install && cd - 9 | install: 10 | - gem install xcpretty --no-rdoc --no-ri --no-document --quiet 11 | script: 12 | - set -o pipefail && xcodebuild test -workspace Example/S2MToolbox.xcworkspace -scheme S2MToolbox -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO | xcpretty -c 13 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # CONTRIBUTING 2 | 3 | * Source code is ARC only 4 | * All methods have to be `s2m_` prefixed to avoid name clashes 5 | 6 | ## HOW TO 7 | 8 | * Clone this project 9 | * if you use cocoapods in your project, change the declaration to `pod 'S2MToolbox', :path => ''` 10 | * Commit your changes 11 | 12 | ## For S2M Members 13 | 14 | * Tag your commit and Update the version in 'S2MToolbox.podspec' accordingly 15 | * Change back your project's podfile 16 | * `pod update` 17 | 18 | ## For Others 19 | 20 | * make a pull request with the name of your feature, i.e : `encryption`. 21 | -------------------------------------------------------------------------------- /DelegateDispatch/S2MProtocolIntrospector.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MProtocolIntrospector.h 3 | // DelegateDispatch 4 | // 5 | // Created by Nils Grabenhorst on 22/05/15. 6 | // Copyright (c) 2015 SinnerSchrader-Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface S2MProtocolIntrospector : NSObject 12 | 13 | - (BOOL)protocolDeclaresMethodForSelector:(SEL)aSelector; 14 | - (NSMethodSignature *)protocolMethodSignatureForSelector:(SEL)aSelector; 15 | 16 | - (instancetype)initWithProtocol:(Protocol *)protocol NS_DESIGNATED_INITIALIZER; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Example/.gitignore: -------------------------------------------------------------------------------- 1 | # OS X Finder 2 | .DS_Store 3 | 4 | # Xcode per-user config 5 | *.mode1 6 | *.mode1v3 7 | *.mode2v3 8 | *.perspective 9 | *.perspectivev3 10 | *.pbxuser 11 | xcuserdata 12 | *.xccheckout 13 | 14 | # Build products 15 | build/ 16 | *.o 17 | *.LinkFileList 18 | *.hmap 19 | 20 | # Automatic backup files 21 | *~.nib/ 22 | *.swp 23 | *~ 24 | *.dat 25 | *.dep 26 | 27 | ## Cocoapods 28 | # We use gitsubtree and need the project to compile without any dependency (i.e. after a clean clone), thus the Pods directory is versioned 29 | 30 | # AppCode specific files 31 | .idea/ 32 | *.iml 33 | -------------------------------------------------------------------------------- /Example/Podfile: -------------------------------------------------------------------------------- 1 | # Uncomment this line to define a global platform for your project 2 | platform :ios, "7.0" 3 | 4 | source 'https://github.com/CocoaPods/Specs.git' 5 | 6 | target "S2MToolbox" do 7 | pod 'S2MToolbox', :path => "../" 8 | pod 'S2MToolbox/QRCode', :path => "../" 9 | pod 'S2MToolbox/ShopFinder', :path => "../" 10 | pod 'S2MToolbox/HockeyApp', :path => "../" 11 | pod 'S2MToolbox/LocalNotificationHelper', :path => "../" 12 | pod 'S2MToolbox/DelegateDispatch', :path => "../" 13 | end 14 | 15 | target "S2MToolboxTests", :exclusive => true do 16 | pod 'S2MToolbox/Kiwi', :path => "../" 17 | end 18 | 19 | -------------------------------------------------------------------------------- /Example/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - HockeySDK (3.7.3): 3 | - HockeySDK/AllFeaturesLib (= 3.7.3) 4 | - HockeySDK/AllFeaturesLib (3.7.3) 5 | - Kiwi (2.3.1) 6 | - S2MToolbox (0.2.3): 7 | - S2MToolbox/Foundation (= 0.2.3) 8 | - S2MToolbox/UIKit (= 0.2.3) 9 | - S2MToolbox/DelegateDispatch (0.2.3) 10 | - S2MToolbox/Foundation (0.2.3) 11 | - S2MToolbox/HockeyApp (0.2.3): 12 | - HockeySDK (>= 3.6.4) 13 | - S2MToolbox/Kiwi (0.2.3): 14 | - Kiwi (~> 2.3.0) 15 | - S2MToolbox/LocalNotificationHelper (0.2.3) 16 | - S2MToolbox/QRCode (0.2.3) 17 | - S2MToolbox/ShopFinder (0.2.3) 18 | - S2MToolbox/UIKit (0.2.3) 19 | 20 | DEPENDENCIES: 21 | - S2MToolbox (from `../`) 22 | - S2MToolbox/DelegateDispatch (from `../`) 23 | - S2MToolbox/HockeyApp (from `../`) 24 | - S2MToolbox/Kiwi (from `../`) 25 | - S2MToolbox/LocalNotificationHelper (from `../`) 26 | - S2MToolbox/QRCode (from `../`) 27 | - S2MToolbox/ShopFinder (from `../`) 28 | 29 | EXTERNAL SOURCES: 30 | S2MToolbox: 31 | :path: ../ 32 | 33 | SPEC CHECKSUMS: 34 | HockeySDK: a0b915dc081f1ba67782a347220a8623dbe93b8a 35 | Kiwi: f038a6c61f7a9e4d7766bff5717aa3b3fdb75f55 36 | S2MToolbox: 6e8f8d43781403c7d83b306304bca28db0c47098 37 | 38 | COCOAPODS: 0.38.2 39 | -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWAfterAllNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWAfterAllNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWAfterEachNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWAfterEachNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWAny.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWAny.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWAsyncVerifier.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Verifiers/KWAsyncVerifier.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBeBetweenMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeBetweenMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBeEmptyMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeEmptyMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBeIdenticalToMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeIdenticalToMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBeKindOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeKindOfClassMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBeMemberOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeMemberOfClassMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBeSubclassOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeSubclassOfClassMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBeTrueMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeTrueMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBeWithinMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeWithinMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBeZeroMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeZeroMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBeforeAllNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWBeforeAllNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBeforeEachNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWBeforeEachNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBlock.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWBlock.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBlockNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWBlockNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWBlockRaiseMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBlockRaiseMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWCallSite.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWCallSite.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWCaptureSpy.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWCaptureSpy.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWChangeMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWChangeMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWConformToProtocolMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWConformToProtocolMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWContainMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWContainMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWContainStringMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWContainStringMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWContextNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWContextNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWCountType.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWCountType.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWDeviceInfo.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWDeviceInfo.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWEqualMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWEqualMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWExample.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExample.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWExampleDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExampleDelegate.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWExampleNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWExampleNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWExampleNodeVisitor.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExampleNodeVisitor.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWExampleSuite.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExampleSuite.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWExampleSuiteBuilder.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExampleSuiteBuilder.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWExistVerifier.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Verifiers/KWExistVerifier.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWExpectationType.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExpectationType.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWFailure.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWFailure.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWFormatter.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWFormatter.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWFutureObject.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWFutureObject.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWGenericMatchEvaluator.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWGenericMatchEvaluator.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWGenericMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWGenericMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWGenericMatchingAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWGenericMatchingAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWHaveMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWHaveMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWHaveValueMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWHaveValueMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWInequalityMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWInequalityMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWIntercept.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Stubbing/KWIntercept.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWInvocationCapturer.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWInvocationCapturer.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWItNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWItNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWLet.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWLet.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWLetNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWLetNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWMatchVerifier.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Verifiers/KWMatchVerifier.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWMatcherFactory.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMatcherFactory.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWMatchers.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMatchers.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWMatching.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMatching.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWMessagePattern.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMessagePattern.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWMessageSpying.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMessageSpying.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWMessageTracker.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMessageTracker.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWMock.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Mocking/KWMock.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWNilMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWNilMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWNotificationMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWNotificationMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWNull.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWNull.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWObjCUtilities.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWObjCUtilities.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWPendingNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWPendingNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWProbe.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWProbe.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWProbePoller.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWProbePoller.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWReceiveMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWReceiveMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWRegisterMatchersNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWRegisterMatchersNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWRegularExpressionPatternMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWRegularExpressionPatternMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWReporting.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWReporting.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWRespondToSelectorMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWRespondToSelectorMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWSpec.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWSpec.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWStringContainsMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWStringContainsMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWStringPrefixMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWStringPrefixMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWStringUtilities.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWStringUtilities.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWStub.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Stubbing/KWStub.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWSuiteConfigurationBase.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Config/KWSuiteConfigurationBase.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWSymbolicator.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWSymbolicator.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWUserDefinedMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWUserDefinedMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWValue.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWValue.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWVerifying.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Verifiers/KWVerifying.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KWWorkarounds.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWWorkarounds.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/Kiwi.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/Kiwi.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KiwiBlockMacros.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KiwiBlockMacros.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KiwiConfiguration.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KiwiConfiguration.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/KiwiMacros.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KiwiMacros.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/NSInvocation+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSInvocation+KiwiAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/NSInvocation+OCMAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSInvocation+OCMAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/NSMethodSignature+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSMethodSignature+KiwiAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/NSNumber+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSNumber+KiwiAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/NSObject+KiwiMockAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Mocking/NSObject+KiwiMockAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/NSObject+KiwiSpyAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSObject+KiwiSpyAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/NSObject+KiwiStubAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Stubbing/NSObject+KiwiStubAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/NSObject+KiwiVerifierAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSObject+KiwiVerifierAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/NSProxy+KiwiVerifierAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSProxy+KiwiVerifierAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/Kiwi/NSValue+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSValue+KiwiAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/KWSpec+S2MWaitFor.h: -------------------------------------------------------------------------------- 1 | ../../../../../Testing/Kiwi/KWSpec+S2MWaitFor.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/NSError+S2MErrorHandling.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/NSError+S2MErrorHandling.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/NSNotification+S2MKeyboard.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/NSNotification+S2MKeyboard.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/NSString+S2MMD5.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/NSString+S2MMD5.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/NSString+S2MNotificationHelper.h: -------------------------------------------------------------------------------- 1 | ../../../../../LocalNotificationHelper/NSString+S2MNotificationHelper.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/NSString+S2MRegExValidation.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/NSString+S2MRegExValidation.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/S2MCalloutAnnotation.h: -------------------------------------------------------------------------------- 1 | ../../../../../ShopFinder/S2MCalloutAnnotation.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/S2MDelegateDispatcher.h: -------------------------------------------------------------------------------- 1 | ../../../../../DelegateDispatch/S2MDelegateDispatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/S2MErrorAlertViewDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/S2MErrorAlertViewDelegate.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/S2MErrorHandler.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/S2MErrorHandler.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/S2MHockeyHandler.h: -------------------------------------------------------------------------------- 1 | ../../../../../HockeyApp/S2MHockeyHandler.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/S2MNotificationHelper.h: -------------------------------------------------------------------------------- 1 | ../../../../../LocalNotificationHelper/S2MNotificationHelper.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/S2MProtocolIntrospector.h: -------------------------------------------------------------------------------- 1 | ../../../../../DelegateDispatch/S2MProtocolIntrospector.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/S2MQRViewController.h: -------------------------------------------------------------------------------- 1 | ../../../../../QRCode/S2MQRViewController.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/S2MRefreshControl.h: -------------------------------------------------------------------------------- 1 | ../../../../../UIKit/S2MRefreshControl.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/S2MShopFinderController.h: -------------------------------------------------------------------------------- 1 | ../../../../../ShopFinder/S2MShopFinderController.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/UIBarButtonItem+S2MAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../../../UIKit/UIBarButtonItem+S2MAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/UILocalNotification+S2MNotificationHelper.h: -------------------------------------------------------------------------------- 1 | ../../../../../LocalNotificationHelper/UILocalNotification+S2MNotificationHelper.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/UIView+S2MAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../../../UIKit/UIView+S2MAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/S2MToolbox/UIView+S2MAutolayout.h: -------------------------------------------------------------------------------- 1 | ../../../../../UIKit/UIView+S2MAutolayout.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITAuthenticator.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITAuthenticator.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITCrashAttachment.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITCrashAttachment.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITCrashDetails.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITCrashDetails.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITCrashManager.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITCrashManager.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITCrashManagerDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITCrashManagerDelegate.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITCrashMetaData.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITCrashMetaData.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITFeedbackActivity.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITFeedbackActivity.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITFeedbackComposeViewController.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITFeedbackComposeViewController.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITFeedbackComposeViewControllerDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITFeedbackComposeViewControllerDelegate.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITFeedbackListViewController.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITFeedbackListViewController.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITFeedbackManager.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITFeedbackManager.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITFeedbackManagerDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITFeedbackManagerDelegate.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITHockeyAttachment.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITHockeyAttachment.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITHockeyBaseManager.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITHockeyBaseManager.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITHockeyBaseViewController.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITHockeyBaseViewController.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITHockeyManager.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITHockeyManager.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITHockeyManagerDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITHockeyManagerDelegate.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITStoreUpdateManager.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITStoreUpdateManager.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITStoreUpdateManagerDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITStoreUpdateManagerDelegate.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITUpdateManager.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITUpdateManager.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITUpdateManagerDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITUpdateManagerDelegate.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/BITUpdateViewController.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/BITUpdateViewController.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/HockeySDK.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/HockeySDK.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/HockeySDK/HockeySDK/HockeySDKFeatureConfig.h: -------------------------------------------------------------------------------- 1 | ../../../../HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Headers/HockeySDKFeatureConfig.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWAfterAllNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWAfterAllNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWAfterEachNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWAfterEachNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWAny.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWAny.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWAsyncVerifier.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Verifiers/KWAsyncVerifier.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBeBetweenMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeBetweenMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBeEmptyMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeEmptyMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBeIdenticalToMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeIdenticalToMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBeKindOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeKindOfClassMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBeMemberOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeMemberOfClassMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBeSubclassOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeSubclassOfClassMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBeTrueMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeTrueMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBeWithinMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeWithinMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBeZeroMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBeZeroMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBeforeAllNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWBeforeAllNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBeforeEachNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWBeforeEachNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBlock.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWBlock.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBlockNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWBlockNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWBlockRaiseMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWBlockRaiseMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWCallSite.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWCallSite.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWCaptureSpy.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWCaptureSpy.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWChangeMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWChangeMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWConformToProtocolMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWConformToProtocolMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWContainMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWContainMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWContainStringMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWContainStringMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWContextNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWContextNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWCountType.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWCountType.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWDeviceInfo.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWDeviceInfo.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWEqualMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWEqualMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWExample.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExample.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWExampleDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExampleDelegate.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWExampleNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWExampleNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWExampleNodeVisitor.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExampleNodeVisitor.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWExampleSuite.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExampleSuite.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWExampleSuiteBuilder.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExampleSuiteBuilder.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWExistVerifier.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Verifiers/KWExistVerifier.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWExpectationType.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWExpectationType.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWFailure.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWFailure.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWFormatter.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWFormatter.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWFutureObject.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWFutureObject.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWGenericMatchEvaluator.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWGenericMatchEvaluator.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWGenericMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWGenericMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWGenericMatchingAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWGenericMatchingAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWHaveMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWHaveMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWHaveValueMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWHaveValueMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWInequalityMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWInequalityMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWIntercept.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Stubbing/KWIntercept.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWInvocationCapturer.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWInvocationCapturer.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWItNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWItNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWLet.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWLet.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWLetNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWLetNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWMatchVerifier.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Verifiers/KWMatchVerifier.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWMatcherFactory.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMatcherFactory.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWMatchers.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMatchers.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWMatching.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMatching.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWMessagePattern.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMessagePattern.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWMessageSpying.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMessageSpying.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWMessageTracker.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWMessageTracker.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWMock.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Mocking/KWMock.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWNilMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWNilMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWNotificationMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWNotificationMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWNull.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWNull.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWObjCUtilities.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWObjCUtilities.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWPendingNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWPendingNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWProbe.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWProbe.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWProbePoller.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWProbePoller.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWReceiveMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWReceiveMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWRegisterMatchersNode.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Nodes/KWRegisterMatchersNode.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWRegularExpressionPatternMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWRegularExpressionPatternMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWReporting.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWReporting.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWRespondToSelectorMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWRespondToSelectorMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWSpec.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWSpec.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWStringContainsMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWStringContainsMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWStringPrefixMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWStringPrefixMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWStringUtilities.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWStringUtilities.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWStub.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Stubbing/KWStub.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWSuiteConfigurationBase.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Config/KWSuiteConfigurationBase.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWSymbolicator.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWSymbolicator.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWUserDefinedMatcher.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Matchers/KWUserDefinedMatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWValue.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWValue.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWVerifying.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Verifiers/KWVerifying.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KWWorkarounds.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KWWorkarounds.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/Kiwi.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/Kiwi.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KiwiBlockMacros.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KiwiBlockMacros.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KiwiConfiguration.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KiwiConfiguration.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/KiwiMacros.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/KiwiMacros.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/NSInvocation+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSInvocation+KiwiAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/NSInvocation+OCMAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSInvocation+OCMAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/NSMethodSignature+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSMethodSignature+KiwiAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/NSNumber+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSNumber+KiwiAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/NSObject+KiwiMockAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Mocking/NSObject+KiwiMockAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/NSObject+KiwiSpyAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSObject+KiwiSpyAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/NSObject+KiwiStubAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Stubbing/NSObject+KiwiStubAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/NSObject+KiwiVerifierAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSObject+KiwiVerifierAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/NSProxy+KiwiVerifierAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSProxy+KiwiVerifierAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/Kiwi/NSValue+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../Kiwi/Classes/Core/NSValue+KiwiAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/KWSpec+S2MWaitFor.h: -------------------------------------------------------------------------------- 1 | ../../../../../Testing/Kiwi/KWSpec+S2MWaitFor.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/NSError+S2MErrorHandling.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/NSError+S2MErrorHandling.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/NSNotification+S2MKeyboard.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/NSNotification+S2MKeyboard.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/NSString+S2MMD5.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/NSString+S2MMD5.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/NSString+S2MNotificationHelper.h: -------------------------------------------------------------------------------- 1 | ../../../../../LocalNotificationHelper/NSString+S2MNotificationHelper.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/NSString+S2MRegExValidation.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/NSString+S2MRegExValidation.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/S2MCalloutAnnotation.h: -------------------------------------------------------------------------------- 1 | ../../../../../ShopFinder/S2MCalloutAnnotation.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/S2MDelegateDispatcher.h: -------------------------------------------------------------------------------- 1 | ../../../../../DelegateDispatch/S2MDelegateDispatcher.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/S2MErrorAlertViewDelegate.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/S2MErrorAlertViewDelegate.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/S2MErrorHandler.h: -------------------------------------------------------------------------------- 1 | ../../../../../Foundation/S2MErrorHandler.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/S2MHockeyHandler.h: -------------------------------------------------------------------------------- 1 | ../../../../../HockeyApp/S2MHockeyHandler.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/S2MNotificationHelper.h: -------------------------------------------------------------------------------- 1 | ../../../../../LocalNotificationHelper/S2MNotificationHelper.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/S2MProtocolIntrospector.h: -------------------------------------------------------------------------------- 1 | ../../../../../DelegateDispatch/S2MProtocolIntrospector.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/S2MQRViewController.h: -------------------------------------------------------------------------------- 1 | ../../../../../QRCode/S2MQRViewController.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/S2MRefreshControl.h: -------------------------------------------------------------------------------- 1 | ../../../../../UIKit/S2MRefreshControl.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/S2MShopFinderController.h: -------------------------------------------------------------------------------- 1 | ../../../../../ShopFinder/S2MShopFinderController.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/UIBarButtonItem+S2MAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../../../UIKit/UIBarButtonItem+S2MAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/UILocalNotification+S2MNotificationHelper.h: -------------------------------------------------------------------------------- 1 | ../../../../../LocalNotificationHelper/UILocalNotification+S2MNotificationHelper.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/UIView+S2MAdditions.h: -------------------------------------------------------------------------------- 1 | ../../../../../UIKit/UIView+S2MAdditions.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/S2MToolbox/UIView+S2MAutolayout.h: -------------------------------------------------------------------------------- 1 | ../../../../../UIKit/UIView+S2MAutolayout.h -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/HockeySDK: -------------------------------------------------------------------------------- 1 | Versions/Current/HockeySDK -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module HockeySDK { 2 | umbrella header "HockeySDK.h" 3 | 4 | export * 5 | module * { export * } 6 | 7 | link framework "AssetsLibrary" 8 | link framework "CoreText" 9 | link framework "CoreGraphics" 10 | link framework "Foundation" 11 | link framework "MobileCoreServices" 12 | link framework "QuartzCore" 13 | link framework "QuickLook" 14 | link framework "Security" 15 | link framework "SystemConfiguration" 16 | link framework "UIKit" 17 | link "c++" 18 | } 19 | -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Resources: -------------------------------------------------------------------------------- 1 | Versions/Current/Resources -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/HockeySDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/HockeySDK -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDK.xcconfig: -------------------------------------------------------------------------------- 1 | OTHER_LDFLAGS=$(inherited) -framework CoreText -framework CoreGraphics -framework Foundation -framework QuartzCore -framework SystemConfiguration -framework UIKit -framework Security -framework AssetsLibrary -framework MobileCoreServices -framework QuickLook -lc++ 2 | HOCKEYSDK_DOCSET_NAME=HockeySDK-iOS 3 | GCC_PREPROCESSOR_DEFINITIONS=$(inherited) CONFIGURATION_$(CONFIGURATION) 4 | -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Arrow.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Arrow@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Arrow@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Arrow@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Arrow@3x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Blur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Blur.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Blur@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Blur@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Blur@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Blur@3x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Cancel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Cancel.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Cancel@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Cancel@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Cancel@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Cancel@3x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/IconGradient.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/IconGradient.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/IconGradient@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/IconGradient@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Info.plist -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Ok.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Ok.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Ok@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Ok@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Ok@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Ok@3x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Rectangle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Rectangle.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Rectangle@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Rectangle@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Rectangle@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/Rectangle@3x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/authorize_denied.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/authorize_denied.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/authorize_denied@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/authorize_denied@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/authorize_denied@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/authorize_denied@3x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/bg.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedDelete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedDelete.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedDelete@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedDelete@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedDeleteHighlighted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedDeleteHighlighted.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedDeleteHighlighted@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedDeleteHighlighted@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedRegular.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedRegular.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedRegular@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedRegular@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedRegularHighlighted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedRegularHighlighted.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedRegularHighlighted@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/buttonRoundedRegularHighlighted@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/de.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/de.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/en.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/en.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/es.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/es.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/feedbackActivity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/feedbackActivity.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/feedbackActivity@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/feedbackActivity@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/feedbackActivity@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/feedbackActivity@2x~ipad.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/feedbackActivity@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/feedbackActivity@3x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/feedbackActivity~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/feedbackActivity~ipad.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/fr.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/fr.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/hr.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/hr.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/hu.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/hu.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/iconCamera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/iconCamera.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/iconCamera@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/iconCamera@2x.png -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/it.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/it.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/ja.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/ja.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/nl.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/nl.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/pt-PT.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/pt-PT.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/pt.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/pt.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/ru.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/ru.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/zh-Hans.lproj/HockeySDK.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/A/Resources/HockeySDKResources.bundle/zh-Hans.lproj/HockeySDK.strings -------------------------------------------------------------------------------- /Example/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Config/KWSuiteConfigurationBase.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWSuiteConfigurationBase.h 3 | // Kiwi 4 | // 5 | // Created by Adam Sharp on 14/12/2013. 6 | // Copyright (c) 2013 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface KWSuiteConfigurationBase : NSObject 12 | 13 | + (instancetype)defaultConfiguration; 14 | 15 | - (void)configureSuite; 16 | 17 | - (void)setUp; 18 | - (void)tearDown; 19 | 20 | @property (nonatomic, copy) void (^beforeAllSpecsBlock)(void); 21 | @property (nonatomic, copy) void (^afterAllSpecsBlock)(void); 22 | 23 | @end 24 | 25 | void beforeAllSpecs(void (^block)(void)); 26 | void afterAllSpecs(void (^block)(void)); 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWAny.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | // KWAny exists to determine arguments in a message pattern that should 10 | // match any value. Used for pointers as well as for scalar values. 11 | @interface KWAny : NSObject 12 | 13 | #pragma mark - Initializing 14 | 15 | + (id)any; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWAny.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWAny.h" 8 | 9 | @implementation KWAny 10 | 11 | #pragma mark - Initializing 12 | 13 | + (id)any { 14 | static KWAny *sharedAny = nil; 15 | static dispatch_once_t onceToken; 16 | dispatch_once(&onceToken, ^{ 17 | sharedAny = [self new]; 18 | 19 | }); 20 | return sharedAny; 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWBlock.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface KWBlock : NSObject 10 | 11 | #pragma mark - Initializing 12 | - (id)initWithBlock:(void (^)(void))block; 13 | 14 | + (id)blockWithBlock:(void (^)(void))block; 15 | 16 | #pragma mark - Calling Blocks 17 | 18 | - (void)call; 19 | 20 | @end 21 | 22 | #pragma mark - Creating Blocks 23 | 24 | KWBlock *theBlock(void (^block)(void)); 25 | KWBlock *lambda(void (^block)(void)); 26 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWBlock.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWBlock.h" 8 | 9 | @interface KWBlock() 10 | 11 | #pragma mark - Properties 12 | 13 | @property (nonatomic, readonly, copy) void (^block)(void); 14 | 15 | @end 16 | 17 | @implementation KWBlock 18 | 19 | #pragma mark - Initializing 20 | 21 | - (id)initWithBlock:(void (^)(void))block { 22 | self = [super init]; 23 | if (self) { 24 | _block = [block copy]; 25 | } 26 | 27 | return self; 28 | } 29 | 30 | + (id)blockWithBlock:(void (^)(void))aBlock { 31 | return [[self alloc] initWithBlock:aBlock]; 32 | } 33 | 34 | #pragma mark - Calling Blocks 35 | 36 | - (void)call { 37 | self.block(); 38 | } 39 | 40 | @end 41 | 42 | #pragma mark - Creating Blocks 43 | 44 | KWBlock *theBlock(void (^block)(void)) { 45 | return lambda(block); 46 | } 47 | 48 | KWBlock *lambda(void (^block)(void)) { 49 | return [KWBlock blockWithBlock:block]; 50 | } 51 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWCallSite.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface KWCallSite : NSObject 10 | 11 | #pragma mark - Initializing 12 | 13 | - (id)initWithFilename:(NSString *)aFilename lineNumber:(NSUInteger)aLineNumber; 14 | 15 | + (id)callSiteWithFilename:(NSString *)aFilename lineNumber:(NSUInteger)aLineNumber; 16 | 17 | #pragma mark - Properties 18 | 19 | @property (nonatomic, readonly, copy) NSString *filename; 20 | @property (nonatomic, readonly) NSUInteger lineNumber; 21 | 22 | #pragma mark - Identifying and Comparing 23 | 24 | - (BOOL)isEqualToCallSite:(KWCallSite *)aCallSite; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWCallSite.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWCallSite.h" 8 | 9 | @implementation KWCallSite 10 | 11 | #pragma mark - Initializing 12 | 13 | - (id)initWithFilename:(NSString *)aFilename lineNumber:(NSUInteger)aLineNumber { 14 | self = [super init]; 15 | if (self) { 16 | _filename = [aFilename copy]; 17 | _lineNumber = aLineNumber; 18 | } 19 | 20 | return self; 21 | } 22 | 23 | + (id)callSiteWithFilename:(NSString *)aFilename lineNumber:(NSUInteger)aLineNumber { 24 | return [[self alloc] initWithFilename:aFilename lineNumber:aLineNumber]; 25 | } 26 | 27 | #pragma mark - Identifying and Comparing 28 | 29 | - (NSUInteger)hash { 30 | return [[NSString stringWithFormat:@"%@%u", self.filename, (unsigned)self.lineNumber] hash]; 31 | } 32 | 33 | - (BOOL)isEqual:(id)anObject { 34 | if (![anObject isKindOfClass:[KWCallSite class]]) 35 | return NO; 36 | 37 | return [self isEqualToCallSite:anObject]; 38 | } 39 | 40 | - (BOOL)isEqualToCallSite:(KWCallSite *)aCallSite { 41 | return [self.filename isEqualToString:aCallSite.filename] && (self.lineNumber == aCallSite.lineNumber); 42 | } 43 | 44 | @end 45 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWCaptureSpy.h: -------------------------------------------------------------------------------- 1 | #import "KWMessageSpying.h" 2 | 3 | @interface KWCaptureSpy : NSObject 4 | 5 | @property (nonatomic, strong, readonly) id argument; 6 | 7 | - (id)initWithArgumentIndex:(NSUInteger)index; 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWCountType.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | enum { 10 | KWCountTypeExact, 11 | KWCountTypeAtLeast, 12 | KWCountTypeAtMost 13 | }; 14 | 15 | typedef NSUInteger KWCountType; 16 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWDeviceInfo.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface KWDeviceInfo : NSObject 10 | 11 | #pragma mark - Getting the Device Type 12 | 13 | + (BOOL)isSimulator; 14 | + (BOOL)isPhysical; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWDeviceInfo.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWDeviceInfo.h" 8 | 9 | #if TARGET_IPHONE_SIMULATOR 10 | 11 | #import 12 | 13 | #endif // #if TARGET_IPHONE_SIMULATOR 14 | 15 | @implementation KWDeviceInfo 16 | 17 | #pragma mark - Getting the Device Type 18 | 19 | + (BOOL)isSimulator { 20 | #if TARGET_IPHONE_SIMULATOR 21 | return YES; 22 | #else 23 | return NO; 24 | #endif // #if TARGET_IPHONE_SIMULATOR 25 | } 26 | 27 | + (BOOL)isPhysical { 28 | return ![self isSimulator]; 29 | } 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWExampleDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWExampleGroupDelegate.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 08/09/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class KWExample; 12 | @class KWFailure; 13 | 14 | @protocol KWExampleDelegate 15 | 16 | - (void)example:(KWExample *)example didFailWithFailure:(KWFailure *)failure; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWExampleNodeVisitor.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @class KWAfterAllNode; 10 | @class KWAfterEachNode; 11 | @class KWBeforeAllNode; 12 | @class KWBeforeEachNode; 13 | @class KWContextNode; 14 | @class KWLetNode; 15 | @class KWItNode; 16 | @class KWPendingNode; 17 | @class KWRegisterMatchersNode; 18 | 19 | @protocol KWExampleNodeVisitor 20 | 21 | #pragma mark - Visiting Nodes 22 | 23 | @optional 24 | 25 | - (void)visitContextNode:(KWContextNode *)aNode; 26 | - (void)visitRegisterMatchersNode:(KWRegisterMatchersNode *)aNode; 27 | - (void)visitBeforeAllNode:(KWBeforeAllNode *)aNode; 28 | - (void)visitAfterAllNode:(KWAfterAllNode *)aNode; 29 | - (void)visitBeforeEachNode:(KWBeforeEachNode *)aNode; 30 | - (void)visitAfterEachNode:(KWAfterEachNode *)aNode; 31 | - (void)visitLetNode:(KWLetNode *)aNode; 32 | - (void)visitItNode:(KWItNode *)aNode; 33 | - (void)visitPendingNode:(KWPendingNode *)aNode; 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWExampleSuite.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWExampleSuite.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 17/10/2011. 6 | // Copyright (c) 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWExampleNodeVisitor.h" 11 | 12 | @class KWContextNode; 13 | @class KWExample; 14 | 15 | @interface KWExampleSuite : NSObject 16 | 17 | - (id)initWithRootNode:(KWContextNode *)contextNode; 18 | - (void)addExample:(KWExample *)example; 19 | - (void)markLastExampleAsLastInContext:(KWContextNode *)context; 20 | 21 | @property (nonatomic, readonly) NSMutableArray *examples; 22 | 23 | #pragma mark - Example selector names 24 | 25 | - (NSString *)nextUniqueSelectorName:(NSString *)name; 26 | 27 | @end 28 | 29 | @interface NSInvocation (KWExampleGroup) 30 | @property (nonatomic, setter = kw_setExample:) KWExample *kw_example; 31 | @end 32 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWExpectationType.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | enum { 10 | KWExpectationTypeShould, 11 | KWExpectationTypeShouldNot, 12 | KWExpectationTypeMaybe 13 | }; 14 | 15 | typedef NSUInteger KWExpectationType; 16 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWFailure.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @class KWCallSite; 10 | 11 | @interface KWFailure : NSObject 12 | 13 | #pragma mark - Initializing 14 | 15 | - (id)initWithCallSite:(KWCallSite *)aCallSite message:(NSString *)aMessage; 16 | - (id)initWithCallSite:(KWCallSite *)aCallSite format:(NSString *)format, ...; 17 | 18 | + (id)failureWithCallSite:(KWCallSite *)aCallSite message:(NSString *)aMessage; 19 | + (id)failureWithCallSite:(KWCallSite *)aCallSite format:(NSString *)format, ...; 20 | 21 | #pragma mark - Properties 22 | 23 | @property (nonatomic, readonly) NSString *message; 24 | @property (nonatomic, weak, readonly) KWCallSite *callSite; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWFormatter.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface KWFormatter : NSObject 10 | 11 | #pragma mark - Getting Descriptions 12 | 13 | + (NSString *)formatObject:(id)anObject; 14 | + (NSString *)formatObjectIncludingClass:(id)anObject; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWFutureObject.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWFutureObject.h 3 | // iOSFalconCore 4 | // 5 | // Created by Luke Redpath on 13/01/2011. 6 | // Copyright 2011 LJR Software Limited. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef id (^KWFutureObjectBlock)(void); 12 | 13 | @interface KWFutureObject : NSObject 14 | 15 | + (id)objectWithObjectPointer:(id *)pointer; 16 | + (id)futureObjectWithBlock:(KWFutureObjectBlock)block; 17 | - (id)initWithBlock:(KWFutureObjectBlock)aBlock; 18 | - (id)object; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWFutureObject.m: -------------------------------------------------------------------------------- 1 | // 2 | // KWFutureObject.m 3 | // iOSFalconCore 4 | // 5 | // Created by Luke Redpath on 13/01/2011. 6 | // Copyright 2011 LJR Software Limited. All rights reserved. 7 | // 8 | 9 | #import "KWFutureObject.h" 10 | 11 | @interface KWFutureObject() 12 | 13 | @property (nonatomic, strong) KWFutureObjectBlock block; 14 | 15 | @end 16 | 17 | @implementation KWFutureObject 18 | 19 | + (id)objectWithObjectPointer:(id *)pointer { 20 | return [self futureObjectWithBlock:^{ return *pointer; }]; 21 | } 22 | 23 | + (id)futureObjectWithBlock:(KWFutureObjectBlock)block { 24 | return [[self alloc] initWithBlock:block]; 25 | } 26 | 27 | - (id)initWithBlock:(KWFutureObjectBlock)aBlock { 28 | self = [super init]; 29 | if (self) { 30 | _block = [aBlock copy]; 31 | } 32 | return self; 33 | } 34 | 35 | - (id)object; { 36 | return self.block(); 37 | } 38 | 39 | 40 | @end 41 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWInvocationCapturer.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @protocol KWInvocationCapturerDelegate; 10 | 11 | @interface KWInvocationCapturer : NSProxy 12 | 13 | #pragma mark - Initializing 14 | 15 | - (id)initWithDelegate:(id)aDelegate; 16 | - (id)initWithDelegate:(id)aDelegate userInfo:(NSDictionary *)aUserInfo; 17 | 18 | + (id)invocationCapturerWithDelegate:(id)aDelegate; 19 | + (id)invocationCapturerWithDelegate:(id)aDelegate userInfo:(NSDictionary *)aUserInfo; 20 | 21 | #pragma mark - Properties 22 | 23 | @property (nonatomic, weak, readonly) id delegate; 24 | @property (nonatomic, strong, readonly) NSDictionary *userInfo; 25 | 26 | @end 27 | 28 | @protocol KWInvocationCapturerDelegate 29 | 30 | #pragma mark - Capturing Invocations 31 | 32 | - (NSMethodSignature *)invocationCapturer:(KWInvocationCapturer *)anInvocationCapturer methodSignatureForSelector:(SEL)aSelector; 33 | - (void)invocationCapturer:(KWInvocationCapturer *)anInvocationCapturer didCaptureInvocation:(NSInvocation *)anInvocation; 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWLet.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #if __has_feature(objc_arc) 8 | # define KW_ARC_AUTORELEASE(obj) obj 9 | #else 10 | # define KW_ARC_AUTORELEASE(obj) [obj autorelease] 11 | #endif 12 | 13 | #define KW_LET_REF(var) \ 14 | (__autoreleasing id *) \ 15 | ( (void *(^)(void)) KW_ARC_AUTORELEASE([^{ void *ref = &var; return ref; } copy]) )() 16 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatching.h" 9 | 10 | @interface KWMatcher : NSObject 11 | 12 | #pragma mark - Initializing 13 | 14 | - (id)initWithSubject:(id)anObject; 15 | 16 | + (id)matcherWithSubject:(id)anObject; 17 | 18 | #pragma mark - Properties 19 | 20 | @property (nonatomic, strong) id subject; 21 | 22 | #pragma mark - Getting Matcher Strings 23 | 24 | + (NSArray *)matcherStrings; 25 | 26 | #pragma mark - Getting Matcher Compatability 27 | 28 | + (BOOL)canMatchSubject:(id)anObject; 29 | 30 | #pragma mark - Matching 31 | 32 | - (BOOL)evaluate; 33 | 34 | #pragma mark - Getting Failure Messages 35 | 36 | - (NSString *)failureMessageForShould; 37 | - (NSString *)failureMessageForShouldNot; 38 | 39 | @end 40 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWMatcherFactory.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatching.h" 9 | 10 | @class KWFailure; 11 | @class KWMatcher; 12 | @class KWUserDefinedMatcherBuilder; 13 | 14 | @interface KWMatcherFactory : NSObject 15 | 16 | #pragma mark - Initializing 17 | 18 | - (id)init; 19 | 20 | #pragma mark - Properties 21 | 22 | @property (nonatomic, readonly) NSArray *registeredMatcherClasses; 23 | 24 | #pragma mark - Registering Matcher Classes 25 | 26 | - (void)registerMatcherClass:(Class)aClass; 27 | - (void)registerMatcherClassesWithNamespacePrefix:(NSString *)aNamespacePrefix; 28 | 29 | #pragma mark - Getting Method Signatures 30 | 31 | - (NSMethodSignature *)methodSignatureForMatcherSelector:(SEL)aSelector; 32 | 33 | #pragma mark - Getting Matchers 34 | 35 | - (KWMatcher *)matcherFromInvocation:(NSInvocation *)anInvocation subject:(id)subject; 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWMatchers.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWMatchers.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 17/06/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class KWUserDefinedMatcherBuilder; 12 | 13 | typedef void (^KWMatchersBuildingBlock)(KWUserDefinedMatcherBuilder *matcherBuilder); 14 | 15 | @class KWUserDefinedMatcher; 16 | 17 | @interface KWMatchers : NSObject 18 | 19 | + (id)matchers; 20 | 21 | #pragma mark - Defining Matchers 22 | 23 | + (void)defineMatcher:(NSString *)selectorString as:(KWMatchersBuildingBlock)block; 24 | - (void)defineMatcher:(NSString *)selectorString as:(KWMatchersBuildingBlock)block; 25 | - (void)addUserDefinedMatcherBuilder:(KWUserDefinedMatcherBuilder *)builder; 26 | 27 | #pragma mark - Building Matchers 28 | 29 | - (KWUserDefinedMatcher *)matcherForSelector:(SEL)selector subject:(id)subject; 30 | @end 31 | 32 | void KWDefineMatchers(NSString *selectorString, KWMatchersBuildingBlock block); 33 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWMatching.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @protocol KWMatching 10 | 11 | #pragma mark - Initializing 12 | 13 | - (id)initWithSubject:(id)anObject; 14 | 15 | #pragma mark - Getting Matcher Strings 16 | 17 | + (NSArray *)matcherStrings; 18 | 19 | #pragma mark - Getting Matcher Compatability 20 | 21 | + (BOOL)canMatchSubject:(id)anObject; 22 | 23 | #pragma mark - Matching 24 | 25 | @optional 26 | 27 | - (BOOL)isNilMatcher; 28 | - (BOOL)shouldBeEvaluatedAtEndOfExample; 29 | - (BOOL)willEvaluateMultipleTimes; 30 | - (void)setWillEvaluateMultipleTimes:(BOOL)shouldEvaluateMultipleTimes; 31 | - (void)setWillEvaluateAgainstNegativeExpectation:(BOOL)willEvaluateAgainstNegativeExpectation; 32 | 33 | @required 34 | 35 | - (BOOL)evaluate; 36 | 37 | #pragma mark - Getting Failure Messages 38 | 39 | - (NSString *)failureMessageForShould; 40 | - (NSString *)failureMessageForShouldNot; 41 | 42 | @end 43 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWMessageSpying.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @protocol KWMessageSpying 10 | 11 | #pragma mark - Spying on Messages 12 | 13 | - (void)object:(id)anObject didReceiveInvocation:(NSInvocation *)anInvocation; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWNull.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | // KWNull exists to represent the same thing as NSNull, except that Kiwi needs 10 | // to distinguish between null singletons used internally and those a user 11 | // is using as an object parameter. 12 | @interface KWNull : NSObject 13 | 14 | #pragma mark - Initializing 15 | 16 | + (id)null; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWNull.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWNull.h" 8 | 9 | @implementation KWNull 10 | 11 | #pragma mark - Initializing 12 | 13 | 14 | + (id)null { 15 | static KWNull *sharedNull = nil; 16 | static dispatch_once_t onceToken; 17 | dispatch_once(&onceToken, ^{ 18 | sharedNull = [self new]; 19 | 20 | }); 21 | 22 | return sharedNull; 23 | } 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWObjCUtilities.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | #pragma mark - Objective-C Type Utilities 10 | 11 | BOOL KWObjCTypeEqualToObjCType(const char *firstObjCType, const char *secondObjCType); 12 | BOOL KWObjCTypeIsNumeric(const char *objCType); 13 | BOOL KWObjCTypeIsFloatingPoint(const char *objCType); 14 | BOOL KWObjCTypeIsIntegral(const char *objCType); 15 | BOOL KWObjCTypeIsSignedIntegral(const char *objCType); 16 | BOOL KWObjCTypeIsUnsignedIntegral(const char *objCType); 17 | BOOL KWObjCTypeIsBoolean(const char *objCType); 18 | BOOL KWObjCTypeIsObject(const char *objCType); 19 | BOOL KWObjCTypeIsCharString(const char *objCType); 20 | BOOL KWObjCTypeIsClass(const char *objCType); 21 | BOOL KWObjCTypeIsSelector(const char *objCType); 22 | BOOL KWObjCTypeIsPointerToType(const char *objCType); 23 | BOOL KWObjCTypeIsPointerLike(const char *objCType); 24 | BOOL KWObjCTypeIsUnknown(const char *objCType); 25 | BOOL KWObjCTypeIsBlock(const char *objCType); 26 | 27 | NSUInteger KWObjCTypeLength(const char *objCType); 28 | 29 | #pragma mark - Selector Utlities 30 | 31 | NSUInteger KWSelectorParameterCount(SEL selector); 32 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWProbe.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWProbe.h 3 | // iOSFalconCore 4 | // 5 | // Created by Luke Redpath on 13/01/2011. 6 | // Copyright 2011 LJR Software Limited. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @protocol KWProbe 12 | - (BOOL)isSatisfied; 13 | - (void)sample; 14 | @end 15 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWProbePoller.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWProbePoller.h 3 | // iOSFalconCore 4 | // 5 | // Created by Luke Redpath on 13/01/2011. 6 | // Copyright 2011 LJR Software Limited. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWProbe.h" 11 | 12 | #define kKW_DEFAULT_PROBE_DELAY 0.1 13 | 14 | @interface KWProbePoller : NSObject 15 | 16 | - (id)initWithTimeout:(NSTimeInterval)theTimeout delay:(NSTimeInterval)theDelay shouldWait:(BOOL)wait; 17 | - (BOOL)check:(id)probe; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWReporting.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @class KWFailure; 10 | 11 | @protocol KWReporting 12 | 13 | #pragma mark - Reporting Failures 14 | 15 | - (void)reportFailure:(KWFailure *)failure; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWSpec.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import 9 | #import "KWExpectationType.h" 10 | #import "KWVerifying.h" 11 | #import "KWExampleDelegate.h" 12 | 13 | @class KWCallSite; 14 | 15 | @interface KWSpec : XCTestCase 16 | 17 | #pragma mark - Adding Verifiers 18 | 19 | + (id)addVerifier:(id)aVerifier; 20 | + (id)addExistVerifierWithExpectationType:(KWExpectationType)anExpectationType callSite:(KWCallSite *)aCallSite; 21 | + (id)addMatchVerifierWithExpectationType:(KWExpectationType)anExpectationType callSite:(KWCallSite *)aCallSite; 22 | + (id)addAsyncVerifierWithExpectationType:(KWExpectationType)anExpectationType callSite:(KWCallSite *)aCallSite timeout:(NSTimeInterval)timeout shouldWait:(BOOL)shouldWait; 23 | 24 | #pragma mark - Building Example Groups 25 | 26 | + (NSString *)file; 27 | + (void)buildExampleGroups; 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWStringUtilities.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | #pragma mark - Checking for Case Separated Words 10 | 11 | BOOL KWStringHasWordPrefix(NSString *string, NSString *prefix); 12 | BOOL KWStringHasStrictWordPrefix(NSString *string, NSString *prefix); 13 | BOOL KWStringHasWord(NSString *string, NSString *word); 14 | 15 | #pragma mark - Getting Type Encodings 16 | 17 | NSString *KWEncodingWithObjCTypes(const char *firstType, ...) NS_REQUIRES_NIL_TERMINATION; 18 | NSString *KWEncodingForVoidMethod(void); 19 | NSString *KWEncodingForDefaultMethod(void); 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWSymbolicator.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWSymbolicator.h 3 | // Kiwi 4 | // 5 | // Created by Jerry Marino on 4/28/13. 6 | // Copyright (c) 2013 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | long kwCallerAddress(void); 12 | 13 | @interface NSString (KWShellCommand) 14 | 15 | + (NSString *)stringWithShellCommand:(NSString *)command arguments:(NSArray *)arguments; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWWorkarounds.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | #if KW_TARGET_HAS_INVOCATION_EXCEPTION_BUG 10 | 11 | #pragma mark - Invocation Exception Bug Workaround 12 | 13 | // See KiwiConfiguration.h for notes. 14 | void KWSetExceptionFromAcrossInvocationBoundary(NSException *anException); 15 | NSException *KWGetAndClearExceptionFromAcrossInvocationBoundary(void); 16 | 17 | #endif // #if KW_TARGET_HAS_INVOCATION_EXCEPTION_BUG 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWWorkarounds.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWWorkarounds.h" 8 | 9 | #if KW_TARGET_HAS_INVOCATION_EXCEPTION_BUG 10 | 11 | static NSException *KWExceptionAcrossInvokeBoundary = nil; 12 | 13 | void KWSetExceptionFromAcrossInvocationBoundary(NSException *anException) { 14 | if (KWExceptionAcrossInvokeBoundary != nil) 15 | return; 16 | 17 | KWExceptionAcrossInvokeBoundary = anException; 18 | } 19 | 20 | NSException *KWGetAndClearExceptionFromAcrossInvocationBoundary(void) { 21 | NSException *exception = KWExceptionAcrossInvokeBoundary; 22 | KWExceptionAcrossInvokeBoundary = nil; 23 | return exception; 24 | } 25 | 26 | #endif // #if KW_TARGET_HAS_INVOCATION_EXCEPTION_BUG 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KiwiBlockMacros.h: -------------------------------------------------------------------------------- 1 | // 2 | // KiwiBlockMacros.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 11/07/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | // user defined matchers 10 | #define registerMatcher(name) \ 11 | \ 12 | @interface NSObject (KWUserDefinedMatchersDefinitions) \ 13 | - (void)name; \ 14 | @end \ 15 | 16 | #define defineMatcher(...) KWDefineMatchers(__VA_ARGS__) 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KiwiConfiguration.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | // As of iPhone SDK 4 GM, exceptions thrown across an NSInvocation -invoke or 8 | // forwardInvocation: boundary in the simulator will terminate the app instead 9 | // of being caught in @catch blocks from the caller side of the -invoke. Kiwi 10 | // tries to handle this by storing the first exception that it would have 11 | // otherwise thrown in a nasty global that callers can look for and handle. 12 | // (Buggy termination is less desirable than global variables). 13 | // 14 | // Obviously, this can only handles cases where Kiwi itself would have raised 15 | // an exception. 16 | #if TARGET_IPHONE_SIMULATOR 17 | #define KW_TARGET_HAS_INVOCATION_EXCEPTION_BUG 1 18 | #endif 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSInvocation+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface NSInvocation(KiwiAdditions) 10 | 11 | #pragma mark - Creating NSInvocation Objects 12 | 13 | + (NSInvocation *)invocationWithTarget:(id)anObject selector:(SEL)aSelector; 14 | + (NSInvocation *)invocationWithTarget:(id)anObject selector:(SEL)aSelector messageArguments:(const void *)firstBytes, ...; 15 | 16 | #pragma mark - Accessing Message Arguments 17 | 18 | // Message arguments are invocation arguments that begin after the target and selector arguments. These methods provide 19 | // convenient ways to access them. 20 | 21 | - (NSData *)messageArgumentDataAtIndex:(NSUInteger)anIndex; 22 | - (void)getMessageArgument:(void *)buffer atIndex:(NSUInteger)anIndex; 23 | - (void)setMessageArgument:(const void *)bytes atIndex:(NSUInteger)anIndex; 24 | - (void)setMessageArguments:(const void *)firstBytes, ...; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSMethodSignature+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface NSMethodSignature(KiwiAdditions) 10 | 11 | #pragma mark - Getting Information on Message Arguments 12 | 13 | - (NSUInteger)numberOfMessageArguments; 14 | - (const char *)messageArgumentTypeAtIndex:(NSUInteger)anIndex; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSMethodSignature+KiwiAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "NSMethodSignature+KiwiAdditions.h" 8 | 9 | @implementation NSMethodSignature(KiwiAdditions) 10 | 11 | #pragma mark - Getting Information on Message Arguments 12 | 13 | - (NSUInteger)numberOfMessageArguments { 14 | return [self numberOfArguments] - 2; 15 | } 16 | 17 | - (const char *)messageArgumentTypeAtIndex:(NSUInteger)anIndex { 18 | return [self getArgumentTypeAtIndex:anIndex + 2]; 19 | } 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSNumber+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface NSNumber(KiwiAdditions) 10 | 11 | #pragma mark - Creating Numbers 12 | 13 | + (id)numberWithBytes:(const void *)bytes objCType:(const char *)anObjCType; 14 | + (id)numberWithBoolBytes:(const void *)bytes; 15 | + (id)numberWithStdBoolBytes:(const void *)bytes; 16 | + (id)numberWithCharBytes:(const void *)bytes; 17 | + (id)numberWithDoubleBytes:(const void *)bytes; 18 | + (id)numberWithFloatBytes:(const void *)bytes; 19 | + (id)numberWithIntBytes:(const void *)bytes; 20 | + (id)numberWithIntegerBytes:(const void *)bytes; 21 | + (id)numberWithLongBytes:(const void *)bytes; 22 | + (id)numberWithLongLongBytes:(const void *)bytes; 23 | + (id)numberWithShortBytes:(const void *)bytes; 24 | + (id)numberWithUnsignedCharBytes:(const void *)bytes; 25 | + (id)numberWithUnsignedIntBytes:(const void *)bytes; 26 | + (id)numberWithUnsignedIntegerBytes:(const void *)bytes; 27 | + (id)numberWithUnsignedLongBytes:(const void *)bytes; 28 | + (id)numberWithUnsignedLongLongBytes:(const void *)bytes; 29 | + (id)numberWithUnsignedShortBytes:(const void *)bytes; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSObject+KiwiSpyAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @class KWCaptureSpy; 10 | 11 | @protocol KiwiSpyAdditions 12 | 13 | - (KWCaptureSpy *)captureArgument:(SEL)selector atIndex:(NSUInteger)index; 14 | + (KWCaptureSpy *)captureArgument:(SEL)selector atIndex:(NSUInteger)index; 15 | 16 | @end 17 | 18 | @interface NSObject (KiwiSpyAdditions) 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSObject+KiwiSpyAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "NSObject+KiwiSpyAdditions.h" 8 | 9 | #import "KWCaptureSpy.h" 10 | #import "KWMessagePattern.h" 11 | #import "NSObject+KiwiStubAdditions.h" 12 | 13 | @implementation NSObject (KiwiSpyAdditions) 14 | 15 | - (KWCaptureSpy *)captureArgument:(SEL)selector atIndex:(NSUInteger)index { 16 | KWCaptureSpy *spy = [[KWCaptureSpy alloc] initWithArgumentIndex:index]; 17 | KWMessagePattern *pattern = [[KWMessagePattern alloc] initWithSelector:selector]; 18 | [self addMessageSpy:spy forMessagePattern:pattern]; 19 | return spy; 20 | } 21 | 22 | + (KWCaptureSpy *)captureArgument:(SEL)selector atIndex:(NSUInteger)index { 23 | KWCaptureSpy *spy = [[KWCaptureSpy alloc] initWithArgumentIndex:index]; 24 | KWMessagePattern *pattern = [[KWMessagePattern alloc] initWithSelector:selector]; 25 | [self addMessageSpy:spy forMessagePattern:pattern]; 26 | return spy; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSObject+KiwiVerifierAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @protocol KWVerifying; 10 | 11 | @interface NSObject(KiwiVerifierAdditions) 12 | 13 | #pragma mark - Attaching to Verifiers 14 | 15 | - (id)attachToVerifier:(id)aVerifier; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSObject+KiwiVerifierAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "NSObject+KiwiVerifierAdditions.h" 8 | #import "KWVerifying.h" 9 | 10 | @implementation NSObject(KiwiVerifierAdditions) 11 | 12 | #pragma mark - Attaching to Verifiers 13 | 14 | - (id)attachToVerifier:(id)aVerifier { 15 | [aVerifier setSubject:self]; 16 | return aVerifier; 17 | } 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSProxy+KiwiVerifierAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2013 Allen Ding. All rights reserved. 5 | // 6 | // Contributed by https://github.com/dwlnetnl 7 | // 8 | 9 | #import "KiwiConfiguration.h" 10 | 11 | @protocol KWVerifying; 12 | 13 | @interface NSProxy (KiwiVerifierAdditions) 14 | 15 | #pragma mark - Attaching to Verifiers 16 | 17 | - (id)attachToVerifier:(id)aVerifier; 18 | - (id)attachToVerifier:(id)firstVerifier verifier:(id)secondVerifier; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSProxy+KiwiVerifierAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2013 Allen Ding. All rights reserved. 5 | // 6 | // Contributed by https://github.com/dwlnetnl 7 | // 8 | 9 | #import "NSProxy+KiwiVerifierAdditions.h" 10 | #import "KWVerifying.h" 11 | 12 | @implementation NSProxy (KiwiVerifierAdditions) 13 | 14 | #pragma mark - Attaching to Verifiers 15 | 16 | - (id)attachToVerifier:(id)aVerifier { 17 | [aVerifier setSubject:self]; 18 | return aVerifier; 19 | } 20 | 21 | - (id)attachToVerifier:(id)firstVerifier verifier:(id)secondVerifier { 22 | [firstVerifier setSubject:self]; 23 | [secondVerifier setSubject:self]; 24 | return firstVerifier; 25 | } 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSValue+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface NSValue(KiwiAdditions) 10 | 11 | #pragma mark - Accessing Data 12 | 13 | - (NSData *)dataValue; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSValue+KiwiAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "NSValue+KiwiAdditions.h" 8 | #import "KWObjCUtilities.h" 9 | 10 | @implementation NSValue(KiwiAdditions) 11 | 12 | #pragma mark - Accessing Data 13 | 14 | - (NSData *)dataValue { 15 | NSUInteger length = KWObjCTypeLength([self objCType]); 16 | void *buffer = malloc(length); 17 | [self getValue:buffer]; 18 | NSData *data = [NSData dataWithBytes:buffer length:length]; 19 | free(buffer); 20 | return data; 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeBetweenMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeBetweenMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | // TODO: 'and' below is a reserved word in C++ 15 | - (void)beBetween:(id)aLowerEndpoint and:(id)anUpperEndpoint; 16 | - (void)beInTheIntervalFrom:(id)aLowerEndpoint to:(id)anUpperEndpoint; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeEmptyMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeEmptyMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beEmpty; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeIdenticalToMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeIdenticalToMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beIdenticalTo:(id)anObject; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeKindOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeKindOfClassMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beKindOfClass:(Class)aClass; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeMemberOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeMemberOfClassMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beMemberOfClass:(Class)aClass; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeSubclassOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeSubclassOfClassMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beSubclassOfClass:(Class)aClass; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeTrueMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeTrueMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beTrue; 15 | - (void)beFalse; 16 | - (void)beYes; 17 | - (void)beNo; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeWithinMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeWithinMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beWithin:(id)aDistance of:(id)aValue; 15 | - (void)equal:(double)aValue withDelta:(double)aDelta; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeZeroMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeZeroMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beZero; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBlockRaiseMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBlockRaiseMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)raise; 15 | - (void)raiseWithName:(NSString *)aName; 16 | - (void)raiseWithReason:(NSString *)aReason; 17 | - (void)raiseWithName:(NSString *)aName reason:(NSString *)aReason; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWChangeMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWChangeMatcher.h 3 | // Kiwi 4 | // 5 | // Copyright (c) 2013 Eloy Durán . 6 | // All rights reserved. 7 | // 8 | 9 | #import "KWMatcher.h" 10 | 11 | typedef NSInteger (^KWChangeMatcherCountBlock)(); 12 | 13 | @interface KWChangeMatcher : KWMatcher 14 | 15 | // Expect _any_ change. 16 | - (void)change:(KWChangeMatcherCountBlock)countBlock; 17 | 18 | // Expect changes by a specific amount. 19 | - (void)change:(KWChangeMatcherCountBlock)countBlock by:(NSInteger)expectedDifference; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWConformToProtocolMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWConformToProtocolMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)conformToProtocol:(Protocol *)aProtocol; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWContainMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | #import "KWMatchVerifier.h" 10 | 11 | @interface KWContainMatcher : KWMatcher 12 | 13 | #pragma mark - Configuring Matchers 14 | 15 | - (void)contain:(id)anObject; 16 | - (void)containObjectsInArray:(NSArray *)anArray; 17 | 18 | @end 19 | 20 | @interface KWMatchVerifier(KWContainMatcherAdditions) 21 | 22 | #pragma mark - Verifying 23 | 24 | - (void)containObjects:(id)firstObject, ... NS_REQUIRES_NIL_TERMINATION; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWEqualMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWEqualMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)equal:(id)anObject; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWGenericMatchEvaluator.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWGenericMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Allen Ding on 1/31/13. 6 | // Copyright (c) 2013 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface KWGenericMatchEvaluator : NSObject 12 | 13 | + (BOOL)isGenericMatcher:(id)object; 14 | 15 | + (BOOL)genericMatcher:(id)matcher matches:(id)object; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWGenericMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWGenericMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 24/01/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWMatcher.h" 11 | 12 | @protocol KWGenericMatching 13 | 14 | - (BOOL)matches:(id)object; 15 | 16 | @end 17 | 18 | @interface KWGenericMatcher : KWMatcher 19 | 20 | #pragma mark - Configuring Matchers 21 | 22 | - (void)match:(id)aMatcher; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWGenericMatcher.m: -------------------------------------------------------------------------------- 1 | // 2 | // KWGenericMatcher.m 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 24/01/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import "KWGenericMatcher.h" 10 | #import "KWGenericMatchEvaluator.h" 11 | 12 | @interface KWGenericMatcher () 13 | 14 | @property (nonatomic, strong) id matcher; 15 | 16 | @end 17 | 18 | @implementation KWGenericMatcher 19 | 20 | #pragma mark - Matching 21 | 22 | - (BOOL)evaluate { 23 | return [KWGenericMatchEvaluator genericMatcher:self.matcher matches:self.subject]; 24 | } 25 | 26 | - (NSString *)failureMessageForShould { 27 | return [NSString stringWithFormat:@"expected subject to match %@", self.matcher]; 28 | } 29 | 30 | - (NSString *)description 31 | { 32 | return [NSString stringWithFormat:@"match %@", [self.matcher description]]; 33 | } 34 | 35 | #pragma mark - Getting Matcher Strings 36 | 37 | + (NSArray *)matcherStrings { 38 | return @[@"match:"]; 39 | } 40 | 41 | #pragma mark - Configuring Matchers 42 | 43 | - (void)match:(id)aMatcher; 44 | { 45 | self.matcher = aMatcher; 46 | } 47 | 48 | @end 49 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWGenericMatchingAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+KiwiAdditions.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 24/01/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSObject (KiwiGenericMatchingAdditions) 12 | 13 | - (BOOL)isEqualOrMatches:(id)object DEPRECATED_ATTRIBUTE; 14 | 15 | @end 16 | 17 | @interface NSArray (KiwiGenericMatchingAdditions) 18 | 19 | - (BOOL)containsObjectEqualToOrMatching:(id)object DEPRECATED_ATTRIBUTE; 20 | - (BOOL)containsObjectMatching:(id)matcher DEPRECATED_ATTRIBUTE; 21 | 22 | @end 23 | 24 | @interface NSSet (KiwiGenericMatchingAdditions) 25 | 26 | - (BOOL)containsObjectEqualToOrMatching:(id)object DEPRECATED_ATTRIBUTE; 27 | 28 | @end 29 | 30 | @interface NSOrderedSet (KiwiGenericMatchingAdditions) 31 | 32 | - (BOOL)containsObjectEqualToOrMatching:(id)object DEPRECATED_ATTRIBUTE; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWHaveValueMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWHaveValueMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 24/01/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWMatcher.h" 11 | 12 | @interface KWHaveValueMatcher : KWMatcher 13 | 14 | #pragma mark - Configuring Matchers 15 | 16 | - (void)haveValue:(id)value forKey:(NSString *)key; 17 | - (void)haveValue:(id)value forKeyPath:(NSString *)keyPath; 18 | - (void)haveValueForKey:(NSString *)key; 19 | - (void)haveValueForKeyPath:(NSString *)keyPath; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWInequalityMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWInequalityMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beLessThan:(id)aValue; 15 | - (void)beLessThanOrEqualTo:(id)aValue; 16 | - (void)beGreaterThan:(id)aValue; 17 | - (void)beGreaterThanOrEqualTo:(id)aValue; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWNilMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWBeNilMatcher.h 3 | // iOSFalconCore 4 | // 5 | // Created by Luke Redpath on 14/01/2011. 6 | // Copyright 2011 LJR Software Limited. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWMatcher.h" 11 | 12 | @interface KWNilMatcher : KWMatcher 13 | 14 | - (void)beNil; 15 | - (void)beNonNil; 16 | 17 | - (void)beNil:(BOOL)workaroundArgument; 18 | - (void)beNonNil:(BOOL)workaroundArgument; 19 | 20 | + (BOOL)verifyNilSubject; 21 | + (BOOL)verifyNonNilSubject; 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWNotificationMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWNotificationMatcher.h 3 | // 4 | // Created by Paul Zabelin on 7/12/12. 5 | // Copyright (c) 2012 Blazing Cloud, Inc. All rights reserved. 6 | // 7 | 8 | #import "KWMatcher.h" 9 | 10 | typedef void (^PostedNotificationBlock)(NSNotification* note); 11 | 12 | @interface KWNotificationMatcher : KWMatcher 13 | 14 | - (void)bePosted; 15 | - (void)bePostedWithObject:(id)object; 16 | - (void)bePostedWithUserInfo:(NSDictionary *)userInfo; 17 | - (void)bePostedWithObject:(id)object andUserInfo:(NSDictionary *)userInfo; 18 | - (void)bePostedEvaluatingBlock:(PostedNotificationBlock)block; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWRegularExpressionPatternMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWRegularExpressionPatternMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Kristopher Johnson on 4/11/13. 6 | // Copyright (c) 2013 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import "KiwiConfiguration.h" 10 | #import "KWMatcher.h" 11 | 12 | @interface KWRegularExpressionPatternMatcher : KWMatcher 13 | 14 | - (void)matchPattern:(NSString *)pattern; 15 | 16 | - (void)matchPattern:(NSString *)pattern options:(NSRegularExpressionOptions)options; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWRespondToSelectorMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWRespondToSelectorMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)respondToSelector:(SEL)aSelector; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWStringContainsMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWStringContainsMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Stewart Gleadow on 7/06/12. 6 | // Copyright (c) 2012 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWGenericMatcher.h" 11 | 12 | @interface KWStringContainsMatcher : NSObject 13 | 14 | + (id)matcherWithSubstring:(NSString *)aSubstring DEPRECATED_ATTRIBUTE; 15 | - (id)initWithSubstring:(NSString *)aSubstring DEPRECATED_ATTRIBUTE; 16 | 17 | @end 18 | 19 | #define hasSubstring(substring) [KWStringContainsMatcher matcherWithSubstring:substring] 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWStringContainsMatcher.m: -------------------------------------------------------------------------------- 1 | // 2 | // StringContainsMatcher.m 3 | // Kiwi 4 | // 5 | // Created by Stewart Gleadow on 7/06/12. 6 | // Copyright (c) 2012 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import "KWStringContainsMatcher.h" 10 | 11 | @interface KWStringContainsMatcher(){} 12 | @property (nonatomic, copy) NSString *substring; 13 | @end 14 | 15 | @implementation KWStringContainsMatcher 16 | 17 | + (id)matcherWithSubstring:(NSString *)aSubstring { 18 | return [[self alloc] initWithSubstring:aSubstring]; 19 | } 20 | 21 | - (id)initWithSubstring:(NSString *)aSubstring { 22 | self = [super init]; 23 | if (self) { 24 | _substring = [aSubstring copy]; 25 | } 26 | return self; 27 | } 28 | 29 | 30 | - (BOOL)matches:(id)item { 31 | if (![item respondsToSelector:@selector(rangeOfString:)]) { 32 | return NO; 33 | } 34 | 35 | return [item rangeOfString:self.substring].location != NSNotFound; 36 | } 37 | 38 | - (NSString *)description { 39 | return [NSString stringWithFormat:@"a string with substring '%@'", self.substring]; 40 | } 41 | 42 | @end 43 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWStringPrefixMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // StringPrefixMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 17/01/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface KWStringPrefixMatcher : NSObject 12 | 13 | + (id)matcherWithPrefix:(NSString *)aPrefix; 14 | - (id)initWithPrefix:(NSString *)aPrefix; 15 | 16 | @end 17 | 18 | #define hasPrefix(prefix) [KWStringPrefixMatcher matcherWithPrefix:prefix] 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWStringPrefixMatcher.m: -------------------------------------------------------------------------------- 1 | // 2 | // StringPrefixMatcher.m 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 17/01/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import "KWStringPrefixMatcher.h" 10 | 11 | @interface KWStringPrefixMatcher(){} 12 | @property (nonatomic, copy) NSString *prefix; 13 | @end 14 | 15 | @implementation KWStringPrefixMatcher 16 | 17 | + (id)matcherWithPrefix:(NSString *)aPrefix { 18 | return [[self alloc] initWithPrefix:aPrefix]; 19 | } 20 | 21 | - (id)initWithPrefix:(NSString *)aPrefix { 22 | self = [super init]; 23 | if (self) { 24 | _prefix = [aPrefix copy]; 25 | } 26 | return self; 27 | } 28 | 29 | 30 | - (BOOL)matches:(id)item { 31 | if (![item respondsToSelector:@selector(hasPrefix:)]) 32 | return NO; 33 | 34 | return [item hasPrefix:self.prefix]; 35 | } 36 | 37 | - (NSString *)description { 38 | return [NSString stringWithFormat:@"a string with prefix '%@'", self.prefix]; 39 | } 40 | 41 | @end 42 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Mocking/NSObject+KiwiMockAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @protocol KiwiMockAdditions 10 | 11 | #pragma mark - Creating Mocks 12 | 13 | + (id)mock; 14 | + (id)mockWithName:(NSString *)aName; 15 | 16 | + (id)nullMock; 17 | + (id)nullMockWithName:(NSString *)aName; 18 | 19 | @end 20 | 21 | @interface NSObject(KiwiMockAdditions) 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Mocking/NSObject+KiwiMockAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "NSObject+KiwiMockAdditions.h" 8 | #import "KWMock.h" 9 | 10 | @implementation NSObject(KiwiMockAdditions) 11 | 12 | #pragma mark - Creating Mocks 13 | 14 | + (id)mock { 15 | return [KWMock mockForClass:[self class]]; 16 | } 17 | 18 | + (id)mockWithName:(NSString *)aName { 19 | return [KWMock mockWithName:aName forClass:[self class]]; 20 | } 21 | 22 | + (id)nullMock { 23 | return [KWMock nullMockForClass:[self class]]; 24 | } 25 | 26 | + (id)nullMockWithName:(NSString *)aName { 27 | return [KWMock nullMockWithName:aName forClass:[self class]]; 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWAfterAllNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlockNode.h" 9 | #import "KWExampleNode.h" 10 | 11 | @interface KWAfterAllNode : KWBlockNode 12 | 13 | #pragma mark - Initializing 14 | 15 | + (id)afterAllNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWAfterAllNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWAfterAllNode.h" 8 | #import "KWExampleNodeVisitor.h" 9 | 10 | @implementation KWAfterAllNode 11 | 12 | #pragma mark - Initializing 13 | 14 | + (id)afterAllNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block { 15 | return [[self alloc] initWithCallSite:aCallSite description:nil block:block]; 16 | } 17 | 18 | #pragma mark - Accepting Visitors 19 | 20 | - (void)acceptExampleNodeVisitor:(id)aVisitor { 21 | [aVisitor visitAfterAllNode:self]; 22 | } 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWAfterEachNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlockNode.h" 9 | #import "KWExampleNode.h" 10 | 11 | @interface KWAfterEachNode : KWBlockNode 12 | 13 | #pragma mark - Initializing 14 | 15 | + (id)afterEachNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWAfterEachNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWAfterEachNode.h" 8 | #import "KWExampleNodeVisitor.h" 9 | 10 | @implementation KWAfterEachNode 11 | 12 | #pragma mark - Initializing 13 | 14 | + (id)afterEachNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block { 15 | return [[self alloc] initWithCallSite:aCallSite description:nil block:block]; 16 | } 17 | 18 | #pragma mark - Accepting Visitors 19 | 20 | - (void)acceptExampleNodeVisitor:(id)aVisitor { 21 | [aVisitor visitAfterEachNode:self]; 22 | } 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBeforeAllNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlockNode.h" 9 | #import "KWExampleNode.h" 10 | 11 | @interface KWBeforeAllNode : KWBlockNode 12 | 13 | #pragma mark - Initializing 14 | 15 | + (id)beforeAllNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBeforeAllNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWBeforeAllNode.h" 8 | #import "KWExampleNodeVisitor.h" 9 | 10 | @implementation KWBeforeAllNode 11 | 12 | #pragma mark - Initializing 13 | 14 | + (id)beforeAllNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block { 15 | return [[self alloc] initWithCallSite:aCallSite description:nil block:block]; 16 | } 17 | 18 | #pragma mark - Accepting Visitors 19 | 20 | - (void)acceptExampleNodeVisitor:(id)aVisitor { 21 | [aVisitor visitBeforeAllNode:self]; 22 | } 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBeforeEachNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlockNode.h" 9 | #import "KWExampleNode.h" 10 | 11 | @interface KWBeforeEachNode : KWBlockNode 12 | 13 | #pragma mark - Initializing 14 | 15 | + (id)beforeEachNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBeforeEachNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWBeforeEachNode.h" 8 | #import "KWExampleNodeVisitor.h" 9 | 10 | @implementation KWBeforeEachNode 11 | 12 | #pragma mark - Initializing 13 | 14 | + (id)beforeEachNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block { 15 | return [[self alloc] initWithCallSite:aCallSite description:nil block:block]; 16 | } 17 | 18 | #pragma mark - Accepting Visitors 19 | 20 | - (void)acceptExampleNodeVisitor:(id)aVisitor { 21 | [aVisitor visitBeforeEachNode:self]; 22 | } 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBlockNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlock.h" 9 | 10 | @class KWCallSite; 11 | 12 | @interface KWBlockNode : NSObject 13 | 14 | #pragma mark - Initializing 15 | 16 | - (id)initWithCallSite:(KWCallSite *)aCallSite description:(NSString *)aDescription block:(void (^)(void))block; 17 | 18 | #pragma mark - Getting Call Sites 19 | 20 | @property (nonatomic, strong, readonly) KWCallSite *callSite; 21 | 22 | #pragma mark - Getting Descriptions 23 | 24 | @property (nonatomic, copy) NSString *description; 25 | 26 | #pragma mark - Getting Blocks 27 | 28 | @property (nonatomic, copy, readonly) void (^block)(void); 29 | 30 | #pragma mark - Performing blocks 31 | 32 | - (void)performBlock; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBlockNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWBlockNode.h" 8 | 9 | @implementation KWBlockNode 10 | 11 | @synthesize description = _description; 12 | 13 | #pragma mark - Initializing 14 | 15 | - (id)initWithCallSite:(KWCallSite *)aCallSite description:(NSString *)aDescription block:(void (^)(void))block { 16 | self = [super init]; 17 | if (self) { 18 | _callSite = aCallSite; 19 | _description = [aDescription copy]; 20 | _block = [block copy]; 21 | } 22 | 23 | return self; 24 | } 25 | 26 | - (void)performBlock { 27 | if (self.block != nil) { self.block(); } 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWExampleNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @class KWContextNode; 10 | @protocol KWExampleNodeVisitor; 11 | 12 | @protocol KWExampleNode 13 | 14 | #pragma mark - Accepting Visitors 15 | 16 | - (void)acceptExampleNodeVisitor:(id)aVisitor; 17 | 18 | @optional 19 | 20 | - (NSArray *)contextStack; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWItNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlockNode.h" 9 | #import "KWExampleNode.h" 10 | 11 | @class KWPendingNode; 12 | @class KWExample; 13 | @class KWContextNode; 14 | 15 | @interface KWItNode : KWBlockNode 16 | 17 | @property (nonatomic, strong) KWExample *example; 18 | @property (nonatomic, weak, readonly) KWContextNode *context; 19 | 20 | #pragma mark - Initializing 21 | 22 | + (id)itNodeWithCallSite:(KWCallSite *)aCallSite 23 | description:(NSString *)aDescription 24 | context:(KWContextNode *)context 25 | block:(void (^)(void))block; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWPendingNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWExampleNode.h" 9 | 10 | @class KWContextNode; 11 | @class KWCallSite; 12 | 13 | @interface KWPendingNode : NSObject 14 | 15 | @property (nonatomic, readonly, strong) KWContextNode *context; 16 | 17 | #pragma mark - Initializing 18 | 19 | - (id)initWithCallSite:(KWCallSite *)aCallSite context:(KWContextNode *)context description:(NSString *)aDescription; 20 | 21 | + (id)pendingNodeWithCallSite:(KWCallSite *)aCallSite context:(KWContextNode *)context description:(NSString *)aDescription; 22 | 23 | #pragma mark - Getting Call Sites 24 | 25 | @property (nonatomic, readonly) KWCallSite *callSite; 26 | 27 | #pragma mark - Getting Descriptions 28 | 29 | @property (readonly, copy) NSString *description; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWRegisterMatchersNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWExampleNode.h" 9 | 10 | @class KWCallSite; 11 | 12 | @interface KWRegisterMatchersNode : NSObject 13 | 14 | #pragma mark - Initializing 15 | 16 | - (id)initWithCallSite:(KWCallSite *)aCallSite namespacePrefix:(NSString *)aNamespacePrefix; 17 | 18 | + (id)registerMatchersNodeWithCallSite:(KWCallSite *)aCallSite namespacePrefix:(NSString *)aNamespacePrefix; 19 | 20 | #pragma mark - Getting Call Sites 21 | 22 | @property (nonatomic, readonly) KWCallSite *callSite; 23 | 24 | #pragma mark - Getting Namespace Prefixes 25 | 26 | @property (nonatomic, readonly) NSString *namespacePrefix; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWRegisterMatchersNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWRegisterMatchersNode.h" 8 | 9 | #import "KWCallSite.h" 10 | #import "KWExampleNodeVisitor.h" 11 | 12 | @implementation KWRegisterMatchersNode 13 | 14 | #pragma mark - Initializing 15 | 16 | - (id)initWithCallSite:(KWCallSite *)aCallSite namespacePrefix:(NSString *)aNamespacePrefix { 17 | self = [super init]; 18 | if (self) { 19 | _callSite = aCallSite; 20 | _namespacePrefix = [aNamespacePrefix copy]; 21 | } 22 | 23 | return self; 24 | } 25 | 26 | + (id)registerMatchersNodeWithCallSite:(KWCallSite *)aCallSite namespacePrefix:(NSString *)aNamespacePrefix { 27 | return [[self alloc] initWithCallSite:aCallSite namespacePrefix:aNamespacePrefix]; 28 | } 29 | 30 | #pragma mark - Accepting Visitors 31 | 32 | - (void)acceptExampleNodeVisitor:(id)aVisitor { 33 | [aVisitor visitRegisterMatchersNode:self]; 34 | } 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Verifiers/KWAsyncVerifier.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWAsyncVerifier.h 3 | // iOSFalconCore 4 | // 5 | // Created by Luke Redpath on 13/01/2011. 6 | // Copyright 2011 LJR Software Limited. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWMatchVerifier.h" 11 | #import "KWProbe.h" 12 | 13 | #define kKW_DEFAULT_PROBE_TIMEOUT 1.0 14 | 15 | @class KWAsyncMatcherProbe; 16 | 17 | 18 | @interface KWAsyncVerifier : KWMatchVerifier 19 | 20 | @property (nonatomic, assign) NSTimeInterval timeout; 21 | @property (nonatomic, assign) BOOL shouldWait; 22 | 23 | + (id)asyncVerifierWithExpectationType:(KWExpectationType)anExpectationType callSite:(KWCallSite *)aCallSite matcherFactory:(KWMatcherFactory *)aMatcherFactory reporter:(id)aReporter probeTimeout:(NSTimeInterval)probeTimeout shouldWait:(BOOL)shouldWait; 24 | - (void)verifyWithProbe:(KWAsyncMatcherProbe *)aProbe; 25 | 26 | @end 27 | 28 | 29 | @interface KWAsyncMatcherProbe : NSObject 30 | 31 | @property (nonatomic, assign) BOOL matchResult; 32 | @property (nonatomic, readonly) id matcher; 33 | 34 | - (id)initWithMatcher:(id)aMatcher; 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Verifiers/KWExistVerifier.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWExpectationType.h" 9 | #import "KWVerifying.h" 10 | 11 | @class KWCallSite; 12 | 13 | @protocol KWReporting; 14 | 15 | @interface KWExistVerifier : NSObject 16 | 17 | #pragma mark - Initializing 18 | 19 | - (id)initWithExpectationType:(KWExpectationType)anExpectationType callSite:(KWCallSite *)aCallSite reporter:(id)aReporter; 20 | 21 | + (id)existVerifierWithExpectationType:(KWExpectationType)anExpectationType callSite:(KWCallSite *)aCallSite reporter:(id)aReporter; 22 | 23 | #pragma mark - Properties 24 | 25 | @property (nonatomic, strong) id subject; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Verifiers/KWVerifying.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @class KWCallSite; 10 | 11 | @protocol KWVerifying 12 | 13 | @property (nonatomic, readonly) KWCallSite *callSite; 14 | 15 | - (NSString *)descriptionForAnonymousItNode; 16 | 17 | #pragma mark - Subjects 18 | 19 | @property (nonatomic, strong) id subject; 20 | 21 | #pragma mark - Ending Examples 22 | 23 | - (void)exampleWillEnd; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /Example/Pods/Manifest.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - HockeySDK (3.7.3): 3 | - HockeySDK/AllFeaturesLib (= 3.7.3) 4 | - HockeySDK/AllFeaturesLib (3.7.3) 5 | - Kiwi (2.3.1) 6 | - S2MToolbox (0.2.3): 7 | - S2MToolbox/Foundation (= 0.2.3) 8 | - S2MToolbox/UIKit (= 0.2.3) 9 | - S2MToolbox/DelegateDispatch (0.2.3) 10 | - S2MToolbox/Foundation (0.2.3) 11 | - S2MToolbox/HockeyApp (0.2.3): 12 | - HockeySDK (>= 3.6.4) 13 | - S2MToolbox/Kiwi (0.2.3): 14 | - Kiwi (~> 2.3.0) 15 | - S2MToolbox/LocalNotificationHelper (0.2.3) 16 | - S2MToolbox/QRCode (0.2.3) 17 | - S2MToolbox/ShopFinder (0.2.3) 18 | - S2MToolbox/UIKit (0.2.3) 19 | 20 | DEPENDENCIES: 21 | - S2MToolbox (from `../`) 22 | - S2MToolbox/DelegateDispatch (from `../`) 23 | - S2MToolbox/HockeyApp (from `../`) 24 | - S2MToolbox/Kiwi (from `../`) 25 | - S2MToolbox/LocalNotificationHelper (from `../`) 26 | - S2MToolbox/QRCode (from `../`) 27 | - S2MToolbox/ShopFinder (from `../`) 28 | 29 | EXTERNAL SOURCES: 30 | S2MToolbox: 31 | :path: ../ 32 | 33 | SPEC CHECKSUMS: 34 | HockeySDK: a0b915dc081f1ba67782a347220a8623dbe93b8a 35 | Kiwi: f038a6c61f7a9e4d7766bff5717aa3b3fdb75f55 36 | S2MToolbox: 6e8f8d43781403c7d83b306304bca28db0c47098 37 | 38 | COCOAPODS: 0.38.2 39 | -------------------------------------------------------------------------------- /Example/Pods/S2MToolbox/README.md: -------------------------------------------------------------------------------- 1 | S2M Toolbox for iOS 2 | =================== 3 | 4 | Here is a collection of useful code that can be used through iOS projects. 5 | 6 | **Note that all files are ARC only.** 7 | 8 | 9 | # INSTALL 10 | 11 | ## via git submodule 12 | 13 | * Add it by git 14 | 15 | ``` 16 | git submodule add https://github.com/sinnerschrader-mobile/s2m-toolbox-ios submodules/s2m-toolbox-ios 17 | ``` 18 | * Add the files you need to your xcode project. 19 | 20 | ## via Cocoapods 21 | 22 | * Add the following line to your podfile (includes all main categories in project): 23 | 24 | ``` 25 | pod 'S2MToolbox/Core', :podspec => 'https://raw.github.com/sinnerschrader-mobile/s2m-toolbox-ios/master/S2MToolbox.podspec' 26 | ``` 27 | 28 | For Categories for your tests, see the two following specs: 29 | 30 | ``` 31 | pod 'S2MToolbox/UnitTests', :podspec => 'https://raw.github.com/sinnerschrader-mobile/s2m-toolbox-ios/master/S2MToolbox.podspec' 32 | ``` 33 | 34 | ``` 35 | pod 'S2MToolbox/Kiwi', :podspec => 'https://raw.github.com/sinnerschrader-mobile/s2m-toolbox-ios/master/S2MToolbox.podspec' 36 | ``` 37 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Kiwi/Kiwi-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Kiwi.xcconfig" 2 | FRAMEWORK_SEARCH_PATHS = ${KIWI_FRAMEWORK_SEARCH_PATHS} 3 | FRAMEWORK_SEARCH_PATHS[sdk=iphoneos8.0] = ${KIWI_FRAMEWORK_SEARCH_PATHS} 4 | FRAMEWORK_SEARCH_PATHS[sdk=iphonesimulator8.0] = ${KIWI_FRAMEWORK_SEARCH_PATHS} 5 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 6 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/Kiwi" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/HockeySDK" "${PODS_ROOT}/Headers/Public/HockeySDK/HockeySDK" "${PODS_ROOT}/Headers/Public/Kiwi" "${PODS_ROOT}/Headers/Public/S2MToolbox" 7 | OTHER_LDFLAGS = ${KIWI_OTHER_LDFLAGS} 8 | PODS_ROOT = ${SRCROOT} 9 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Kiwi/Kiwi-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Kiwi : NSObject 3 | @end 4 | @implementation PodsDummy_Kiwi 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Kiwi/Kiwi-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | #import 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Kiwi/Kiwi.xcconfig: -------------------------------------------------------------------------------- 1 | KIWI_FRAMEWORK_SEARCH_PATHS = $(SDKROOT)/Developer/Library/Frameworks $(inherited) $(DEVELOPER_FRAMEWORKS_DIR) "$(SDKROOT)/Developer/Library/Frameworks" "$(PLATFORM_DIR)/Developer/Library/Frameworks" 2 | KIWI_FRAMEWORK_SEARCH_PATHS[sdk=iphoneos8.0] = $(inherited) $(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/Library/Frameworks 3 | KIWI_FRAMEWORK_SEARCH_PATHS[sdk=iphonesimulator8.0] = $(inherited) $(DEVELOPER_DIR)/Platforms/iPhoneSimulator.platform/Developer/Library/Frameworks 4 | KIWI_OTHER_LDFLAGS = -framework "XCTest" -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolbox-S2MToolbox/Pods-S2MToolbox-S2MToolbox-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-S2MToolbox-S2MToolbox.xcconfig" 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/S2MToolbox" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/HockeySDK" "${PODS_ROOT}/Headers/Public/HockeySDK/HockeySDK" "${PODS_ROOT}/Headers/Public/Kiwi" "${PODS_ROOT}/Headers/Public/S2MToolbox" 4 | PODS_ROOT = ${SRCROOT} 5 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolbox-S2MToolbox/Pods-S2MToolbox-S2MToolbox-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_S2MToolbox_S2MToolbox : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_S2MToolbox_S2MToolbox 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolbox-S2MToolbox/Pods-S2MToolbox-S2MToolbox-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolbox-S2MToolbox/Pods-S2MToolbox-S2MToolbox.xcconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/Pods/Target Support Files/Pods-S2MToolbox-S2MToolbox/Pods-S2MToolbox-S2MToolbox.xcconfig -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolbox/Pods-S2MToolbox-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_S2MToolbox : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_S2MToolbox 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolbox/Pods-S2MToolbox.debug.xcconfig: -------------------------------------------------------------------------------- 1 | FRAMEWORK_SEARCH_PATHS = "$(PODS_ROOT)/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework" 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/HockeySDK" "${PODS_ROOT}/Headers/Public/HockeySDK/HockeySDK" "${PODS_ROOT}/Headers/Public/Kiwi" "${PODS_ROOT}/Headers/Public/S2MToolbox" 4 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/HockeySDK" -isystem "${PODS_ROOT}/Headers/Public/HockeySDK/HockeySDK" -isystem "${PODS_ROOT}/Headers/Public/Kiwi" -isystem "${PODS_ROOT}/Headers/Public/S2MToolbox" 5 | OTHER_LDFLAGS = $(inherited) -ObjC -l"Pods-S2MToolbox-S2MToolbox" -l"c++" -framework "AssetsLibrary" -framework "CoreGraphics" -framework "CoreText" -framework "HockeySDK" -framework "MobileCoreServices" -framework "QuartzCore" -framework "QuickLook" -framework "Security" -framework "SystemConfiguration" -framework "UIKit" 6 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolbox/Pods-S2MToolbox.release.xcconfig: -------------------------------------------------------------------------------- 1 | FRAMEWORK_SEARCH_PATHS = "$(PODS_ROOT)/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework" 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/HockeySDK" "${PODS_ROOT}/Headers/Public/HockeySDK/HockeySDK" "${PODS_ROOT}/Headers/Public/Kiwi" "${PODS_ROOT}/Headers/Public/S2MToolbox" 4 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/HockeySDK" -isystem "${PODS_ROOT}/Headers/Public/HockeySDK/HockeySDK" -isystem "${PODS_ROOT}/Headers/Public/Kiwi" -isystem "${PODS_ROOT}/Headers/Public/S2MToolbox" 5 | OTHER_LDFLAGS = $(inherited) -ObjC -l"Pods-S2MToolbox-S2MToolbox" -l"c++" -framework "AssetsLibrary" -framework "CoreGraphics" -framework "CoreText" -framework "HockeySDK" -framework "MobileCoreServices" -framework "QuartzCore" -framework "QuickLook" -framework "Security" -framework "SystemConfiguration" -framework "UIKit" 6 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolboxTests-S2MToolbox/Pods-S2MToolboxTests-S2MToolbox-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-S2MToolboxTests-S2MToolbox.xcconfig" 2 | FRAMEWORK_SEARCH_PATHS = ${PODS_S_MTOOLBOXTESTS_S_MTOOLBOX_FRAMEWORK_SEARCH_PATHS} 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/S2MToolbox" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/HockeySDK" "${PODS_ROOT}/Headers/Public/HockeySDK/HockeySDK" "${PODS_ROOT}/Headers/Public/Kiwi" "${PODS_ROOT}/Headers/Public/S2MToolbox" 5 | OTHER_LDFLAGS = ${PODS_S_MTOOLBOXTESTS_S_MTOOLBOX_OTHER_LDFLAGS} 6 | PODS_ROOT = ${SRCROOT} 7 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolboxTests-S2MToolbox/Pods-S2MToolboxTests-S2MToolbox-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_S2MToolboxTests_S2MToolbox : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_S2MToolboxTests_S2MToolbox 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolboxTests-S2MToolbox/Pods-S2MToolboxTests-S2MToolbox-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolboxTests-S2MToolbox/Pods-S2MToolboxTests-S2MToolbox.xcconfig: -------------------------------------------------------------------------------- 1 | PODS_S_MTOOLBOXTESTS_S_MTOOLBOX_FRAMEWORK_SEARCH_PATHS = $(inherited) "$(SDKROOT)/Developer/Library/Frameworks" "$(PLATFORM_DIR)/Developer/Library/Frameworks" 2 | PODS_S_MTOOLBOXTESTS_S_MTOOLBOX_OTHER_LDFLAGS = -framework "XCTest" -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-S2MToolboxTests/Pods-S2MToolboxTests-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_S2MToolboxTests : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_S2MToolboxTests 5 | @end 6 | -------------------------------------------------------------------------------- /Example/S2MToolbox.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/S2MToolbox.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/S2MToolbox/Example/.DS_Store -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/LocalNotificatinHelper/S2MNotificationViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MNotificationViewController.h 3 | // S2MToolbox 4 | // 5 | // Created by ParkSanggeon on 22/01/15. 6 | // Copyright (c) 2015 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface S2MNotificationViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/S2MDelegate1ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MDelegate1ViewController.h 3 | // S2MToolbox 4 | // 5 | // Created by Nils Grabenhorst on 28/05/15. 6 | // Copyright (c) 2015 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "S2MDelegateDispatchSampleViewController.h" 11 | 12 | @interface S2MDelegate1ViewController : UIViewController 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/S2MDelegate1ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // S2MDelegate1ViewController.m 3 | // S2MToolbox 4 | // 5 | // Created by Nils Grabenhorst on 28/05/15. 6 | // Copyright (c) 2015 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import "S2MDelegate1ViewController.h" 10 | 11 | @interface S2MDelegate1ViewController () 12 | @property (weak, nonatomic) IBOutlet UILabel *label; 13 | @property (nonatomic) NSUInteger count; 14 | 15 | @end 16 | 17 | @implementation S2MDelegate1ViewController 18 | 19 | - (void)setCount:(NSUInteger)count 20 | { 21 | _count = count; 22 | self.label.text = [NSString stringWithFormat:@"%lu", (unsigned long)_count]; 23 | } 24 | 25 | - (void)viewController:(S2MDelegateDispatchSampleViewController *)viewController didUpdateTapCount:(NSUInteger)count 26 | { 27 | self.count = count; 28 | } 29 | 30 | - (void)viewDidLoad 31 | { 32 | [super viewDidLoad]; 33 | self.count = 0; 34 | } 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/S2MDelegate2ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MDelegate2ViewController.h 3 | // S2MToolbox 4 | // 5 | // Created by Nils Grabenhorst on 28/05/15. 6 | // Copyright (c) 2015 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "S2MDelegateDispatchSampleViewController.h" 11 | 12 | @interface S2MDelegate2ViewController : UIViewController 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/S2MDelegate2ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // S2MDelegate2ViewController.m 3 | // S2MToolbox 4 | // 5 | // Created by Nils Grabenhorst on 28/05/15. 6 | // Copyright (c) 2015 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import "S2MDelegate2ViewController.h" 10 | 11 | @interface S2MDelegate2ViewController () 12 | @property (weak, nonatomic) IBOutlet UILabel *label; 13 | @property (nonatomic) NSUInteger count; 14 | @end 15 | 16 | @implementation S2MDelegate2ViewController 17 | 18 | - (void)setCount:(NSUInteger)count 19 | { 20 | _count = count; 21 | 22 | NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init]; 23 | [numberFormatter setNumberStyle:NSNumberFormatterSpellOutStyle]; 24 | self.label.text = [NSString stringWithFormat:@"%@", [numberFormatter stringFromNumber:@(_count)]]; 25 | } 26 | 27 | - (void)viewController:(S2MDelegateDispatchSampleViewController *)viewController didUpdateTapCount:(NSUInteger)count 28 | { 29 | self.count = count; 30 | } 31 | 32 | - (void)viewDidLoad 33 | { 34 | [super viewDidLoad]; 35 | self.count = 0; 36 | } 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/S2MDelegateDispatchSampleViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MDelegateDispatchSampleViewController.h 3 | // S2MToolbox 4 | // 5 | // Created by Nils Grabenhorst on 28/05/15. 6 | // Copyright (c) 2015 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | @protocol S2MDelegateDispatcher; 11 | @protocol S2MViewControllerDelegate; 12 | 13 | @interface S2MDelegateDispatchSampleViewController : UIViewController 14 | @property (nonatomic, strong) id delegateDispatcher; 15 | @end 16 | 17 | 18 | 19 | 20 | @protocol S2MViewControllerDelegate 21 | - (void)viewController:(S2MDelegateDispatchSampleViewController *)viewController didUpdateTapCount:(NSUInteger)count; 22 | @end -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/S2MDelegateDispatchSampleViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // S2MDelegateDispatchSampleViewController.m 3 | // S2MToolbox 4 | // 5 | // Created by Nils Grabenhorst on 28/05/15. 6 | // Copyright (c) 2015 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import "S2MDelegateDispatchSampleViewController.h" 10 | #import "S2MDelegateDispatcher.h" 11 | 12 | @interface S2MDelegateDispatchSampleViewController () 13 | @property (nonatomic) NSUInteger tapCount; 14 | @end 15 | 16 | @implementation S2MDelegateDispatchSampleViewController 17 | 18 | - (IBAction)buttonTapped:(id)sender { 19 | ++self.tapCount; 20 | [self.delegateDispatcher viewController:self didUpdateTapCount:self.tapCount]; 21 | } 22 | 23 | - (void)awakeFromNib 24 | { 25 | [super awakeFromNib]; 26 | self.delegateDispatcher = (id)[[S2MDelegateDispatcher alloc] initWithDelegateProtocol:@protocol(S2MViewControllerDelegate)]; 27 | } 28 | 29 | - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 30 | { 31 | if ([segue.destinationViewController conformsToProtocol:@protocol(S2MViewControllerDelegate) ]) { 32 | [self.delegateDispatcher addDelegate:segue.destinationViewController]; 33 | } 34 | } 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/S2MHockeyViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MHockeyViewController.h 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 16/12/14. 6 | // Copyright (c) 2014 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface S2MHockeyViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/S2MHockeyViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // S2MHockeyViewController.m 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 16/12/14. 6 | // Copyright (c) 2014 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import "S2MHockeyViewController.h" 10 | 11 | #import "S2MAppDelegate.h" 12 | 13 | @interface S2MHockeyViewController () 14 | 15 | @end 16 | 17 | @implementation S2MHockeyViewController 18 | 19 | - (void)buttonTapped:(id)sender 20 | { 21 | // for example purpose only 22 | [((S2MAppDelegate*)[UIApplication sharedApplication].delegate) testCrash]; 23 | } 24 | 25 | - (void)viewDidLoad 26 | { 27 | [super viewDidLoad]; 28 | self.view.backgroundColor = [UIColor whiteColor]; 29 | 30 | self.title = @"HockeyApp"; 31 | UIButton* button = [self.view s2m_addButton]; 32 | [button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal]; 33 | [button setTitle:@"Tap to crash!!" forState:UIControlStateNormal]; 34 | [button sizeToFit]; 35 | [button s2m_addCenterInSuperViewConstraint]; 36 | [button addTarget:self action:@selector(buttonTapped:) forControlEvents:UIControlEventTouchUpInside]; 37 | } 38 | 39 | @end 40 | -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/S2MShopFinderSearchDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MShopFinderSearchDelegate.h 3 | // S2MToolboxApp 4 | // 5 | // Created by Joern Ehmann on 04/11/14. 6 | // Copyright (c) 2014 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | #import "S2MShopFinderController.h" 12 | 13 | //Meant for toolbox later on as Example Implementation 14 | @interface S2MShopFinderSearchDelegate : NSObject 15 | 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/S2MToolbox/Example/S2MViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MViewController.h 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 27/10/14. 6 | // Copyright (c) 2014 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface S2MViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/S2MToolbox/Images.xcassets/.DS_Store -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/icn_location_active.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x", 10 | "filename" : "icn_location_active@2x.png" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/icn_location_active.imageset/icn_location_active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/S2MToolbox/Images.xcassets/icn_location_active.imageset/icn_location_active@2x.png -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/icn_location_inactive.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x", 10 | "filename" : "icn_location_inactive@2x.png" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/icn_location_inactive.imageset/icn_location_inactive@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/S2MToolbox/Images.xcassets/icn_location_inactive.imageset/icn_location_inactive@2x.png -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/loading_indicator.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x", 10 | "filename" : "loading_indicator@2x.png" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/loading_indicator.imageset/loading_indicator@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/S2MToolbox/Images.xcassets/loading_indicator.imageset/loading_indicator@2x.png -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/pin_active.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x", 10 | "filename" : "pin_active@2x.png" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/pin_active.imageset/pin_active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/S2MToolbox/Images.xcassets/pin_active.imageset/pin_active@2x.png -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/pin_inactive.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x", 10 | "filename" : "pin_inactive@2x.png" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/pin_inactive.imageset/pin_inactive@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/S2MToolbox/Images.xcassets/pin_inactive.imageset/pin_inactive@2x.png -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/qr.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x", 10 | "filename" : "qr@2x.png" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /Example/S2MToolbox/Images.xcassets/qr.imageset/qr@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sinnerschrader-mobile/s2m-toolbox-ios/32f67fca7dd957b7705b4a750852cb03934c433c/Example/S2MToolbox/Images.xcassets/qr.imageset/qr@2x.png -------------------------------------------------------------------------------- /Example/S2MToolbox/S2MAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MAppDelegate.h 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 27/10/14. 6 | // Copyright (c) 2014 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface S2MAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | - (void)testCrash; 15 | @end 16 | -------------------------------------------------------------------------------- /Example/S2MToolbox/S2MCollectionViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MCollectionViewController.h 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 11/12/14. 6 | // Copyright (c) 2014 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface S2MCollectionViewController : UICollectionViewController 12 | +(instancetype)sampleCollectionViewController; 13 | @end 14 | -------------------------------------------------------------------------------- /Example/S2MToolbox/S2MTextLoadingView.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MTextLoadingView.h 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 12/12/14. 6 | // Copyright (c) 2014 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface S2MTextLoadingView : UIView 13 | @property(nonatomic, strong)UILabel* label; 14 | @property(nonatomic, strong, readonly)NSTimer* timer; 15 | @end 16 | -------------------------------------------------------------------------------- /Example/S2MToolbox/S2MToolbox-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | // Core 17 | #import 18 | #import 19 | #import 20 | #import 21 | #import 22 | #import 23 | #import 24 | #import 25 | #endif 26 | -------------------------------------------------------------------------------- /Example/S2MToolbox/StartViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // StartViewController.h 3 | // S2MToolboxApp 4 | // 5 | // Created by Joern Ehmann on 04/11/14. 6 | // Copyright (c) 2014 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface StartViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Example/S2MToolbox/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Example/S2MToolbox/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 27/10/14. 6 | // Copyright (c) 2014 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "S2MAppDelegate.h" 12 | 13 | int main(int argc, char * argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([S2MAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Example/S2MToolboxTests/NSString_S2MMD5Spec.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSString_S2MMD5Spec.m 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 11/12/14. 6 | // Copyright (c) 2014 Sinnerschrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "Kiwi.h" 11 | 12 | SPEC_BEGIN(NSString_S2MMD5) 13 | describe(@"s2m_MD5", ^{ 14 | __block NSString* givenString; 15 | __block NSString* md5OfGivenString; 16 | context(@"Given an empty string", ^{ 17 | beforeAll(^{ 18 | givenString = @""; 19 | md5OfGivenString = [givenString s2m_MD5]; 20 | }); 21 | it(@"returns a string representing its md5", ^{ 22 | [[md5OfGivenString should] equal:@"d41d8cd98f00b204e9800998ecf8427e"]; 23 | }); 24 | }); 25 | context(@"Given a valid string", ^{ 26 | beforeAll(^{ 27 | givenString = @"md5"; 28 | md5OfGivenString = [givenString s2m_MD5]; 29 | }); 30 | it(@"returns the md5 representation of that string", ^{ 31 | [[md5OfGivenString should] equal:@"1bc29b36f623ba82aaf6724fd3b16718"]; 32 | }); 33 | }); 34 | }); 35 | SPEC_END 36 | -------------------------------------------------------------------------------- /Example/S2MToolboxTests/S2MToolboxTests-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.sinnerschrader-mobile.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /Example/S2MToolboxTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Foundation/NSNotification+S2MKeyboard.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSNotification+S2MKeyboard.h 3 | // S2MToolbox 4 | // 5 | // Created by Falko Richter on 10.12.12. 6 | // Copyright (c) 2012 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSNotification (S2MKeyboard) 12 | 13 | - (NSTimeInterval)s2m_keyboardAnimationDurationForNotification; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Foundation/NSNotification+S2MKeyboard.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSNotification+S2MKeyboard.m 3 | // S2MToolbox 4 | // 5 | // Created by Falko Richter on 10.12.12. 6 | // Copyright (c) 2012 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import "NSNotification+S2MKeyboard.h" 10 | 11 | @implementation NSNotification (S2MKeyboard) 12 | 13 | - (NSTimeInterval)s2m_keyboardAnimationDurationForNotification 14 | { 15 | NSDictionary* info = [self userInfo]; 16 | NSValue* value = [info objectForKey:UIKeyboardAnimationDurationUserInfoKey]; 17 | NSTimeInterval duration = 0; 18 | [value getValue:&duration]; 19 | return duration; 20 | } 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /Foundation/NSString+S2MMD5.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+S2MMD5.h 3 | // S2MToolbox 4 | // 5 | // 6 | // Copyright (c) 2012 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSString (S2MMD5) 12 | -(NSString*)s2m_MD5; 13 | @end 14 | -------------------------------------------------------------------------------- /Foundation/NSString+S2MMD5.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+S2MMD5.m 3 | // S2MToolbox 4 | // 5 | // 6 | // Copyright (c) 2012 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import "NSString+S2MMD5.h" 10 | #import 11 | 12 | @implementation NSString (MD5) 13 | 14 | -(NSString*)s2m_MD5 15 | { 16 | // Create pointer to the string as UTF8 17 | const char *ptr = [self UTF8String]; 18 | 19 | // Create byte array of unsigned chars 20 | unsigned char md5Buffer[CC_MD5_DIGEST_LENGTH]; 21 | 22 | // Create 16 byte MD5 hash value, store in buffer 23 | CC_MD5(ptr, (unsigned int)strlen(ptr), md5Buffer); 24 | 25 | // Convert MD5 value in the buffer to NSString of hex values 26 | NSMutableString *output = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2]; 27 | for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++) 28 | [output appendFormat:@"%02x",md5Buffer[i]]; 29 | 30 | return output; 31 | 32 | } 33 | @end 34 | -------------------------------------------------------------------------------- /Foundation/NSString+S2MRegExValidation.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+S2MRegExValidation.h 3 | // S2MToolbox 4 | // 5 | // Created by MetaJSONParser. 6 | // Copyright (c) 2013 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSString (S2MRegExValidation) 12 | 13 | + (NSString *)s2m_emailFormat; 14 | 15 | + (void)s2m_setEmailFormat:(NSString *)emailFormat; 16 | 17 | - (NSUInteger)s2m_numberOfMatchesWithRegExString:(NSString *)regExString; 18 | 19 | - (BOOL)s2m_matchesRegExString:(NSString *)regExString; 20 | 21 | - (BOOL)s2m_isValidEmailFormatString; 22 | @end 23 | -------------------------------------------------------------------------------- /Foundation/S2MErrorHandler.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MErrorHandler.h 3 | // S2MToolbox 4 | // 5 | // Created by Uli Luckas on 7/31/12. 6 | // Copyright (c) 2012 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @protocol S2MErrorHandler 12 | -(void)handleError:(NSError*)error; 13 | @end 14 | -------------------------------------------------------------------------------- /LocalNotificationHelper/NSString+S2MNotificationHelper.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+S2MNotificationHelper.h 3 | // S2MToolbox 4 | // 5 | // Created by ParkSanggeon on 22/01/15. 6 | // Copyright (c) 2015 S2M. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSString (S2MNotificationHelper) 12 | 13 | /** 14 | * you can create string with format and given array. 15 | * @param format pass format like following @"%@, %@, %@" 16 | * @param arguments pass array of elements (ex : @[@(10), @"test", [NSDate date]]) 17 | * 18 | * @return NSString Object 19 | */ 20 | + (instancetype)s2m_stringWithFormat:(NSString *)format arguments:(NSArray*)arguments; 21 | - (NSString *)s2m_hashString; // get Hash string with md5 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /LocalNotificationHelper/UILocalNotification+S2MNotificationHelper.h: -------------------------------------------------------------------------------- 1 | // 2 | // UILocalNotification+S2MNotificationHelper.h 3 | // S2MToolbox 4 | // 5 | // Created by ParkSanggeon on 21/01/15. 6 | // Copyright (c) 2015 S2M. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UILocalNotification (S2MNotificationHelper) 12 | 13 | - (void)setS2mKey:(NSString *)key; // set key for internal usage of S2MNotificationHelper. to use S2MNotificationHelper, it has to be used. 14 | - (NSString *)s2mKey; // get key for internal usage of S2MNotificationHelper 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /LocalNotificationHelper/UILocalNotification+S2MNotificationHelper.m: -------------------------------------------------------------------------------- 1 | // 2 | // UILocalNotification+S2MNotificationHelper.m 3 | // S2MToolbox 4 | // 5 | // Created by ParkSanggeon on 21/01/15. 6 | // Copyright (c) 2015 S2M. All rights reserved. 7 | // 8 | 9 | #import "UILocalNotification+S2MNotificationHelper.h" 10 | 11 | static NSString* const kLocalNotificationHelperKey = @"S2M_LOCALNOTIFICATION_HELPER_KEY"; 12 | 13 | @implementation UILocalNotification (S2MNotificationHelper) 14 | 15 | - (void)setS2mKey:(NSString *)key 16 | { 17 | NSMutableDictionary *newUserInfo = [NSMutableDictionary dictionaryWithDictionary:self.userInfo]; 18 | [newUserInfo setObject:key forKey:kLocalNotificationHelperKey]; 19 | self.userInfo = newUserInfo; 20 | } 21 | - (NSString *)s2mKey 22 | { 23 | return [self.userInfo objectForKey:kLocalNotificationHelperKey]; 24 | } 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | S2M Toolbox for iOS 2 | =================== 3 | 4 | [![Build Status](https://travis-ci.org/sinnerschrader-mobile/s2m-toolbox-ios.svg?branch=master)](https://travis-ci.org/sinnerschrader-mobile/s2m-toolbox-ios) 5 | 6 | Here is a collection of useful code that can be used through iOS projects. 7 | 8 | **Note that all files are ARC only.** 9 | 10 | 11 | # INSTALL 12 | 13 | ## via Cocoapods 14 | 15 | * Each folder at the root of repository is a subspec (except Example of course). 16 | * Add the following line to your podfile (includes default files to your project aka UIKit and Foundation): 17 | 18 | ``` 19 | pod 'S2MToolbox' 20 | ``` 21 | 22 | For Categories for your tests: 23 | 24 | ``` 25 | pod 'S2MToolbox/Kiwi' 26 | ``` 27 | ## via git submodule 28 | 29 | * Add it by git 30 | 31 | ``` 32 | git submodule add https://github.com/sinnerschrader-mobile/s2m-toolbox-ios submodules/s2m-toolbox-ios 33 | ``` 34 | * Add the files you need to your xcode project. 35 | -------------------------------------------------------------------------------- /ShopFinder/S2MCalloutAnnotation.h: -------------------------------------------------------------------------------- 1 | // 2 | // S2MCalloutAnnotation.h 3 | // Example 4 | // 5 | // Created by Joern Ehmann on 10/12/14. 6 | // Copyright (c) 2014 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | /** 13 | Annotation class, to implement custom Annotation Callout views 14 | */ 15 | @interface S2MCalloutAnnotation : NSObject 16 | 17 | /** 18 | * designated initializer to match Annotation protocol 19 | * 20 | * @param annotation 21 | * 22 | * @return S2MCalloutAnnotation instance 23 | */ 24 | -(instancetype)initWithAnnotation:(id)annotation; 25 | 26 | /** 27 | * coordinate of the annotation 28 | */ 29 | @property (nonatomic, assign) CLLocationCoordinate2D coordinate; 30 | @property (nonatomic, copy) NSString *title; 31 | @property (nonatomic, copy) NSString *subtitle; 32 | 33 | /** 34 | * assignable property. Set value to have autogenerated subtitle in km of distance 35 | */ 36 | @property (nonatomic, strong) NSNumber* distanceInMeter; 37 | 38 | 39 | @end -------------------------------------------------------------------------------- /Testing/Kiwi/KWSpec+S2MWaitFor.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWSpec+S2MWaitFor.h 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 4/25/13. 6 | // Copyright (c) 2013 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | // Snippet from http://blog.carbonfive.com/2012/07/11/ios-integration-tests-with-kiwi/ 9 | #import "KWSpec.h" 10 | 11 | @interface KWSpec (S2MWaitFor) 12 | + (void)s2m_waitWithTimeout:(NSTimeInterval)timeout forCondition:(BOOL(^)())conditionalBlock; 13 | @end 14 | -------------------------------------------------------------------------------- /Testing/Kiwi/KWSpec+S2MWaitFor.m: -------------------------------------------------------------------------------- 1 | // 2 | // KWSpec+S2MWaitFor.m 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 4/25/13. 6 | // Copyright (c) 2013 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import "KWSpec+S2MWaitFor.h" 10 | 11 | @implementation KWSpec (S2MWaitFor) 12 | 13 | + (void)s2m_waitWithTimeout:(NSTimeInterval)timeout forCondition:(BOOL(^)())conditionalBlock 14 | { 15 | NSDate *timeoutDate = [[NSDate alloc] initWithTimeIntervalSinceNow:timeout]; 16 | while (conditionalBlock() == NO) { 17 | if ([timeoutDate timeIntervalSinceDate:[NSDate date]] < 0) { 18 | return; 19 | } 20 | [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.1]]; 21 | } 22 | } 23 | 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /UIKit/UIBarButtonItem+S2MAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIBarButtonItem+S2MAdditions.h 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 6/10/13. 6 | // Copyright (c) 2013 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIBarButtonItem (S2MAdditions) 12 | -(id)s2m_initWithImageName:(NSString*)imageName target:(id)target action:(SEL)action NS_RETURNS_RETAINED; 13 | -(id)s2m_initWithTitle:(NSString*)title backgroundImage:(UIImage*)image target:(id)target action:(SEL)action NS_RETURNS_RETAINED; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /UIKit/UIView+S2MAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+S2MAdditions.h 3 | // S2MToolbox 4 | // 5 | // Created by François Benaiteau on 5/28/13. 6 | // Copyright (c) 2013 SinnerSchrader Mobile. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIView (S2MAdditions) 12 | 13 | -(id)s2m_addView; 14 | 15 | #pragma mark - 16 | 17 | -(id)s2m_addLabel; 18 | -(id)s2m_addTextField; 19 | -(id)s2m_addSwitch; 20 | -(id)s2m_addButton; 21 | -(id)s2m_addSearchBar; 22 | -(id)s2m_addTableView; 23 | -(id)s2m_addActivityIndicatorView; 24 | 25 | #pragma mark - Image 26 | 27 | -(id)s2m_addImage:(UIImage*)image; 28 | -(id)s2m_addImageNamed:(NSString*)imageName; 29 | 30 | #pragma mark - Animation 31 | 32 | - (void)s2m_rotateWithDuration:(CGFloat)duration repeat:(float)repeat; 33 | - (void)s2m_removeRotationAnimation; 34 | @end 35 | --------------------------------------------------------------------------------