diff --git a/.gitignore b/.gitignore
index 0a9eca0d..dfbbf7ad 100644
--- a/.gitignore
+++ b/.gitignore
@@ -33,3 +33,4 @@ DerivedData
#
# Pods/
.idea
+/Tests/FailureDiffs
diff --git a/.swift-version b/.swift-version
index bf77d549..7ed6ff82 100644
--- a/.swift-version
+++ b/.swift-version
@@ -1 +1 @@
-4.2
+5
diff --git a/.travis.yml b/.travis.yml
index cfe015f2..adacef74 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,19 +1,17 @@
language: objective-c
-osx_image: xcode10
+osx_image: xcode10.2
env:
global:
- WORKSPACE=Example/PopupDialog.xcworkspace
- IOS_FRAMEWORK_SCHEME="PopupDialog-Example"
- - IOS_SDK=iphonesimulator12.0
- - EXAMPLE_SCHEME="PopupDialog-Example"
+ - IOS_SDK=iphonesimulator12.2
matrix:
- - DESTINATION="OS=11.1,name=iPhone 7 Plus" SIMNAME="com.apple.CoreSimulator.SimDeviceType.iPhone-7-Plus, 11.1" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="YES"
- - DESTINATION="OS=10.2,name=iPhone 6" SIMNAME="com.apple.CoreSimulator.SimDeviceType.iPhone-6, 10.2" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
- - DESTINATION="OS=9.2,name=iPhone 5s" SIMNAME="com.apple.CoreSimulator.SimDeviceType.iPhone-5s, 9.2" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
- - DESTINATION="OS=11.1,name=iPad Air 2" SIMNAME="com.apple.CoreSimulator.SimDeviceType.iPad-Air-2, 11.1" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" RUN_TESTS="YES" BUILD_EXAMPLE="YES" POD_LINT="NO"
+ - DESTINATION="OS=12.2,name=iPhone Xʀ" SIMNAME="com.apple.CoreSimulator.SimDeviceType.iPhone-Xʀ, 12.2" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" POD_LINT="YES"
+ - DESTINATION="OS=10.2,name=iPhone 6" SIMNAME="com.apple.CoreSimulator.SimDeviceType.iPhone-6, 10.2" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" POD_LINT="NO"
+ - DESTINATION="OS=11.1,name=iPad Air 2" SIMNAME="com.apple.CoreSimulator.SimDeviceType.iPad-Air-2, 11.1" SCHEME="$IOS_FRAMEWORK_SCHEME" SDK="$IOS_SDK" POD_LINT="NO"
before_install:
- npm install ios-sim -g
- - gem install cocoapods --no-rdoc --no-ri --no-document --quiet
+ - gem install cocoapods --no-document --quiet
- pod install --project-directory=./Example --repo-update
script:
- set -o pipefail
@@ -22,26 +20,10 @@ script:
- xcrun simctl list
# "Prewarm" simulators as of https://github.com/travis-ci/travis-ci/issues/6675
- - ios-sim start --devicetypeid "$SIMNAME"
+ # - ios-sim start --devicetypeid "$SIMNAME"
- # Build Framework in Debug and Run Tests if specified
- - if [ $RUN_TESTS == "YES" ]; then
- xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO ENABLE_TESTABILITY=YES test | xcpretty -c;
- else
- xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO build | xcpretty -c;
- fi
-
- # Build Framework in Release and Run Tests if specified
- - if [ $RUN_TESTS == "YES" ]; then
- xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO ENABLE_TESTABILITY=YES test | xcpretty -c;
- else
- xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Release ONLY_ACTIVE_ARCH=NO build | xcpretty -c;
- fi
-
- # Build Example in Debug if specified
- - if [ $BUILD_EXAMPLE == "YES" ]; then
- xcodebuild -workspace "$WORKSPACE" -scheme "$EXAMPLE_SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO build | xcpretty -c;
- fi
+ # Build Framework in Debug and run tests
+ - xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -sdk "$SDK" -destination "$DESTINATION" -configuration Debug ONLY_ACTIVE_ARCH=NO ENABLE_TESTABILITY=YES test | xcpretty -c;
# Run `pod lib lint` if specified
- if [ $POD_LINT == "YES" ]; then
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 81c00597..ab984c19 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,6 @@
# Changelog
-
+* **1.1.0** Swift 5 support
+* **1.0.0** Pinned Swift version to 4.2
Dropped iOS 9 support as of moving to ios-snapshot-test-case
* **0.9.2** Fixes crash when presenting dialog while app is inactive
* **0.9.1** Fixes Carthage support
* **0.9.0** Swift 4.2 support
diff --git a/Example/Podfile b/Example/Podfile
index 82c944c2..6be75aac 100644
--- a/Example/Podfile
+++ b/Example/Podfile
@@ -1,4 +1,4 @@
-platform :ios, '9.0'
+platform :ios, '10.0'
use_frameworks!
ENV['COCOAPODS_DISABLE_STATS'] = "true" ## This disabled the Sending Stats when running Pod install in terminal
@@ -12,7 +12,7 @@ target 'PopupDialog_Example' do
inherit! :search_paths
pod 'Nimble', '~> 7.3.1'
- pod 'FBSnapshotTestCase', '~> 2.1.4'
+ pod 'iOSSnapshotTestCase', '~> 6.0.2'
end
end
diff --git a/Example/Podfile.lock b/Example/Podfile.lock
index 58e41b58..dae79920 100644
--- a/Example/Podfile.lock
+++ b/Example/Podfile.lock
@@ -1,17 +1,17 @@
PODS:
- DynamicBlurView (3.0.1)
- - FBSnapshotTestCase (2.1.4):
- - FBSnapshotTestCase/SwiftSupport (= 2.1.4)
- - FBSnapshotTestCase/Core (2.1.4)
- - FBSnapshotTestCase/SwiftSupport (2.1.4):
- - FBSnapshotTestCase/Core
- - Nimble (7.3.1)
- - PopupDialog (0.9.2):
+ - iOSSnapshotTestCase (6.0.2):
+ - iOSSnapshotTestCase/SwiftSupport (= 6.0.2)
+ - iOSSnapshotTestCase/Core (6.0.2)
+ - iOSSnapshotTestCase/SwiftSupport (6.0.2):
+ - iOSSnapshotTestCase/Core
+ - Nimble (7.3.4)
+ - PopupDialog (1.1.0):
- DynamicBlurView (~> 3.0.1)
- - SwiftLint (0.29.1)
+ - SwiftLint (0.31.0)
DEPENDENCIES:
- - FBSnapshotTestCase (~> 2.1.4)
+ - iOSSnapshotTestCase (~> 6.0.2)
- Nimble (~> 7.3.1)
- PopupDialog (from `../`)
- SwiftLint (~> 0.22)
@@ -19,7 +19,7 @@ DEPENDENCIES:
SPEC REPOS:
https://github.com/cocoapods/specs.git:
- DynamicBlurView
- - FBSnapshotTestCase
+ - iOSSnapshotTestCase
- Nimble
- SwiftLint
@@ -29,11 +29,11 @@ EXTERNAL SOURCES:
SPEC CHECKSUMS:
DynamicBlurView: b1df5415f9bd31897549e5d7077e5ec120a4d636
- FBSnapshotTestCase: 094f9f314decbabe373b87cc339bea235a63e07a
- Nimble: 04f732da099ea4d153122aec8c2a88fd0c7219ae
- PopupDialog: f4bb461bf70ff422be0b56656566424ee9273080
- SwiftLint: 6772320e40b52049053a518c17db9b0634a0b45a
+ iOSSnapshotTestCase: 20083a7be9b8ef742610e16c79f15ad829441f29
+ Nimble: 051e3d8912d40138fa5591c78594f95fb172af37
+ PopupDialog: 42fb7a0bc4fafdf89fef8b5b2b127a6023f3e1cc
+ SwiftLint: 7a0227733d786395817373b2d0ca799fd0093ff3
-PODFILE CHECKSUM: 2d0166d1e20a1e39377fb316142d39a3785d58f2
+PODFILE CHECKSUM: 745b14824f525113e600d7bfeeb81d4a978d6f28
-COCOAPODS: 1.7.2
+COCOAPODS: 1.6.1
diff --git a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIApplication+StrictKeyWindow.h b/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIApplication+StrictKeyWindow.h
deleted file mode 100644
index eefe11ba..00000000
--- a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIApplication+StrictKeyWindow.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Copyright (c) 2015, Facebook, Inc.
- * All rights reserved.
- *
- * This source code is licensed under the BSD-style license found in the
- * LICENSE file in the root directory of this source tree. An additional grant
- * of patent rights can be found in the PATENTS file in the same directory.
- *
- */
-
-#import
-
-@interface UIApplication (StrictKeyWindow)
-
-/**
- @return The receiver's @c keyWindow. Raises an assertion if @c nil.
- */
-- (UIWindow *)fb_strictKeyWindow;
-
-@end
diff --git a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIApplication+StrictKeyWindow.m b/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIApplication+StrictKeyWindow.m
deleted file mode 100644
index 0f7a0c25..00000000
--- a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIApplication+StrictKeyWindow.m
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright (c) 2015, Facebook, Inc.
- * All rights reserved.
- *
- * This source code is licensed under the BSD-style license found in the
- * LICENSE file in the root directory of this source tree. An additional grant
- * of patent rights can be found in the PATENTS file in the same directory.
- *
- */
-
-#import
-
-@implementation UIApplication (StrictKeyWindow)
-
-- (UIWindow *)fb_strictKeyWindow
-{
- UIWindow *keyWindow = [UIApplication sharedApplication].keyWindow;
- if (!keyWindow) {
- [NSException raise:@"FBSnapshotTestCaseNilKeyWindowException"
- format:@"Snapshot tests must be hosted by an application with a key window. Please ensure your test"
- " host sets up a key window at launch (either via storyboards or programmatically) and doesn't"
- " do anything to remove it while snapshot tests are running."];
- }
- return keyWindow;
-}
-
-@end
diff --git a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m b/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m
deleted file mode 100644
index c997f578..00000000
--- a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Compare.m
+++ /dev/null
@@ -1,134 +0,0 @@
-//
-// Created by Gabriel Handford on 3/1/09.
-// Copyright 2009-2013. All rights reserved.
-// Created by John Boiles on 10/20/11.
-// Copyright (c) 2011. All rights reserved
-// Modified by Felix Schulze on 2/11/13.
-// Copyright 2013. All rights reserved.
-//
-// Permission is hereby granted, free of charge, to any person
-// obtaining a copy of this software and associated documentation
-// files (the "Software"), to deal in the Software without
-// restriction, including without limitation the rights to use,
-// copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the
-// Software is furnished to do so, subject to the following
-// conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-// OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#import
-
-// This makes debugging much more fun
-typedef union {
- uint32_t raw;
- unsigned char bytes[4];
- struct {
- char red;
- char green;
- char blue;
- char alpha;
- } __attribute__ ((packed)) pixels;
-} FBComparePixel;
-
-@implementation UIImage (Compare)
-
-- (BOOL)fb_compareWithImage:(UIImage *)image tolerance:(CGFloat)tolerance
-{
- NSAssert(CGSizeEqualToSize(self.size, image.size), @"Images must be same size.");
-
- CGSize referenceImageSize = CGSizeMake(CGImageGetWidth(self.CGImage), CGImageGetHeight(self.CGImage));
- CGSize imageSize = CGSizeMake(CGImageGetWidth(image.CGImage), CGImageGetHeight(image.CGImage));
-
- // The images have the equal size, so we could use the smallest amount of bytes because of byte padding
- size_t minBytesPerRow = MIN(CGImageGetBytesPerRow(self.CGImage), CGImageGetBytesPerRow(image.CGImage));
- size_t referenceImageSizeBytes = referenceImageSize.height * minBytesPerRow;
- void *referenceImagePixels = calloc(1, referenceImageSizeBytes);
- void *imagePixels = calloc(1, referenceImageSizeBytes);
-
- if (!referenceImagePixels || !imagePixels) {
- free(referenceImagePixels);
- free(imagePixels);
- return NO;
- }
-
- CGContextRef referenceImageContext = CGBitmapContextCreate(referenceImagePixels,
- referenceImageSize.width,
- referenceImageSize.height,
- CGImageGetBitsPerComponent(self.CGImage),
- minBytesPerRow,
- CGImageGetColorSpace(self.CGImage),
- (CGBitmapInfo)kCGImageAlphaPremultipliedLast
- );
- CGContextRef imageContext = CGBitmapContextCreate(imagePixels,
- imageSize.width,
- imageSize.height,
- CGImageGetBitsPerComponent(image.CGImage),
- minBytesPerRow,
- CGImageGetColorSpace(image.CGImage),
- (CGBitmapInfo)kCGImageAlphaPremultipliedLast
- );
-
- if (!referenceImageContext || !imageContext) {
- CGContextRelease(referenceImageContext);
- CGContextRelease(imageContext);
- free(referenceImagePixels);
- free(imagePixels);
- return NO;
- }
-
- CGContextDrawImage(referenceImageContext, CGRectMake(0, 0, referenceImageSize.width, referenceImageSize.height), self.CGImage);
- CGContextDrawImage(imageContext, CGRectMake(0, 0, imageSize.width, imageSize.height), image.CGImage);
-
- CGContextRelease(referenceImageContext);
- CGContextRelease(imageContext);
-
- BOOL imageEqual = YES;
-
- // Do a fast compare if we can
- if (tolerance == 0) {
- imageEqual = (memcmp(referenceImagePixels, imagePixels, referenceImageSizeBytes) == 0);
- } else {
- // Go through each pixel in turn and see if it is different
- const NSInteger pixelCount = referenceImageSize.width * referenceImageSize.height;
-
- FBComparePixel *p1 = referenceImagePixels;
- FBComparePixel *p2 = imagePixels;
-
- NSInteger numDiffPixels = 0;
- for (int n = 0; n < pixelCount; ++n) {
- // If this pixel is different, increment the pixel diff count and see
- // if we have hit our limit.
- if (p1->raw != p2->raw) {
- numDiffPixels ++;
-
- CGFloat percent = (CGFloat)numDiffPixels / pixelCount;
- if (percent > tolerance) {
- imageEqual = NO;
- break;
- }
- }
-
- p1++;
- p2++;
- }
- }
-
- free(referenceImagePixels);
- free(imagePixels);
-
- return imageEqual;
-}
-
-@end
diff --git a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h b/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h
deleted file mode 100644
index b0d5b26b..00000000
--- a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright (c) 2015, Facebook, Inc.
- * All rights reserved.
- *
- * This source code is licensed under the BSD-style license found in the
- * LICENSE file in the root directory of this source tree. An additional grant
- * of patent rights can be found in the PATENTS file in the same directory.
- *
- */
-
-#import
-
-@interface UIImage (Snapshot)
-
-/// Uses renderInContext: to get a snapshot of the layer.
-+ (UIImage *)fb_imageForLayer:(CALayer *)layer;
-
-/// Uses renderInContext: to get a snapshot of the view layer.
-+ (UIImage *)fb_imageForViewLayer:(UIView *)view;
-
-/// Uses drawViewHierarchyInRect: to get a snapshot of the view and adds the view into a window if needed.
-+ (UIImage *)fb_imageForView:(UIView *)view;
-
-@end
diff --git a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m b/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m
deleted file mode 100644
index 968091b9..00000000
--- a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/Categories/UIImage+Snapshot.m
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Copyright (c) 2015, Facebook, Inc.
- * All rights reserved.
- *
- * This source code is licensed under the BSD-style license found in the
- * LICENSE file in the root directory of this source tree. An additional grant
- * of patent rights can be found in the PATENTS file in the same directory.
- *
- */
-
-#import
-#import
-
-@implementation UIImage (Snapshot)
-
-+ (UIImage *)fb_imageForLayer:(CALayer *)layer
-{
- CGRect bounds = layer.bounds;
- NSAssert1(CGRectGetWidth(bounds), @"Zero width for layer %@", layer);
- NSAssert1(CGRectGetHeight(bounds), @"Zero height for layer %@", layer);
-
- UIGraphicsBeginImageContextWithOptions(bounds.size, NO, 0);
- CGContextRef context = UIGraphicsGetCurrentContext();
- NSAssert1(context, @"Could not generate context for layer %@", layer);
- CGContextSaveGState(context);
- [layer layoutIfNeeded];
- [layer renderInContext:context];
- CGContextRestoreGState(context);
-
- UIImage *snapshot = UIGraphicsGetImageFromCurrentImageContext();
- UIGraphicsEndImageContext();
- return snapshot;
-}
-
-+ (UIImage *)fb_imageForViewLayer:(UIView *)view
-{
- [view layoutIfNeeded];
- return [self fb_imageForLayer:view.layer];
-}
-
-+ (UIImage *)fb_imageForView:(UIView *)view
-{
- CGRect bounds = view.bounds;
- NSAssert1(CGRectGetWidth(bounds), @"Zero width for view %@", view);
- NSAssert1(CGRectGetHeight(bounds), @"Zero height for view %@", view);
-
- // If the input view is already a UIWindow, then just use that. Otherwise wrap in a window.
- UIWindow *window = [view isKindOfClass:[UIWindow class]] ? (UIWindow *)view : view.window;
- BOOL removeFromSuperview = NO;
- if (!window) {
- window = [[UIApplication sharedApplication] fb_strictKeyWindow];
- }
-
- if (!view.window && view != window) {
- [window addSubview:view];
- removeFromSuperview = YES;
- }
-
- UIGraphicsBeginImageContextWithOptions(bounds.size, NO, 0);
- [view layoutIfNeeded];
- [view drawViewHierarchyInRect:view.bounds afterScreenUpdates:YES];
-
- UIImage *snapshot = UIGraphicsGetImageFromCurrentImageContext();
- UIGraphicsEndImageContext();
-
- if (removeFromSuperview) {
- [view removeFromSuperview];
- }
-
- return snapshot;
-}
-
-@end
diff --git a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h b/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h
deleted file mode 100644
index 6438c5c7..00000000
--- a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.h
+++ /dev/null
@@ -1,182 +0,0 @@
-/*
- * Copyright (c) 2015, Facebook, Inc.
- * All rights reserved.
- *
- * This source code is licensed under the BSD-style license found in the
- * LICENSE file in the root directory of this source tree. An additional grant
- * of patent rights can be found in the PATENTS file in the same directory.
- *
- */
-
-#import
-#import
-
-#import
-
-#import
-
-#import
-
-/*
- There are three ways of setting reference image directories.
-
- 1. Set the preprocessor macro FB_REFERENCE_IMAGE_DIR to a double quoted
- c-string with the path.
- 2. Set an environment variable named FB_REFERENCE_IMAGE_DIR with the path. This
- takes precedence over the preprocessor macro to allow for run-time override.
- 3. Keep everything unset, which will cause the reference images to be looked up
- inside the bundle holding the current test, in the
- Resources/ReferenceImages_* directories.
- */
-#ifndef FB_REFERENCE_IMAGE_DIR
-#define FB_REFERENCE_IMAGE_DIR ""
-#endif
-
-/**
- Similar to our much-loved XCTAssert() macros. Use this to perform your test. No need to write an explanation, though.
- @param view The view to snapshot
- @param identifier An optional identifier, used if there are multiple snapshot tests in a given -test method.
- @param suffixes An NSOrderedSet of strings for the different suffixes
- @param tolerance The percentage of pixels that can differ and still count as an 'identical' view
- */
-#define FBSnapshotVerifyViewWithOptions(view__, identifier__, suffixes__, tolerance__) \
- FBSnapshotVerifyViewOrLayerWithOptions(View, view__, identifier__, suffixes__, tolerance__)
-
-#define FBSnapshotVerifyView(view__, identifier__) \
- FBSnapshotVerifyViewWithOptions(view__, identifier__, FBSnapshotTestCaseDefaultSuffixes(), 0)
-
-
-/**
- Similar to our much-loved XCTAssert() macros. Use this to perform your test. No need to write an explanation, though.
- @param layer The layer to snapshot
- @param identifier An optional identifier, used if there are multiple snapshot tests in a given -test method.
- @param suffixes An NSOrderedSet of strings for the different suffixes
- @param tolerance The percentage of pixels that can differ and still count as an 'identical' layer
- */
-#define FBSnapshotVerifyLayerWithOptions(layer__, identifier__, suffixes__, tolerance__) \
- FBSnapshotVerifyViewOrLayerWithOptions(Layer, layer__, identifier__, suffixes__, tolerance__)
-
-#define FBSnapshotVerifyLayer(layer__, identifier__) \
- FBSnapshotVerifyLayerWithOptions(layer__, identifier__, FBSnapshotTestCaseDefaultSuffixes(), 0)
-
-
-#define FBSnapshotVerifyViewOrLayerWithOptions(what__, viewOrLayer__, identifier__, suffixes__, tolerance__) \
-{ \
- NSString *errorDescription = [self snapshotVerifyViewOrLayer:viewOrLayer__ identifier:identifier__ suffixes:suffixes__ tolerance:tolerance__ defaultReferenceDirectory:(@ FB_REFERENCE_IMAGE_DIR)]; \
- BOOL noErrors = (errorDescription == nil); \
- XCTAssertTrue(noErrors, @"%@", errorDescription); \
-}
-
-
-/**
- The base class of view snapshotting tests. If you have small UI component, it's often easier to configure it in a test
- and compare an image of the view to a reference image that write lots of complex layout-code tests.
-
- In order to flip the tests in your subclass to record the reference images set @c recordMode to @c YES.
-
- @attention When recording, the reference image directory should be explicitly
- set, otherwise the images may be written to somewhere inside the
- simulator directory.
-
- For example:
- @code
- - (void)setUp
- {
- [super setUp];
- self.recordMode = YES;
- }
- @endcode
- */
-@interface FBSnapshotTestCase : XCTestCase
-
-/**
- When YES, the test macros will save reference images, rather than performing an actual test.
- */
-@property (readwrite, nonatomic, assign) BOOL recordMode;
-
-/**
- When @c YES appends the name of the device model and OS to the snapshot file name.
- The default value is @c NO.
- */
-@property (readwrite, nonatomic, assign, getter=isDeviceAgnostic) BOOL deviceAgnostic;
-
-/**
- When YES, renders a snapshot of the complete view hierarchy as visible onscreen.
- There are several things that do not work if renderInContext: is used.
- - UIVisualEffect #70
- - UIAppearance #91
- - Size Classes #92
-
- @attention If the view does't belong to a UIWindow, it will create one and add the view as a subview.
- */
-@property (readwrite, nonatomic, assign) BOOL usesDrawViewHierarchyInRect;
-
-- (void)setUp NS_REQUIRES_SUPER;
-- (void)tearDown NS_REQUIRES_SUPER;
-
-/**
- Performs the comparison or records a snapshot of the layer if recordMode is YES.
- @param viewOrLayer The UIView or CALayer to snapshot
- @param identifier An optional identifier, used if there are multiple snapshot tests in a given -test method.
- @param suffixes An NSOrderedSet of strings for the different suffixes
- @param tolerance The percentage difference to still count as identical - 0 mean pixel perfect, 1 means I don't care
- @param defaultReferenceDirectory The directory to default to for reference images.
- @returns nil if the comparison (or saving of the reference image) succeeded. Otherwise it contains an error description.
- */
-- (NSString *)snapshotVerifyViewOrLayer:(id)viewOrLayer
- identifier:(NSString *)identifier
- suffixes:(NSOrderedSet *)suffixes
- tolerance:(CGFloat)tolerance
- defaultReferenceDirectory:(NSString *)defaultReferenceDirectory;
-
-/**
- Performs the comparison or records a snapshot of the layer if recordMode is YES.
- @param layer The Layer to snapshot
- @param referenceImagesDirectory The directory in which reference images are stored.
- @param identifier An optional identifier, used if there are multiple snapshot tests in a given -test method.
- @param tolerance The percentage difference to still count as identical - 0 mean pixel perfect, 1 means I don't care
- @param errorPtr An error to log in an XCTAssert() macro if the method fails (missing reference image, images differ, etc).
- @returns YES if the comparison (or saving of the reference image) succeeded.
- */
-- (BOOL)compareSnapshotOfLayer:(CALayer *)layer
- referenceImagesDirectory:(NSString *)referenceImagesDirectory
- identifier:(NSString *)identifier
- tolerance:(CGFloat)tolerance
- error:(NSError **)errorPtr;
-
-/**
- Performs the comparison or records a snapshot of the view if recordMode is YES.
- @param view The view to snapshot
- @param referenceImagesDirectory The directory in which reference images are stored.
- @param identifier An optional identifier, used if there are multiple snapshot tests in a given -test method.
- @param tolerance The percentage difference to still count as identical - 0 mean pixel perfect, 1 means I don't care
- @param errorPtr An error to log in an XCTAssert() macro if the method fails (missing reference image, images differ, etc).
- @returns YES if the comparison (or saving of the reference image) succeeded.
- */
-- (BOOL)compareSnapshotOfView:(UIView *)view
- referenceImagesDirectory:(NSString *)referenceImagesDirectory
- identifier:(NSString *)identifier
- tolerance:(CGFloat)tolerance
- error:(NSError **)errorPtr;
-
-/**
- Checks if reference image with identifier based name exists in the reference images directory.
- @param referenceImagesDirectory The directory in which reference images are stored.
- @param identifier An optional identifier, used if there are multiple snapshot tests in a given -test method.
- @param errorPtr An error to log in an XCTAssert() macro if the method fails (missing reference image, images differ, etc).
- @returns YES if reference image exists.
- */
-- (BOOL)referenceImageRecordedInDirectory:(NSString *)referenceImagesDirectory
- identifier:(NSString *)identifier
- error:(NSError **)errorPtr;
-
-/**
- Returns the reference image directory.
-
- Helper function used to implement the assert macros.
-
- @param dir directory to use if environment variable not specified. Ignored if null or empty.
- */
-- (NSString *)getReferenceImageDirectoryWithDefault:(NSString *)dir;
-
-@end
diff --git a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m b/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m
deleted file mode 100644
index f1fb547d..00000000
--- a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCase.m
+++ /dev/null
@@ -1,193 +0,0 @@
-/*
- * Copyright (c) 2015, Facebook, Inc.
- * All rights reserved.
- *
- * This source code is licensed under the BSD-style license found in the
- * LICENSE file in the root directory of this source tree. An additional grant
- * of patent rights can be found in the PATENTS file in the same directory.
- *
- */
-
-#import
-#import
-
-@implementation FBSnapshotTestCase
-{
- FBSnapshotTestController *_snapshotController;
-}
-
-#pragma mark - Overrides
-
-- (void)setUp
-{
- [super setUp];
- _snapshotController = [[FBSnapshotTestController alloc] initWithTestName:NSStringFromClass([self class])];
-}
-
-- (void)tearDown
-{
- _snapshotController = nil;
- [super tearDown];
-}
-
-- (BOOL)recordMode
-{
- return _snapshotController.recordMode;
-}
-
-- (void)setRecordMode:(BOOL)recordMode
-{
- NSAssert1(_snapshotController, @"%s cannot be called before [super setUp]", __FUNCTION__);
- _snapshotController.recordMode = recordMode;
-}
-
-- (BOOL)isDeviceAgnostic
-{
- return _snapshotController.deviceAgnostic;
-}
-
-- (void)setDeviceAgnostic:(BOOL)deviceAgnostic
-{
- NSAssert1(_snapshotController, @"%s cannot be called before [super setUp]", __FUNCTION__);
- _snapshotController.deviceAgnostic = deviceAgnostic;
-}
-
-- (BOOL)usesDrawViewHierarchyInRect
-{
- return _snapshotController.usesDrawViewHierarchyInRect;
-}
-
-- (void)setUsesDrawViewHierarchyInRect:(BOOL)usesDrawViewHierarchyInRect
-{
- NSAssert1(_snapshotController, @"%s cannot be called before [super setUp]", __FUNCTION__);
- _snapshotController.usesDrawViewHierarchyInRect = usesDrawViewHierarchyInRect;
-}
-
-#pragma mark - Public API
-
-- (NSString *)snapshotVerifyViewOrLayer:(id)viewOrLayer
- identifier:(NSString *)identifier
- suffixes:(NSOrderedSet *)suffixes
- tolerance:(CGFloat)tolerance
- defaultReferenceDirectory:(NSString *)defaultReferenceDirectory
-{
- if (nil == viewOrLayer) {
- return @"Object to be snapshotted must not be nil";
- }
- NSString *referenceImageDirectory = [self getReferenceImageDirectoryWithDefault:defaultReferenceDirectory];
- if (referenceImageDirectory == nil) {
- return @"Missing value for referenceImagesDirectory - Set FB_REFERENCE_IMAGE_DIR as Environment variable in your scheme.";
- }
- if (suffixes.count == 0) {
- return [NSString stringWithFormat:@"Suffixes set cannot be empty %@", suffixes];
- }
-
- BOOL testSuccess = NO;
- NSError *error = nil;
- NSMutableArray *errors = [NSMutableArray array];
-
- if (self.recordMode) {
- NSString *referenceImagesDirectory = [NSString stringWithFormat:@"%@%@", referenceImageDirectory, suffixes.firstObject];
- BOOL referenceImageSaved = [self _compareSnapshotOfViewOrLayer:viewOrLayer referenceImagesDirectory:referenceImagesDirectory identifier:(identifier) tolerance:tolerance error:&error];
- if (!referenceImageSaved) {
- [errors addObject:error];
- }
- } else {
- for (NSString *suffix in suffixes) {
- NSString *referenceImagesDirectory = [NSString stringWithFormat:@"%@%@", referenceImageDirectory, suffix];
- BOOL referenceImageAvailable = [self referenceImageRecordedInDirectory:referenceImagesDirectory identifier:(identifier) error:&error];
-
- if (referenceImageAvailable) {
- BOOL comparisonSuccess = [self _compareSnapshotOfViewOrLayer:viewOrLayer referenceImagesDirectory:referenceImagesDirectory identifier:identifier tolerance:tolerance error:&error];
- [errors removeAllObjects];
- if (comparisonSuccess) {
- testSuccess = YES;
- break;
- } else {
- [errors addObject:error];
- }
- } else {
- [errors addObject:error];
- }
- }
- }
-
- if (!testSuccess) {
- return [NSString stringWithFormat:@"Snapshot comparison failed: %@", errors.firstObject];
- }
- if (self.recordMode) {
- return @"Test ran in record mode. Reference image is now saved. Disable record mode to perform an actual snapshot comparison!";
- }
-
- return nil;
-}
-
-- (BOOL)compareSnapshotOfLayer:(CALayer *)layer
- referenceImagesDirectory:(NSString *)referenceImagesDirectory
- identifier:(NSString *)identifier
- tolerance:(CGFloat)tolerance
- error:(NSError **)errorPtr
-{
- return [self _compareSnapshotOfViewOrLayer:layer
- referenceImagesDirectory:referenceImagesDirectory
- identifier:identifier
- tolerance:tolerance
- error:errorPtr];
-}
-
-- (BOOL)compareSnapshotOfView:(UIView *)view
- referenceImagesDirectory:(NSString *)referenceImagesDirectory
- identifier:(NSString *)identifier
- tolerance:(CGFloat)tolerance
- error:(NSError **)errorPtr
-{
- return [self _compareSnapshotOfViewOrLayer:view
- referenceImagesDirectory:referenceImagesDirectory
- identifier:identifier
- tolerance:tolerance
- error:errorPtr];
-}
-
-- (BOOL)referenceImageRecordedInDirectory:(NSString *)referenceImagesDirectory
- identifier:(NSString *)identifier
- error:(NSError **)errorPtr
-{
- NSAssert1(_snapshotController, @"%s cannot be called before [super setUp]", __FUNCTION__);
- _snapshotController.referenceImagesDirectory = referenceImagesDirectory;
- UIImage *referenceImage = [_snapshotController referenceImageForSelector:self.invocation.selector
- identifier:identifier
- error:errorPtr];
-
- return (referenceImage != nil);
-}
-
-- (NSString *)getReferenceImageDirectoryWithDefault:(NSString *)dir
-{
- NSString *envReferenceImageDirectory = [NSProcessInfo processInfo].environment[@"FB_REFERENCE_IMAGE_DIR"];
- if (envReferenceImageDirectory) {
- return envReferenceImageDirectory;
- }
- if (dir && dir.length > 0) {
- return dir;
- }
- return [[NSBundle bundleForClass:self.class].resourcePath stringByAppendingPathComponent:@"ReferenceImages"];
-}
-
-
-#pragma mark - Private API
-
-- (BOOL)_compareSnapshotOfViewOrLayer:(id)viewOrLayer
- referenceImagesDirectory:(NSString *)referenceImagesDirectory
- identifier:(NSString *)identifier
- tolerance:(CGFloat)tolerance
- error:(NSError **)errorPtr
-{
- _snapshotController.referenceImagesDirectory = referenceImagesDirectory;
- return [_snapshotController compareSnapshotOfViewOrLayer:viewOrLayer
- selector:self.invocation.selector
- identifier:identifier
- tolerance:tolerance
- error:errorPtr];
-}
-
-@end
diff --git a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h b/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h
deleted file mode 100644
index e04acf2f..00000000
--- a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 2015, Facebook, Inc.
- * All rights reserved.
- *
- * This source code is licensed under the BSD-style license found in the
- * LICENSE file in the root directory of this source tree. An additional grant
- * of patent rights can be found in the PATENTS file in the same directory.
- *
- */
-
-#import
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- Returns a Boolean value that indicates whether the snapshot test is running in 64Bit.
- This method is a convenience for creating the suffixes set based on the architecture
- that the test is running.
-
- @returns @c YES if the test is running in 64bit, otherwise @c NO.
- */
-BOOL FBSnapshotTestCaseIs64Bit(void);
-
-/**
- Returns a default set of strings that is used to append a suffix based on the architectures.
- @warning Do not modify this function, you can create your own and use it with @c FBSnapshotVerifyViewWithOptions()
-
- @returns An @c NSOrderedSet object containing strings that are appended to the reference images directory.
- */
-NSOrderedSet *FBSnapshotTestCaseDefaultSuffixes(void);
-
-/**
- Returns a fully «normalized» file name.
- Strips punctuation and spaces and replaces them with @c _. Also appends the device model, running OS and screen size to the file name.
-
- @returns An @c NSString object containing the passed @c fileName with the device model, OS and screen size appended at the end.
- */
-NSString *FBDeviceAgnosticNormalizedFileName(NSString *fileName);
-
-#ifdef __cplusplus
-}
-#endif
diff --git a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m b/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m
deleted file mode 100644
index d8709d8b..00000000
--- a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestCasePlatform.m
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright (c) 2015, Facebook, Inc.
- * All rights reserved.
- *
- * This source code is licensed under the BSD-style license found in the
- * LICENSE file in the root directory of this source tree. An additional grant
- * of patent rights can be found in the PATENTS file in the same directory.
- *
- */
-
-#import
-#import
-#import
-
-BOOL FBSnapshotTestCaseIs64Bit(void)
-{
-#if __LP64__
- return YES;
-#else
- return NO;
-#endif
-}
-
-NSOrderedSet *FBSnapshotTestCaseDefaultSuffixes(void)
-{
- NSMutableOrderedSet *suffixesSet = [[NSMutableOrderedSet alloc] init];
- [suffixesSet addObject:@"_32"];
- [suffixesSet addObject:@"_64"];
- if (FBSnapshotTestCaseIs64Bit()) {
- return [suffixesSet reversedOrderedSet];
- }
- return [suffixesSet copy];
-}
-
-NSString *FBDeviceAgnosticNormalizedFileName(NSString *fileName)
-{
- UIDevice *device = [UIDevice currentDevice];
- UIWindow *keyWindow = [[UIApplication sharedApplication] fb_strictKeyWindow];
- CGSize screenSize = keyWindow.bounds.size;
- NSString *os = device.systemVersion;
-
- fileName = [NSString stringWithFormat:@"%@_%@%@_%.0fx%.0f", fileName, device.model, os, screenSize.width, screenSize.height];
-
- NSMutableCharacterSet *invalidCharacters = [NSMutableCharacterSet new];
- [invalidCharacters formUnionWithCharacterSet:[NSCharacterSet whitespaceCharacterSet]];
- [invalidCharacters formUnionWithCharacterSet:[NSCharacterSet punctuationCharacterSet]];
- NSArray *validComponents = [fileName componentsSeparatedByCharactersInSet:invalidCharacters];
- fileName = [validComponents componentsJoinedByString:@"_"];
-
- return fileName;
-}
\ No newline at end of file
diff --git a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m b/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m
deleted file mode 100644
index 74c5a0a6..00000000
--- a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/FBSnapshotTestController.m
+++ /dev/null
@@ -1,358 +0,0 @@
-/*
- * Copyright (c) 2015, Facebook, Inc.
- * All rights reserved.
- *
- * This source code is licensed under the BSD-style license found in the
- * LICENSE file in the root directory of this source tree. An additional grant
- * of patent rights can be found in the PATENTS file in the same directory.
- *
- */
-
-#import
-#import
-#import
-#import
-#import
-
-#import
-
-NSString *const FBSnapshotTestControllerErrorDomain = @"FBSnapshotTestControllerErrorDomain";
-NSString *const FBReferenceImageFilePathKey = @"FBReferenceImageFilePathKey";
-NSString *const FBReferenceImageKey = @"FBReferenceImageKey";
-NSString *const FBCapturedImageKey = @"FBCapturedImageKey";
-NSString *const FBDiffedImageKey = @"FBDiffedImageKey";
-
-typedef NS_ENUM(NSUInteger, FBTestSnapshotFileNameType) {
- FBTestSnapshotFileNameTypeReference,
- FBTestSnapshotFileNameTypeFailedReference,
- FBTestSnapshotFileNameTypeFailedTest,
- FBTestSnapshotFileNameTypeFailedTestDiff,
-};
-
-@implementation FBSnapshotTestController
-{
- NSString *_testName;
- NSFileManager *_fileManager;
-}
-
-#pragma mark - Initializers
-
-- (instancetype)initWithTestClass:(Class)testClass;
-{
- return [self initWithTestName:NSStringFromClass(testClass)];
-}
-
-- (instancetype)initWithTestName:(NSString *)testName
-{
- if (self = [super init]) {
- _testName = [testName copy];
- _deviceAgnostic = NO;
-
- _fileManager = [[NSFileManager alloc] init];
- }
- return self;
-}
-
-#pragma mark - Overrides
-
-- (NSString *)description
-{
- return [NSString stringWithFormat:@"%@ %@", [super description], _referenceImagesDirectory];
-}
-
-#pragma mark - Public API
-
-- (BOOL)compareSnapshotOfLayer:(CALayer *)layer
- selector:(SEL)selector
- identifier:(NSString *)identifier
- error:(NSError **)errorPtr
-{
- return [self compareSnapshotOfViewOrLayer:layer
- selector:selector
- identifier:identifier
- tolerance:0
- error:errorPtr];
-}
-
-- (BOOL)compareSnapshotOfView:(UIView *)view
- selector:(SEL)selector
- identifier:(NSString *)identifier
- error:(NSError **)errorPtr
-{
- return [self compareSnapshotOfViewOrLayer:view
- selector:selector
- identifier:identifier
- tolerance:0
- error:errorPtr];
-}
-
-- (BOOL)compareSnapshotOfViewOrLayer:(id)viewOrLayer
- selector:(SEL)selector
- identifier:(NSString *)identifier
- tolerance:(CGFloat)tolerance
- error:(NSError **)errorPtr
-{
- if (self.recordMode) {
- return [self _recordSnapshotOfViewOrLayer:viewOrLayer selector:selector identifier:identifier error:errorPtr];
- } else {
- return [self _performPixelComparisonWithViewOrLayer:viewOrLayer selector:selector identifier:identifier tolerance:tolerance error:errorPtr];
- }
-}
-
-- (UIImage *)referenceImageForSelector:(SEL)selector
- identifier:(NSString *)identifier
- error:(NSError **)errorPtr
-{
- NSString *filePath = [self _referenceFilePathForSelector:selector identifier:identifier];
- UIImage *image = [UIImage imageWithContentsOfFile:filePath];
- if (nil == image && NULL != errorPtr) {
- BOOL exists = [_fileManager fileExistsAtPath:filePath];
- if (!exists) {
- *errorPtr = [NSError errorWithDomain:FBSnapshotTestControllerErrorDomain
- code:FBSnapshotTestControllerErrorCodeNeedsRecord
- userInfo:@{
- FBReferenceImageFilePathKey: filePath,
- NSLocalizedDescriptionKey: @"Unable to load reference image.",
- NSLocalizedFailureReasonErrorKey: @"Reference image not found. You need to run the test in record mode",
- }];
- } else {
- *errorPtr = [NSError errorWithDomain:FBSnapshotTestControllerErrorDomain
- code:FBSnapshotTestControllerErrorCodeUnknown
- userInfo:nil];
- }
- }
- return image;
-}
-
-- (BOOL)compareReferenceImage:(UIImage *)referenceImage
- toImage:(UIImage *)image
- tolerance:(CGFloat)tolerance
- error:(NSError **)errorPtr
-{
- BOOL sameImageDimensions = CGSizeEqualToSize(referenceImage.size, image.size);
- if (sameImageDimensions && [referenceImage fb_compareWithImage:image tolerance:tolerance]) {
- return YES;
- }
-
- if (NULL != errorPtr) {
- NSString *errorDescription = sameImageDimensions ? @"Images different" : @"Images different sizes";
- NSString *errorReason = sameImageDimensions ? [NSString stringWithFormat:@"image pixels differed by more than %.2f%% from the reference image", tolerance * 100]
- : [NSString stringWithFormat:@"referenceImage:%@, image:%@", NSStringFromCGSize(referenceImage.size), NSStringFromCGSize(image.size)];
- FBSnapshotTestControllerErrorCode errorCode = sameImageDimensions ? FBSnapshotTestControllerErrorCodeImagesDifferent : FBSnapshotTestControllerErrorCodeImagesDifferentSizes;
-
- *errorPtr = [NSError errorWithDomain:FBSnapshotTestControllerErrorDomain
- code:errorCode
- userInfo:@{
- NSLocalizedDescriptionKey: errorDescription,
- NSLocalizedFailureReasonErrorKey: errorReason,
- FBReferenceImageKey: referenceImage,
- FBCapturedImageKey: image,
- FBDiffedImageKey: [referenceImage fb_diffWithImage:image],
- }];
- }
- return NO;
-}
-
-- (BOOL)saveFailedReferenceImage:(UIImage *)referenceImage
- testImage:(UIImage *)testImage
- selector:(SEL)selector
- identifier:(NSString *)identifier
- error:(NSError **)errorPtr
-{
- NSData *referencePNGData = UIImagePNGRepresentation(referenceImage);
- NSData *testPNGData = UIImagePNGRepresentation(testImage);
-
- NSString *referencePath = [self _failedFilePathForSelector:selector
- identifier:identifier
- fileNameType:FBTestSnapshotFileNameTypeFailedReference];
-
- NSError *creationError = nil;
- BOOL didCreateDir = [_fileManager createDirectoryAtPath:[referencePath stringByDeletingLastPathComponent]
- withIntermediateDirectories:YES
- attributes:nil
- error:&creationError];
- if (!didCreateDir) {
- if (NULL != errorPtr) {
- *errorPtr = creationError;
- }
- return NO;
- }
-
- if (![referencePNGData writeToFile:referencePath options:NSDataWritingAtomic error:errorPtr]) {
- return NO;
- }
-
- NSString *testPath = [self _failedFilePathForSelector:selector
- identifier:identifier
- fileNameType:FBTestSnapshotFileNameTypeFailedTest];
-
- if (![testPNGData writeToFile:testPath options:NSDataWritingAtomic error:errorPtr]) {
- return NO;
- }
-
- NSString *diffPath = [self _failedFilePathForSelector:selector
- identifier:identifier
- fileNameType:FBTestSnapshotFileNameTypeFailedTestDiff];
-
- UIImage *diffImage = [referenceImage fb_diffWithImage:testImage];
- NSData *diffImageData = UIImagePNGRepresentation(diffImage);
-
- if (![diffImageData writeToFile:diffPath options:NSDataWritingAtomic error:errorPtr]) {
- return NO;
- }
-
- NSLog(@"If you have Kaleidoscope installed you can run this command to see an image diff:\n"
- @"ksdiff \"%@\" \"%@\"", referencePath, testPath);
-
- return YES;
-}
-
-#pragma mark - Private API
-
-- (NSString *)_fileNameForSelector:(SEL)selector
- identifier:(NSString *)identifier
- fileNameType:(FBTestSnapshotFileNameType)fileNameType
-{
- NSString *fileName = nil;
- switch (fileNameType) {
- case FBTestSnapshotFileNameTypeFailedReference:
- fileName = @"reference_";
- break;
- case FBTestSnapshotFileNameTypeFailedTest:
- fileName = @"failed_";
- break;
- case FBTestSnapshotFileNameTypeFailedTestDiff:
- fileName = @"diff_";
- break;
- default:
- fileName = @"";
- break;
- }
- fileName = [fileName stringByAppendingString:NSStringFromSelector(selector)];
- if (0 < identifier.length) {
- fileName = [fileName stringByAppendingFormat:@"_%@", identifier];
- }
-
- if (self.isDeviceAgnostic) {
- fileName = FBDeviceAgnosticNormalizedFileName(fileName);
- }
-
- if ([[UIScreen mainScreen] scale] > 1) {
- fileName = [fileName stringByAppendingFormat:@"@%.fx", [[UIScreen mainScreen] scale]];
- }
- fileName = [fileName stringByAppendingPathExtension:@"png"];
- return fileName;
-}
-
-- (NSString *)_referenceFilePathForSelector:(SEL)selector
- identifier:(NSString *)identifier
-{
- NSString *fileName = [self _fileNameForSelector:selector
- identifier:identifier
- fileNameType:FBTestSnapshotFileNameTypeReference];
- NSString *filePath = [_referenceImagesDirectory stringByAppendingPathComponent:_testName];
- filePath = [filePath stringByAppendingPathComponent:fileName];
- return filePath;
-}
-
-- (NSString *)_failedFilePathForSelector:(SEL)selector
- identifier:(NSString *)identifier
- fileNameType:(FBTestSnapshotFileNameType)fileNameType
-{
- NSString *fileName = [self _fileNameForSelector:selector
- identifier:identifier
- fileNameType:fileNameType];
- NSString *folderPath = NSTemporaryDirectory();
- if (getenv("IMAGE_DIFF_DIR")) {
- folderPath = @(getenv("IMAGE_DIFF_DIR"));
- }
- NSString *filePath = [folderPath stringByAppendingPathComponent:_testName];
- filePath = [filePath stringByAppendingPathComponent:fileName];
- return filePath;
-}
-
-- (BOOL)_performPixelComparisonWithViewOrLayer:(id)viewOrLayer
- selector:(SEL)selector
- identifier:(NSString *)identifier
- tolerance:(CGFloat)tolerance
- error:(NSError **)errorPtr
-{
- UIImage *referenceImage = [self referenceImageForSelector:selector identifier:identifier error:errorPtr];
- if (nil != referenceImage) {
- UIImage *snapshot = [self _imageForViewOrLayer:viewOrLayer];
- BOOL imagesSame = [self compareReferenceImage:referenceImage toImage:snapshot tolerance:tolerance error:errorPtr];
- if (!imagesSame) {
- NSError *saveError = nil;
- if ([self saveFailedReferenceImage:referenceImage testImage:snapshot selector:selector identifier:identifier error:&saveError] == NO) {
- NSLog(@"Error saving test images: %@", saveError);
- }
- }
- return imagesSame;
- }
- return NO;
-}
-
-- (BOOL)_recordSnapshotOfViewOrLayer:(id)viewOrLayer
- selector:(SEL)selector
- identifier:(NSString *)identifier
- error:(NSError **)errorPtr
-{
- UIImage *snapshot = [self _imageForViewOrLayer:viewOrLayer];
- return [self _saveReferenceImage:snapshot selector:selector identifier:identifier error:errorPtr];
-}
-
-- (BOOL)_saveReferenceImage:(UIImage *)image
- selector:(SEL)selector
- identifier:(NSString *)identifier
- error:(NSError **)errorPtr
-{
- BOOL didWrite = NO;
- if (nil != image) {
- NSString *filePath = [self _referenceFilePathForSelector:selector identifier:identifier];
- NSData *pngData = UIImagePNGRepresentation(image);
- if (nil != pngData) {
- NSError *creationError = nil;
- BOOL didCreateDir = [_fileManager createDirectoryAtPath:[filePath stringByDeletingLastPathComponent]
- withIntermediateDirectories:YES
- attributes:nil
- error:&creationError];
- if (!didCreateDir) {
- if (NULL != errorPtr) {
- *errorPtr = creationError;
- }
- return NO;
- }
- didWrite = [pngData writeToFile:filePath options:NSDataWritingAtomic error:errorPtr];
- if (didWrite) {
- NSLog(@"Reference image save at: %@", filePath);
- }
- } else {
- if (nil != errorPtr) {
- *errorPtr = [NSError errorWithDomain:FBSnapshotTestControllerErrorDomain
- code:FBSnapshotTestControllerErrorCodePNGCreationFailed
- userInfo:@{
- FBReferenceImageFilePathKey: filePath,
- }];
- }
- }
- }
- return didWrite;
-}
-
-- (UIImage *)_imageForViewOrLayer:(id)viewOrLayer
-{
- if ([viewOrLayer isKindOfClass:[UIView class]]) {
- if (_usesDrawViewHierarchyInRect) {
- return [UIImage fb_imageForView:viewOrLayer];
- } else {
- return [UIImage fb_imageForViewLayer:viewOrLayer];
- }
- } else if ([viewOrLayer isKindOfClass:[CALayer class]]) {
- return [UIImage fb_imageForLayer:viewOrLayer];
- } else {
- [NSException raise:@"Only UIView and CALayer classes can be snapshotted" format:@"%@", viewOrLayer];
- }
- return nil;
-}
-
-@end
diff --git a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift b/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift
deleted file mode 100644
index 1bce175b..00000000
--- a/Example/Pods/FBSnapshotTestCase/FBSnapshotTestCase/SwiftSupport.swift
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
-* Copyright (c) 2015, Facebook, Inc.
-* All rights reserved.
-*
-* This source code is licensed under the BSD-style license found in the
-* LICENSE file in the root directory of this source tree. An additional grant
-* of patent rights can be found in the PATENTS file in the same directory.
-*
-*/
-
-#if swift(>=3)
- public extension FBSnapshotTestCase {
- public func FBSnapshotVerifyView(_ view: UIView, identifier: String = "", suffixes: NSOrderedSet = FBSnapshotTestCaseDefaultSuffixes(), tolerance: CGFloat = 0, file: StaticString = #file, line: UInt = #line) {
- FBSnapshotVerifyViewOrLayer(view, identifier: identifier, suffixes: suffixes, tolerance: tolerance, file: file, line: line)
- }
-
- public func FBSnapshotVerifyLayer(_ layer: CALayer, identifier: String = "", suffixes: NSOrderedSet = FBSnapshotTestCaseDefaultSuffixes(), tolerance: CGFloat = 0, file: StaticString = #file, line: UInt = #line) {
- FBSnapshotVerifyViewOrLayer(layer, identifier: identifier, suffixes: suffixes, tolerance: tolerance, file: file, line: line)
- }
-
- private func FBSnapshotVerifyViewOrLayer(_ viewOrLayer: AnyObject, identifier: String = "", suffixes: NSOrderedSet = FBSnapshotTestCaseDefaultSuffixes(), tolerance: CGFloat = 0, file: StaticString = #file, line: UInt = #line) {
- let envReferenceImageDirectory = self.getReferenceImageDirectory(withDefault: FB_REFERENCE_IMAGE_DIR)
- var error: NSError?
- var comparisonSuccess = false
-
- if let envReferenceImageDirectory = envReferenceImageDirectory {
- for suffix in suffixes {
- let referenceImagesDirectory = "\(envReferenceImageDirectory)\(suffix)"
- if viewOrLayer.isKind(of: UIView.self) {
- do {
- try compareSnapshot(of: viewOrLayer as! UIView, referenceImagesDirectory: referenceImagesDirectory, identifier: identifier, tolerance: tolerance)
- comparisonSuccess = true
- } catch let error1 as NSError {
- error = error1
- comparisonSuccess = false
- }
- } else if viewOrLayer.isKind(of: CALayer.self) {
- do {
- try compareSnapshot(of: viewOrLayer as! CALayer, referenceImagesDirectory: referenceImagesDirectory, identifier: identifier, tolerance: tolerance)
- comparisonSuccess = true
- } catch let error1 as NSError {
- error = error1
- comparisonSuccess = false
- }
- } else {
- assertionFailure("Only UIView and CALayer classes can be snapshotted")
- }
-
- assert(recordMode == false, message: "Test ran in record mode. Reference image is now saved. Disable record mode to perform an actual snapshot comparison!", file: file, line: line)
-
- if comparisonSuccess || recordMode {
- break
- }
-
- assert(comparisonSuccess, message: "Snapshot comparison failed: \(String(describing: error))", file: file, line: line)
- }
- } else {
- XCTFail("Missing value for referenceImagesDirectory - Set FB_REFERENCE_IMAGE_DIR as Environment variable in your scheme.")
- }
- }
-
- func assert(_ assertion: Bool, message: String, file: StaticString, line: UInt) {
- if !assertion {
- XCTFail(message, file: file, line: line)
- }
- }
- }
-#else
-public extension FBSnapshotTestCase {
- public func FBSnapshotVerifyView(view: UIView, identifier: String = "", suffixes: NSOrderedSet = FBSnapshotTestCaseDefaultSuffixes(), tolerance: CGFloat = 0, file: StaticString = #file, line: UInt = #line) {
- FBSnapshotVerifyViewOrLayer(view, identifier: identifier, suffixes: suffixes, tolerance: tolerance, file: file, line: line)
- }
-
- public func FBSnapshotVerifyLayer(layer: CALayer, identifier: String = "", suffixes: NSOrderedSet = FBSnapshotTestCaseDefaultSuffixes(), tolerance: CGFloat = 0, file: StaticString = #file, line: UInt = #line) {
- FBSnapshotVerifyViewOrLayer(layer, identifier: identifier, suffixes: suffixes, tolerance: tolerance, file: file, line: line)
- }
-
- private func FBSnapshotVerifyViewOrLayer(viewOrLayer: AnyObject, identifier: String = "", suffixes: NSOrderedSet = FBSnapshotTestCaseDefaultSuffixes(), tolerance: CGFloat = 0, file: StaticString = #file, line: UInt = #line) {
- let envReferenceImageDirectory = self.getReferenceImageDirectoryWithDefault(FB_REFERENCE_IMAGE_DIR)
- var error: NSError?
- var comparisonSuccess = false
-
- if let envReferenceImageDirectory = envReferenceImageDirectory {
- for suffix in suffixes {
- let referenceImagesDirectory = "\(envReferenceImageDirectory)\(suffix)"
- if viewOrLayer.isKindOfClass(UIView) {
- do {
- try compareSnapshotOfView(viewOrLayer as! UIView, referenceImagesDirectory: referenceImagesDirectory, identifier: identifier, tolerance: tolerance)
- comparisonSuccess = true
- } catch let error1 as NSError {
- error = error1
- comparisonSuccess = false
- }
- } else if viewOrLayer.isKindOfClass(CALayer) {
- do {
- try compareSnapshotOfLayer(viewOrLayer as! CALayer, referenceImagesDirectory: referenceImagesDirectory, identifier: identifier, tolerance: tolerance)
- comparisonSuccess = true
- } catch let error1 as NSError {
- error = error1
- comparisonSuccess = false
- }
- } else {
- assertionFailure("Only UIView and CALayer classes can be snapshotted")
- }
-
- assert(recordMode == false, message: "Test ran in record mode. Reference image is now saved. Disable record mode to perform an actual snapshot comparison!", file: file, line: line)
-
- if comparisonSuccess || recordMode {
- break
- }
-
- assert(comparisonSuccess, message: "Snapshot comparison failed: \(error)", file: file, line: line)
- }
- } else {
- XCTFail("Missing value for referenceImagesDirectory - Set FB_REFERENCE_IMAGE_DIR as Environment variable in your scheme.")
- }
- }
-
- func assert(assertion: Bool, message: String, file: StaticString, line: UInt) {
- if !assertion {
- XCTFail(message, file: file, line: line)
- }
- }
-}
-#endif
diff --git a/Example/Pods/FBSnapshotTestCase/LICENSE b/Example/Pods/FBSnapshotTestCase/LICENSE
deleted file mode 100644
index 2dd780cb..00000000
--- a/Example/Pods/FBSnapshotTestCase/LICENSE
+++ /dev/null
@@ -1,29 +0,0 @@
-BSD License
-
-For the FBSnapshotTestCase software
-
-Copyright (c) 2013, Facebook, Inc.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
- * Neither the name Facebook nor the names of its contributors may be used to
- endorse or promote products derived from this software without specific
- prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/Example/Pods/Local Podspecs/PopupDialog.podspec.json b/Example/Pods/Local Podspecs/PopupDialog.podspec.json
index 4cb327fb..64e9f8e2 100644
--- a/Example/Pods/Local Podspecs/PopupDialog.podspec.json
+++ b/Example/Pods/Local Podspecs/PopupDialog.podspec.json
@@ -1,6 +1,6 @@
{
"name": "PopupDialog",
- "version": "0.9.2",
+ "version": "1.1.0",
"summary": "A simple custom popup dialog view controller",
"homepage": "https://github.com/orderella/PopupDialog",
"license": {
@@ -12,13 +12,14 @@
},
"source": {
"git": "https://github.com/orderella/PopupDialog.git",
- "tag": "0.9.2"
+ "tag": "1.1.0"
},
"social_media_url": "https://twitter.com/theMWFire",
"platforms": {
- "ios": "9.0"
+ "ios": "10.0"
},
"source_files": "PopupDialog/Classes/**/*",
+ "swift_version": "5",
"dependencies": {
"DynamicBlurView": [
"~> 3.0.1"
diff --git a/Example/Pods/Local Podspecs/FBSnapshotTestCase.podspec.json b/Example/Pods/Local Podspecs/iOSSnapshotTestCase.podspec.json
similarity index 81%
rename from Example/Pods/Local Podspecs/FBSnapshotTestCase.podspec.json
rename to Example/Pods/Local Podspecs/iOSSnapshotTestCase.podspec.json
index 351c12fc..ca8f25b2 100644
--- a/Example/Pods/Local Podspecs/FBSnapshotTestCase.podspec.json
+++ b/Example/Pods/Local Podspecs/iOSSnapshotTestCase.podspec.json
@@ -1,17 +1,18 @@
{
- "name": "FBSnapshotTestCase",
- "version": "2.1.4",
+ "name": "iOSSnapshotTestCase",
+ "module_name": "FBSnapshotTestCase",
+ "version": "6.0.2",
"summary": "Snapshot view unit tests for iOS",
"description": "A \"snapshot test case\" takes a configured UIView or CALayer\nand uses the renderInContext: method to get an image snapshot\nof its contents. It compares this snapshot to a \"reference image\"\nstored in your source code repository and fails the test if the\ntwo images don't match.",
- "homepage": "https://github.com/facebook/ios-snapshot-test-case",
- "license": "BSD",
- "authors": "Facebook",
+ "homepage": "https://github.com/uber/ios-snapshot-test-case",
+ "license": "MIT",
+ "authors": "Uber",
"source": {
- "git": "https://github.com/facebook/ios-snapshot-test-case.git",
- "tag": "2.1.4"
+ "git": "https://github.com/uber/ios-snapshot-test-case.git",
+ "tag": "6.0.2"
},
"platforms": {
- "ios": "7.0",
+ "ios": "10.0",
"tvos": "9.0"
},
"requires_arc": true,
@@ -49,7 +50,7 @@
{
"name": "SwiftSupport",
"dependencies": {
- "FBSnapshotTestCase/Core": [
+ "iOSSnapshotTestCase/Core": [
]
},
diff --git a/Example/Pods/Manifest.lock b/Example/Pods/Manifest.lock
index 58e41b58..dae79920 100644
--- a/Example/Pods/Manifest.lock
+++ b/Example/Pods/Manifest.lock
@@ -1,17 +1,17 @@
PODS:
- DynamicBlurView (3.0.1)
- - FBSnapshotTestCase (2.1.4):
- - FBSnapshotTestCase/SwiftSupport (= 2.1.4)
- - FBSnapshotTestCase/Core (2.1.4)
- - FBSnapshotTestCase/SwiftSupport (2.1.4):
- - FBSnapshotTestCase/Core
- - Nimble (7.3.1)
- - PopupDialog (0.9.2):
+ - iOSSnapshotTestCase (6.0.2):
+ - iOSSnapshotTestCase/SwiftSupport (= 6.0.2)
+ - iOSSnapshotTestCase/Core (6.0.2)
+ - iOSSnapshotTestCase/SwiftSupport (6.0.2):
+ - iOSSnapshotTestCase/Core
+ - Nimble (7.3.4)
+ - PopupDialog (1.1.0):
- DynamicBlurView (~> 3.0.1)
- - SwiftLint (0.29.1)
+ - SwiftLint (0.31.0)
DEPENDENCIES:
- - FBSnapshotTestCase (~> 2.1.4)
+ - iOSSnapshotTestCase (~> 6.0.2)
- Nimble (~> 7.3.1)
- PopupDialog (from `../`)
- SwiftLint (~> 0.22)
@@ -19,7 +19,7 @@ DEPENDENCIES:
SPEC REPOS:
https://github.com/cocoapods/specs.git:
- DynamicBlurView
- - FBSnapshotTestCase
+ - iOSSnapshotTestCase
- Nimble
- SwiftLint
@@ -29,11 +29,11 @@ EXTERNAL SOURCES:
SPEC CHECKSUMS:
DynamicBlurView: b1df5415f9bd31897549e5d7077e5ec120a4d636
- FBSnapshotTestCase: 094f9f314decbabe373b87cc339bea235a63e07a
- Nimble: 04f732da099ea4d153122aec8c2a88fd0c7219ae
- PopupDialog: f4bb461bf70ff422be0b56656566424ee9273080
- SwiftLint: 6772320e40b52049053a518c17db9b0634a0b45a
+ iOSSnapshotTestCase: 20083a7be9b8ef742610e16c79f15ad829441f29
+ Nimble: 051e3d8912d40138fa5591c78594f95fb172af37
+ PopupDialog: 42fb7a0bc4fafdf89fef8b5b2b127a6023f3e1cc
+ SwiftLint: 7a0227733d786395817373b2d0ca799fd0093ff3
-PODFILE CHECKSUM: 2d0166d1e20a1e39377fb316142d39a3785d58f2
+PODFILE CHECKSUM: 745b14824f525113e600d7bfeeb81d4a978d6f28
-COCOAPODS: 1.7.2
+COCOAPODS: 1.6.1
diff --git a/Example/Pods/Nimble/README.md b/Example/Pods/Nimble/README.md
index 19c562fe..647028c8 100644
--- a/Example/Pods/Nimble/README.md
+++ b/Example/Pods/Nimble/README.md
@@ -1277,7 +1277,7 @@ public func equal(expectedValue: T?) -> Predicate {
// Predicate { actual in ... }
//
// But shown with types here for clarity.
- return Predicate { (actual: Expression) throws -> PredicateResult in
+ return Predicate { (actualExpression: Expression) throws -> PredicateResult in
let msg = ExpectationMessage.expectedActualValueTo("equal <\(expectedValue)>")
if let actualValue = try actualExpression.evaluate() {
return PredicateResult(
diff --git a/Example/Pods/Nimble/Sources/Nimble/Adapters/NimbleEnvironment.swift b/Example/Pods/Nimble/Sources/Nimble/Adapters/NimbleEnvironment.swift
index e1b54323..818e4780 100644
--- a/Example/Pods/Nimble/Sources/Nimble/Adapters/NimbleEnvironment.swift
+++ b/Example/Pods/Nimble/Sources/Nimble/Adapters/NimbleEnvironment.swift
@@ -3,7 +3,7 @@ import Foundation
/// "Global" state of Nimble is stored here. Only DSL functions should access / be aware of this
/// class' existence
-internal class NimbleEnvironment {
+internal class NimbleEnvironment: NSObject {
static var activeInstance: NimbleEnvironment {
get {
let env = Thread.current.threadDictionary["NimbleEnvironment"]
@@ -29,7 +29,7 @@ internal class NimbleEnvironment {
var suppressTVOSAssertionWarning: Bool = false
var awaiter: Awaiter
- init() {
+ override init() {
let timeoutQueue: DispatchQueue
if #available(OSX 10.10, *) {
timeoutQueue = DispatchQueue.global(qos: .userInitiated)
@@ -40,6 +40,9 @@ internal class NimbleEnvironment {
awaiter = Awaiter(
waitLock: AssertionWaitLock(),
asyncQueue: .main,
- timeoutQueue: timeoutQueue)
+ timeoutQueue: timeoutQueue
+ )
+
+ super.init()
}
}
diff --git a/Example/Pods/Nimble/Sources/Nimble/DSL+Wait.swift b/Example/Pods/Nimble/Sources/Nimble/DSL+Wait.swift
index e8741368..ee281edc 100644
--- a/Example/Pods/Nimble/Sources/Nimble/DSL+Wait.swift
+++ b/Example/Pods/Nimble/Sources/Nimble/DSL+Wait.swift
@@ -89,11 +89,17 @@ internal class NMBWait: NSObject {
#if (os(macOS) || os(iOS) || os(tvOS) || os(watchOS)) && !SWIFT_PACKAGE
@objc(untilFile:line:action:)
- internal class func until(_ file: FileString = #file, line: UInt = #line, action: @escaping (() -> Void) -> Void) {
+ internal class func until(
+ _ file: FileString = #file,
+ line: UInt = #line,
+ action: @escaping (@escaping () -> Void) -> Void) {
until(timeout: 1, file: file, line: line, action: action)
}
#else
- internal class func until(_ file: FileString = #file, line: UInt = #line, action: @escaping (() -> Void) -> Void) {
+ internal class func until(
+ _ file: FileString = #file,
+ line: UInt = #line,
+ action: @escaping (@escaping () -> Void) -> Void) {
until(timeout: 1, file: file, line: line, action: action)
}
#endif
diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/Async.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/Async.swift
index 63e863ed..c70b65e2 100644
--- a/Example/Pods/Nimble/Sources/Nimble/Matchers/Async.swift
+++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/Async.swift
@@ -23,14 +23,18 @@ private func async(style: ExpectationStyle, predicate: Predicate, timeout:
}
switch result {
case .completed: return lastPredicateResult!
- case .timedOut: return PredicateResult(status: .fail, message: lastPredicateResult!.message)
+ case .timedOut:
+ let message = lastPredicateResult?.message ?? .fail("timed out before returning a value")
+ return PredicateResult(status: .fail, message: message)
case let .errorThrown(error):
return PredicateResult(status: .fail, message: .fail("unexpected error thrown: <\(error)>"))
case let .raisedException(exception):
return PredicateResult(status: .fail, message: .fail("unexpected exception raised: \(exception)"))
case .blockedRunLoop:
// swiftlint:disable:next line_length
- return PredicateResult(status: .fail, message: lastPredicateResult!.message.appended(message: " (timed out, but main thread was unresponsive)."))
+ let message = lastPredicateResult?.message.appended(message: " (timed out, but main run loop was unresponsive).") ??
+ .fail("main run loop was unresponsive")
+ return PredicateResult(status: .fail, message: message)
case .incomplete:
internalError("Reached .incomplete state for \(fnName)(...).")
}
diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift
index 94758c2e..dfbcb9e8 100644
--- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift
+++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeIdenticalTo.swift
@@ -5,14 +5,38 @@ import Foundation
public func beIdenticalTo(_ expected: Any?) -> Predicate {
return Predicate.define { actualExpression in
#if os(Linux)
- let actual = try actualExpression.evaluate() as? AnyObject
+ #if swift(>=4.0)
+ #if !swift(>=4.1.50)
+ let actual = try actualExpression.evaluate() as? AnyObject
+ #else
+ let actual = try actualExpression.evaluate() as AnyObject?
+ #endif
+ #else
+ #if !swift(>=3.4)
+ let actual = try actualExpression.evaluate() as? AnyObject
+ #else
+ let actual = try actualExpression.evaluate() as AnyObject?
+ #endif
+ #endif
#else
let actual = try actualExpression.evaluate() as AnyObject?
#endif
let bool: Bool
#if os(Linux)
- bool = actual === (expected as? AnyObject) && actual !== nil
+ #if swift(>=4.0)
+ #if !swift(>=4.1.50)
+ bool = actual === (expected as? AnyObject) && actual !== nil
+ #else
+ bool = actual === (expected as AnyObject?) && actual !== nil
+ #endif
+ #else
+ #if !swift(>=3.4)
+ bool = actual === (expected as? AnyObject) && actual !== nil
+ #else
+ bool = actual === (expected as AnyObject?) && actual !== nil
+ #endif
+ #endif
#else
bool = actual === (expected as AnyObject?) && actual !== nil
#endif
diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeginWith.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeginWith.swift
index a013f9fa..cb3efe30 100644
--- a/Example/Pods/Nimble/Sources/Nimble/Matchers/BeginWith.swift
+++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/BeginWith.swift
@@ -35,8 +35,7 @@ public func beginWith(_ startingElement: Any) -> Predicate
public func beginWith(_ startingSubstring: String) -> Predicate {
return Predicate.simple("begin with <\(startingSubstring)>") { actualExpression in
if let actual = try actualExpression.evaluate() {
- let range = actual.range(of: startingSubstring)
- return PredicateStatus(bool: range != nil && range!.lowerBound == actual.startIndex)
+ return PredicateStatus(bool: actual.hasPrefix(startingSubstring))
}
return .fail
}
diff --git a/Example/Pods/Nimble/Sources/Nimble/Matchers/Equal.swift b/Example/Pods/Nimble/Sources/Nimble/Matchers/Equal.swift
index 5f26f492..b8ac2c9d 100644
--- a/Example/Pods/Nimble/Sources/Nimble/Matchers/Equal.swift
+++ b/Example/Pods/Nimble/Sources/Nimble/Matchers/Equal.swift
@@ -7,17 +7,15 @@ import Foundation
public func equal(_ expectedValue: T?) -> Predicate {
return Predicate.define("equal <\(stringify(expectedValue))>") { actualExpression, msg in
let actualValue = try actualExpression.evaluate()
- let matches = actualValue == expectedValue && expectedValue != nil
- if expectedValue == nil || actualValue == nil {
- if expectedValue == nil && actualValue != nil {
- return PredicateResult(
- status: .fail,
- message: msg.appendedBeNilHint()
- )
- }
+ switch (expectedValue, actualValue) {
+ case (nil, _?):
+ return PredicateResult(status: .fail, message: msg.appendedBeNilHint())
+ case (nil, nil), (_, nil):
return PredicateResult(status: .fail, message: msg)
+ case (let expected?, let actual?):
+ let matches = expected == actual
+ return PredicateResult(bool: matches, message: msg)
}
- return PredicateResult(status: PredicateStatus(bool: matches), message: msg)
}
}
@@ -28,19 +26,15 @@ public func equal(_ expectedValue: T?) -> Predicate {
public func equal(_ expectedValue: [T: C]?) -> Predicate<[T: C]> {
return Predicate.define("equal <\(stringify(expectedValue))>") { actualExpression, msg in
let actualValue = try actualExpression.evaluate()
- if expectedValue == nil || actualValue == nil {
- if expectedValue == nil && actualValue != nil {
- return PredicateResult(
- status: .fail,
- message: msg.appendedBeNilHint()
- )
- }
+ switch (expectedValue, actualValue) {
+ case (nil, _?):
+ return PredicateResult(status: .fail, message: msg.appendedBeNilHint())
+ case (nil, nil), (_, nil):
return PredicateResult(status: .fail, message: msg)
+ case (let expected?, let actual?):
+ let matches = expected == actual
+ return PredicateResult(bool: matches, message: msg)
}
- return PredicateResult(
- status: PredicateStatus(bool: expectedValue! == actualValue!),
- message: msg
- )
}
}
@@ -49,61 +43,54 @@ public func equal(_ expectedValue: [T: C]?) -> Predicate<[T: C]
public func equal(_ expectedValue: [T]?) -> Predicate<[T]> {
return Predicate.define("equal <\(stringify(expectedValue))>") { actualExpression, msg in
let actualValue = try actualExpression.evaluate()
- if expectedValue == nil || actualValue == nil {
- if expectedValue == nil && actualValue != nil {
- return PredicateResult(
- status: .fail,
- message: msg.appendedBeNilHint()
- )
- }
- return PredicateResult(
- status: .fail,
- message: msg
- )
+ switch (expectedValue, actualValue) {
+ case (nil, _?):
+ return PredicateResult(status: .fail, message: msg.appendedBeNilHint())
+ case (nil, nil), (_, nil):
+ return PredicateResult(status: .fail, message: msg)
+ case (let expected?, let actual?):
+ let matches = expected == actual
+ return PredicateResult(bool: matches, message: msg)
}
- return PredicateResult(
- bool: expectedValue! == actualValue!,
- message: msg
- )
}
}
/// A Nimble matcher allowing comparison of collection with optional type
public func equal(_ expectedValue: [T?]) -> Predicate<[T?]> {
return Predicate.define("equal <\(stringify(expectedValue))>") { actualExpression, msg in
- if let actualValue = try actualExpression.evaluate() {
- let doesNotMatch = PredicateResult(
- status: .doesNotMatch,
- message: msg
- )
-
- if expectedValue.count != actualValue.count {
- return doesNotMatch
- }
-
- for (index, item) in actualValue.enumerated() {
- let otherItem = expectedValue[index]
- if item == nil && otherItem == nil {
- continue
- } else if item == nil && otherItem != nil {
- return doesNotMatch
- } else if item != nil && otherItem == nil {
- return doesNotMatch
- } else if item! != otherItem! {
- return doesNotMatch
- }
- }
-
- return PredicateResult(
- status: .matches,
- message: msg
- )
- } else {
+ guard let actualValue = try actualExpression.evaluate() else {
return PredicateResult(
status: .fail,
message: msg.appendedBeNilHint()
)
}
+
+ let doesNotMatch = PredicateResult(
+ status: .doesNotMatch,
+ message: msg
+ )
+
+ if expectedValue.count != actualValue.count {
+ return doesNotMatch
+ }
+
+ for (index, item) in actualValue.enumerated() {
+ let otherItem = expectedValue[index]
+ if item == nil && otherItem == nil {
+ continue
+ } else if item == nil && otherItem != nil {
+ return doesNotMatch
+ } else if item != nil && otherItem == nil {
+ return doesNotMatch
+ } else if item! != otherItem! {
+ return doesNotMatch
+ }
+ }
+
+ return PredicateResult(
+ status: .matches,
+ message: msg
+ )
}
}
@@ -128,44 +115,45 @@ private func equal(_ expectedValue: Set?, stringify: @escaping (Set?) -
var errorMessage: ExpectationMessage =
.expectedActualValueTo("equal <\(stringify(expectedValue))>")
- if let expectedValue = expectedValue {
- if let actualValue = try actualExpression.evaluate() {
- errorMessage = .expectedCustomValueTo(
- "equal <\(stringify(expectedValue))>",
- "<\(stringify(actualValue))>"
- )
-
- if expectedValue == actualValue {
- return PredicateResult(
- status: .matches,
- message: errorMessage
- )
- }
-
- let missing = expectedValue.subtracting(actualValue)
- if missing.count > 0 {
- errorMessage = errorMessage.appended(message: ", missing <\(stringify(missing))>")
- }
-
- let extra = actualValue.subtracting(expectedValue)
- if extra.count > 0 {
- errorMessage = errorMessage.appended(message: ", extra <\(stringify(extra))>")
- }
- return PredicateResult(
- status: .doesNotMatch,
- message: errorMessage
- )
- }
+ guard let expectedValue = expectedValue else {
return PredicateResult(
status: .fail,
message: errorMessage.appendedBeNilHint()
)
- } else {
+ }
+
+ guard let actualValue = try actualExpression.evaluate() else {
return PredicateResult(
status: .fail,
message: errorMessage.appendedBeNilHint()
)
}
+
+ errorMessage = .expectedCustomValueTo(
+ "equal <\(stringify(expectedValue))>",
+ "<\(stringify(actualValue))>"
+ )
+
+ if expectedValue == actualValue {
+ return PredicateResult(
+ status: .matches,
+ message: errorMessage
+ )
+ }
+
+ let missing = expectedValue.subtracting(actualValue)
+ if missing.count > 0 {
+ errorMessage = errorMessage.appended(message: ", missing <\(stringify(missing))>")
+ }
+
+ let extra = actualValue.subtracting(expectedValue)
+ if extra.count > 0 {
+ errorMessage = errorMessage.appended(message: ", extra <\(stringify(extra))>")
+ }
+ return PredicateResult(
+ status: .doesNotMatch,
+ message: errorMessage
+ )
}
}
diff --git a/Example/Pods/Nimble/Sources/Nimble/Utils/Await.swift b/Example/Pods/Nimble/Sources/Nimble/Utils/Await.swift
index cb672adc..ad7a6eb1 100644
--- a/Example/Pods/Nimble/Sources/Nimble/Utils/Await.swift
+++ b/Example/Pods/Nimble/Sources/Nimble/Utils/Await.swift
@@ -263,7 +263,7 @@ internal class AwaitPromiseBuilder {
self.trigger.timeoutSource.resume()
while self.promise.asyncResult.isIncomplete() {
// Stopping the run loop does not work unless we run only 1 mode
- #if swift(>=4.2)
+ #if swift(>=4.2) && (os(macOS) || os(iOS) || os(tvOS))
_ = RunLoop.current.run(mode: .default, before: .distantFuture)
#else
_ = RunLoop.current.run(mode: .defaultRunLoopMode, before: .distantFuture)
diff --git a/Example/Pods/Nimble/Sources/Nimble/Utils/Stringers.swift b/Example/Pods/Nimble/Sources/Nimble/Utils/Stringers.swift
index 7c4d273e..ce21eeab 100644
--- a/Example/Pods/Nimble/Sources/Nimble/Utils/Stringers.swift
+++ b/Example/Pods/Nimble/Sources/Nimble/Utils/Stringers.swift
@@ -3,7 +3,19 @@ import Foundation
internal func identityAsString(_ value: Any?) -> String {
let anyObject: AnyObject?
#if os(Linux)
- anyObject = value as? AnyObject
+ #if swift(>=4.0)
+ #if !swift(>=4.1.50)
+ anyObject = value as? AnyObject
+ #else
+ anyObject = value as AnyObject?
+ #endif
+ #else
+ #if !swift(>=3.4)
+ anyObject = value as? AnyObject
+ #else
+ anyObject = value as AnyObject?
+ #endif
+ #endif
#else
anyObject = value as AnyObject?
#endif
diff --git a/Example/Pods/Pods.xcodeproj/project.pbxproj b/Example/Pods/Pods.xcodeproj/project.pbxproj
index ac73f143..eb591280 100644
--- a/Example/Pods/Pods.xcodeproj/project.pbxproj
+++ b/Example/Pods/Pods.xcodeproj/project.pbxproj
@@ -7,9 +7,9 @@
objects = {
/* Begin PBXAggregateTarget section */
- 52B60EC2A583F24ACBB69C113F5488B9 /* SwiftLint */ = {
+ 462030076D657DEC3A2BAA37E0C875A2 /* SwiftLint */ = {
isa = PBXAggregateTarget;
- buildConfigurationList = AE7B4FB01588B9E6DF09CB79FC7CE7BD /* Build configuration list for PBXAggregateTarget "SwiftLint" */;
+ buildConfigurationList = E7020DB2F7FE1DC1165D29E9F84E3E2A /* Build configuration list for PBXAggregateTarget "SwiftLint" */;
buildPhases = (
);
dependencies = (
@@ -20,966 +20,945 @@
/* End PBXAggregateTarget section */
/* Begin PBXBuildFile section */
- 00224C929D57F45B70E87359E719948D /* FBSnapshotTestCase.h in Headers */ = {isa = PBXBuildFile; fileRef = 257D5F8B0DCEC33CDA26D63499FB0495 /* FBSnapshotTestCase.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 00620E71264E0E954D667CEAD6BD0E99 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 11DB7CB31983107A7414F650F4E837A4 /* UIKit.framework */; };
- 01869817854E030910D5C2F7FB4D64BB /* ContainElementSatisfying.swift in Sources */ = {isa = PBXBuildFile; fileRef = 698D59A6E494E53C0F43A878354170EF /* ContainElementSatisfying.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 01DAA6DD1809A39129FF7C72DDF93054 /* mach_excServer.h in Headers */ = {isa = PBXBuildFile; fileRef = 1230E2988BCB2EEEF323AEA8ECBA0C2F /* mach_excServer.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 030FCBCF4FD8CD3905C39EDA654D29BD /* PopupDialogDefaultViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E676FA350BAF8126087BBBBCB484CDB /* PopupDialogDefaultViewController.swift */; };
- 0725A6F6AF5A97F9D46B3188E135D5B2 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 38D6C61133B639A2B434904EDC0E25EC /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 08452A247B58228DFFC77D7BA30DD668 /* DynamicBlurView.h in Headers */ = {isa = PBXBuildFile; fileRef = 7155D2ED8BE5F64CC80C5520FC745A76 /* DynamicBlurView.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 0F82656B116745EE31DB985B8096CD60 /* UIImageView+Calculations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9294A2D8BAEE19009408690C2B5D3F4A /* UIImageView+Calculations.swift */; };
- 0FDD7A2A9FF06E643EEB86C2DB234913 /* Pods-PopupDialog_Example-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9CC6517936E4387C41FE2189217EBA63 /* Pods-PopupDialog_Example-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 1098AC9B0A4F55B1CCF3C32D46C65FF8 /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 515D96EB3DCC6FFD927E5316AECF8E3E /* NimbleEnvironment.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 11C410135C7E89353B480AC8DE0BFB77 /* UIApplication+StrictKeyWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 4066371F801BE06ABA7B5378D1516984 /* UIApplication+StrictKeyWindow.m */; };
- 11E562107FE281404113395BA7DA35D8 /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = F798F699A9B2C2769E367394B7730508 /* AssertionDispatcher.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 14AD81D52FAD9CF2C065C61FB00C3B4F /* UIImage+Diff.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E8A64BA70EF2572DB9B8AB444F3EB2F /* UIImage+Diff.m */; };
- 14C511527597E5846AB2627F791C7D8E /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F122610CA81508E4814DDCE94B464D44 /* QuartzCore.framework */; };
- 169D250E01A497F88370028FD950A37C /* TransitionAnimator.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2EE30A42A66A81CBC64D0BBA25F792B /* TransitionAnimator.swift */; };
- 18643D4F9BC327B1E5B9175F4260AC0E /* DynamicBlurView-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 83EF801B4936FC33191B799D61923BC9 /* DynamicBlurView-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 1B150812C28ED02DDC40A757EA00EFDB /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = C48AD81FC13B15ABDC7C963EAB2D5167 /* NMBExpectation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 1C14E028D177632DF0B363082E85E536 /* CGImage+Accelerate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5048A1AEC9B5705E9EAEF6551940EAF /* CGImage+Accelerate.swift */; };
- 225555187BFD67F7F6DADEA6C73C567F /* PopupDialogContainerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03D6C9895C238A039A720030480F2172 /* PopupDialogContainerView.swift */; };
- 22643CBE1C189CCDF72B28ED90ED9E76 /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EB568B257A9760AF7D1EB4AC7C16047 /* Equal.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 2C38665499A01B08A0D011CA7AF4FE8A /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = E22E40DA96F1E8F484109F7DEEE7D5A4 /* FailureMessage.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 2DCFF0CE0BD295F1D46D3247F36B192C /* UIImage+Compare.m in Sources */ = {isa = PBXBuildFile; fileRef = 7465FC20B8D5A8395133678BB28FDA26 /* UIImage+Compare.m */; };
- 305C1342B9B2F1449A3CAEA2AA961680 /* Predicate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25CAF0CF8FA9D90CE9A964CC2EBC89BE /* Predicate.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 306D848638158C6AB2B6FC2ADC1DFD5A /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CA3D96AE50B7C956B26E595B9D4F231 /* BeGreaterThan.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 34A653F2102D5C686B9989E1A3A90ABA /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B860197A4EB0939F19A944C8DE7B0BB /* MatchError.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 364F3140C786E01EFCF6656C8A2FF6C2 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3578BE46EA8B3A926D36CD6419758AA4 /* Contain.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 37AFD441D3948E62ABBFFBDC662F6DB6 /* UIView+Animations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C2C079E8AFC3A5EFF22EE190BAEC967 /* UIView+Animations.swift */; };
- 3A7F4D153DC75E8986A55E7F2FFE9CB1 /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7199B1867D8AD2C4E059C8765E3F3F49 /* SatisfyAnyOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 3FE6B7466A47A04A940760E383465EAA /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = A92CB81D978376BC2F0596E89E8AF772 /* NimbleXCTestHandler.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 40039E0AF0D764360B1D4FC4F7950D2E /* UIApplication+StrictKeyWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = C6A00C4B2ADB7764C47E582CA6A3518A /* UIApplication+StrictKeyWindow.h */; settings = {ATTRIBUTES = (Project, ); }; };
- 405AB644E5E32AB19AE8697B4C0CE124 /* CwlMachBadInstructionHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = C664F4D586706BFD0F11F98B08B10C12 /* CwlMachBadInstructionHandler.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 41840A6B236DEFC868F8F8FF3A5EBDB6 /* Pods-PopupDialog_Tests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 6123086D7F043014510D0169F0DEF417 /* Pods-PopupDialog_Tests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 41E31C552EE259E4BEC6CFE49299B5C2 /* CwlCatchBadInstruction.swift in Sources */ = {isa = PBXBuildFile; fileRef = B12949F2863B29728E61794A7286FD90 /* CwlCatchBadInstruction.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 42414824559FA605DF0EDCD382366DBD /* DynamicBlurView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0896F4869F45E8DA6473F1BFE63E57FE /* DynamicBlurView.swift */; };
- 42AB7693DF9D773D21FB710EC9C848D9 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = E37DAD951F357455584D34064B109450 /* Errors.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 444242F3A5A087132A93CA36017AD620 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4BAB293DC0DAC1537437AC4816A067CE /* Async.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 4C6E460A6B911AFFD987F78AC59B7466 /* DynamicBlurView.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B450B6BFDFE3AEDDA29F72764AEA729C /* DynamicBlurView.framework */; };
- 5546955AFBE8D354D17380A294A25CE6 /* PopupDialog.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DA971E985C8B31B8F00808F5410A674 /* PopupDialog.swift */; };
- 561BE9D824E69DE2B0E24947326A6A9B /* ThrowAssertion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B80D23727C7BAECE77452D3786E9BE8 /* ThrowAssertion.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 5A8FF79601D18B09D614A0B329F7DC05 /* Pods-PopupDialog_Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2E14A056794F0B689BD9BC5BFC1E7359 /* Pods-PopupDialog_Tests-dummy.m */; };
- 5CE5E8EA75E0B3DC5BE140B61DF37EFD /* Nimble-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = A820AD98C110684A43E3EEF2E11D41B5 /* Nimble-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 5F3B71C56395F5BCE2BAB106D780A316 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6134218EEC838AB9A4D29F431169695 /* BeAnInstanceOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 62DFF94A7A777939C861EDA13627999B /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F632647C2DF9AA322A254983005F723 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 63E9E7352E66E23B5507639CB5EE00C6 /* CwlMachBadInstructionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 06E50A391A2FBD68EA8C9758D39355B3 /* CwlMachBadInstructionHandler.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 64ED91354C9DB1A35CFE783624260E0F /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84B0303D51ED5C17293BC4477D02DAA9 /* BeNil.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 67A144189500D0F068317EA82B7A3478 /* CwlBadInstructionException.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEBE9743BEE9E58F26BA6451F2EFB056 /* CwlBadInstructionException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 68846CF99809A8BB96520D4EF68A1CD6 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0396503F8DBB4F70B59E78A9F62695F3 /* Foundation.framework */; };
- 688A762122DE1032000CB933 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 688A762022DE1032000CB933 /* Assets.xcassets */; };
- 6ADEB55FAF48827EE08D5E1B6F946501 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 493396BFE4F2972CC647D93F01EA4E3D /* BeLogical.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 6AE239C5D116E1C06F5705699FB9EAF0 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8F1C8AE77592302C5AF8840458F6A7C3 /* XCTest.framework */; };
- 6DBC8EB7532E931C2FBDA71D1E0B66A4 /* FBSnapshotTestCase-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F87B4C3DF9E39BE60AA2539F7D6465CD /* FBSnapshotTestCase-dummy.m */; };
- 72EAF9D11A6F6AA098FDA5BF0D9614B3 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB06727B46710C042DD7C1C529932490 /* AssertionRecorder.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 73D0683E05F3565AE7175088B7CE6DC0 /* PopupDialog-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4A0A1FC688B731C3AFCEDE79E21616EC /* PopupDialog-dummy.m */; };
- 75715424923FF012103361F76C7A8A05 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68FCF21795952014AA402E622F36E049 /* AllPass.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 77CC261294B63B80E6C4285045943438 /* ExpectationMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70A02165B63C411CB0CA1467595C40C9 /* ExpectationMessage.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 7A009CFEBD7D09FB5DA532F54EB9FBEF /* TransitionAnimations.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBC7F6A9940A06449DE233A88EB8ECB1 /* TransitionAnimations.swift */; };
- 7BF64B8EB111B20098752B4813CD13D9 /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AA92EDEF03A1015E5878A9ECA73BB6A /* Match.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 7EBE128BBA4CC34DBF4853B1E747C724 /* DynamicBlurView-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 101D3770BE97321333AF4B130E226A96 /* DynamicBlurView-dummy.m */; };
- 81156AE99DEF656F29B13B8176CDC3B5 /* CGContext+CGImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74D42C5E69D6BBA474F0716A84810ED2 /* CGContext+CGImage.swift */; };
- 82682BC16D5B4EE13D8455F008983751 /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 112DB459CB78FF9B606088701CDE72FD /* MatcherFunc.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 83B9E5412A63412A151E0092BF6AF7CA /* PresentationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0DCFE8F07DDE9B0C2DFCEE86E9C7C967 /* PresentationManager.swift */; };
- 8630CA8EABAD27223326FB08E572E639 /* CwlDarwinDefinitions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A51B1E07AF713CC32319375437DD1AC /* CwlDarwinDefinitions.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 864E6B0B8D286D38A202F0381C7D45DD /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = CFC0EDE4766C3C1873262119D2CD0A94 /* BeLessThan.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 8750F8C785B06B6A70E10B61B4B88003 /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 057F58C7AE2DA604796B30040884DFBA /* SourceLocation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 88396E68DC05A379282F3B374F75F43C /* FBSnapshotTestController.m in Sources */ = {isa = PBXBuildFile; fileRef = E852C041A4280BFE0EFA15CF1F1BB706 /* FBSnapshotTestController.m */; };
- 8A2AADAB3E3CBA788D4DF80984DADFE8 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = 81E41ADEE8C8232E7CC5A1F2F9577386 /* XCTestObservationCenter+Register.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 8CE3BF0ACE07EA42DD5DAC871BF4B767 /* FBSnapshotTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 403A096447721C75BF14C7A3F6BCCDB2 /* FBSnapshotTestCase.m */; };
- 90142C6259374E18E640396A59AD379A /* FBSnapshotTestController.h in Headers */ = {isa = PBXBuildFile; fileRef = 74D83E2536A78136F46912FBFF2B77AA /* FBSnapshotTestController.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 928FFA6E7256231E743768EBC78E36A7 /* PopupDialog-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 0A08865764C1B76BA9B96BDB7A661620 /* PopupDialog-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 943EF9191F50F5C8364BFB46E6FFCACB /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3F6E03C41DFE8DDC1511048AB880C30 /* PostNotification.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 9452493EEAF67E7B9C9224D696ABBA8B /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = D052209AC8712176CF87A682578D089F /* BeginWith.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 9586B053F23E4786E0499C3B76ABE281 /* ToSucceed.swift in Sources */ = {isa = PBXBuildFile; fileRef = E01E99A68FE6D40A3471AE8B17E719F3 /* ToSucceed.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 96E1774B23F5FB6842C3B3E36B1CF918 /* Pods-PopupDialog_Example-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A4AB04D722A9B70580BB83D9CC041170 /* Pods-PopupDialog_Example-dummy.m */; };
- 97B866E860E4C9433C4C10DD590D2D1D /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = C20DF3B736A984A8A901C82F7DB537A3 /* HaveCount.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- 9B45F788C4CE05D2DC0686432FB0EE22 /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 071F19C535629E91C695B7E7DBDC4FFA /* Accelerate.framework */; };
- 9D65089019D558E5A9661F2DCAD20313 /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FA35888E8C899C40C4F27F0AB8973B7 /* SwiftSupport.swift */; };
- A254857FE369E684CBE3B4F6F292239D /* PopupDialogDefaultButtons.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B1387C6FD1B684C3898213BA1A2A2B0 /* PopupDialogDefaultButtons.swift */; };
- A28905FACC5D77141D82FD07822E1266 /* mach_excServer.c in Sources */ = {isa = PBXBuildFile; fileRef = E2335CA5AAD016B1DAFC50520DC12151 /* mach_excServer.c */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- A2DB6695330623A662CEDEA0EC8598C4 /* CwlCatchException.m in Sources */ = {isa = PBXBuildFile; fileRef = A76484091D5ABDF3F244B9EA6428C1E7 /* CwlCatchException.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- A3A25739D8FCB7A4FE17C8C5A6C7BE72 /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 83E8F78BE4BCA36125359604509DBBAD /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };
- A525E29E0A8079B35B793D8A2B5FBDF2 /* UIImage+Snapshot.m in Sources */ = {isa = PBXBuildFile; fileRef = 14EC84B096B791D9DB25888C67DC1920 /* UIImage+Snapshot.m */; };
- A82232B7EA64317A4F0A1F5FC2C9F5D6 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18416CB52911A067126057FA2295B58A /* BeLessThanOrEqual.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- A94100505467526DB734FAB115BF715C /* PopupDialogOverlayView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B85748517E837D6DA8255F8EFF23D92B /* PopupDialogOverlayView.swift */; };
- AB7A087F4F097DF5439A4503B2221E8C /* SatisfyAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC627C463113F5A776F9FB272C8F4254 /* SatisfyAllOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- AC07189DEA030365C05F5501A8F0498E /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B555B3BED0DBFF109DF78916794FB52 /* Functional.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- B18FE5EE478D75593AE4D0C6B1E6506F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0396503F8DBB4F70B59E78A9F62695F3 /* Foundation.framework */; };
- B25D795BDC4F426BC01EFC911F368B81 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0396503F8DBB4F70B59E78A9F62695F3 /* Foundation.framework */; };
- B2F489FB022F836FB35B3FEABF68903C /* PopupDialog+Keyboard.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0DB37505438AC54227D55B8BD8BEF31E /* PopupDialog+Keyboard.swift */; };
- B4374EE986ACDA18DE16359C36F43971 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3BCCEAA100D80B4239CDB98443C2FB6D /* BeIdenticalTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- B52BCD660C0CA96651CA9AEAB5672D7B /* CaptureQuality.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C6F790D39FBBF31DF5E9DECE17E6F27 /* CaptureQuality.swift */; };
- B74CD6E6EBEA0B642776BCB37850415D /* UIImage+Snapshot.h in Headers */ = {isa = PBXBuildFile; fileRef = 297AB8230193A0DAA3A1408EF6C34587 /* UIImage+Snapshot.h */; settings = {ATTRIBUTES = (Private, ); }; };
- B7765DD0B31748724E386AA238799A93 /* CwlCatchException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 321CDBDFEA4951B44E94B9B5BCBB4996 /* CwlCatchException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- BDB3FCECD68FF28D4F74698F452063FD /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F1124B9692D608EC99400E0A4F535E3 /* BeEmpty.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- BE8B6D8BA702869EC5CFFA2B59CDCB6E /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F51CBF47E005823E6A0F6F3CD578FCD /* Stringers.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- C08A03032406A24E285B680ACE7A9E73 /* TrackingMode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F1D28079A6D6E70E58C38E61F042B2A /* TrackingMode.swift */; };
- C0F8730BE864945038D14BF58B97CA94 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = D58BF5FDACF5AE184110FFF767894AC7 /* MatcherProtocols.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- C3C0DE91C1EDADBF90CA908CB7677FF7 /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8F2F188AF2F2B95A6F84A372020D097 /* BeAKindOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- C42E25AEAE4758760D9239D25E88FEAF /* CwlCatchException.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A4EF4BA115F9553E82AFB2B0E453027 /* CwlCatchException.h */; settings = {ATTRIBUTES = (Public, ); }; };
- C49D52712466511E332C952834C81FE1 /* FBSnapshotTestCasePlatform.h in Headers */ = {isa = PBXBuildFile; fileRef = 00FC46044508113A009D88D540F1E018 /* FBSnapshotTestCasePlatform.h */; settings = {ATTRIBUTES = (Public, ); }; };
- C6C51E1FBF972B7360BF01D94EAF3864 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0396503F8DBB4F70B59E78A9F62695F3 /* Foundation.framework */; };
- C9088581BC43832D6AF65207A507F6E9 /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 360DA97C674B5F1BBEA334DD9E1B5CD9 /* BeCloseTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- C923C7A7E74F165D32CAB0DDAB8C5504 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB09175E2560EFA89DB107739B0003C2 /* Expression.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- C971A8D42C7C043DC4970A69B81546A7 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = 5169668F2FE6098ACCEC6796DD3133B7 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };
- C9D87D93855954B4B23CDB647DEB7D0E /* PopupDialogDefaultView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDBBE62BEA77FFACECF54D2753EEC2EE /* PopupDialogDefaultView.swift */; };
- CA9A2D74A41B640925B521CEC8BBEACE /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0396503F8DBB4F70B59E78A9F62695F3 /* Foundation.framework */; };
- CF0DBC57CC4BAF16B8A5EE9B15A27A72 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 964C2F88B48470725E71A6369F2A1AAD /* RaisesException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- D04AAC8B22E4A4DC4F39891C4E52F251 /* UIImage+Diff.h in Headers */ = {isa = PBXBuildFile; fileRef = 6AC85212FDC881E6737CAADD8687DFF9 /* UIImage+Diff.h */; settings = {ATTRIBUTES = (Private, ); }; };
- D355A1A86FF97A4444383C7035DA1E1F /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC0E5B75A3AA5B8064B338E9539CF544 /* AdapterProtocols.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- D3AF7291BC7915600BAADBDB73C069DE /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FA546E16F2C7E96360FD891F38C47A8 /* Expectation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- D56F0DEA256B9DF53EEA2F8BA8ABCA70 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FBDBF40BDAA750070F2523840D60A2C /* NMBExceptionCapture.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- D82DC5AAA5AA0E1A33EFE457C493D755 /* UIViewController+Visibility.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3948FE866CE6990380A865041CBDFA6 /* UIViewController+Visibility.swift */; };
- D8D8636AA4F6781D2A809B0984B434B0 /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = B28AB78092EF356027D367919A6FB05A /* BeVoid.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- D9F9E9336475EE7188F8F29DDE0A2EB1 /* PresentationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F930241415802EAEF56950FC4CB922F9 /* PresentationController.swift */; };
- DCEE2E72739ADFB7890C33BC35099C01 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0396503F8DBB4F70B59E78A9F62695F3 /* Foundation.framework */; };
- DD2F32642C7F57A4EE71C41F183FEAC8 /* BlurLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39C2084D891ED45BDC883367945AACF2 /* BlurLayer.swift */; };
- E0B8D095C732352C854D365B9E5B993D /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 11DB7CB31983107A7414F650F4E837A4 /* UIKit.framework */; };
- E22D9E4B94A4FF6E415308E9D9B6D233 /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1AD45422C210959AAA7DD91AF86BE28 /* EndWith.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- E425105EF5426714A00D9A9B6222123A /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00548BAEAB47DC6ED10CAA8C0C0A2E95 /* DSL+Wait.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- E594306BF52C899BCE23A4BA56CD0DD0 /* CwlPreconditionTesting.h in Headers */ = {isa = PBXBuildFile; fileRef = 72A8C0F537441C4F97601D09EC192155 /* CwlPreconditionTesting.h */; settings = {ATTRIBUTES = (Public, ); }; };
- E6300A4FD79A77E07899341BD8FBB463 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBC8ECAEA0B2A38F880089A0C0A4FE13 /* NMBObjCMatcher.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- E885D65DB6E4A4C6C0B85B8F97DF677A /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 811052CEE5B0982AA7CE3AE4FD986A4C /* ThrowError.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- E8AC509D18EBF21B1FEA909652A01108 /* FBSnapshotTestCasePlatform.m in Sources */ = {isa = PBXBuildFile; fileRef = 63E121F8691A77E25F34A346AEF6F8B7 /* FBSnapshotTestCasePlatform.m */; };
- E9157FAB5F209124A32CE9C3BB6B6027 /* UIImage+Blur.swift in Sources */ = {isa = PBXBuildFile; fileRef = F31B1C4454B1440714A9DB8F2A26C34A /* UIImage+Blur.swift */; };
- EB83843AA40E9A388ACBDD0BE1DD4065 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71B93D69977525B74E43FE1B09CE2860 /* DSL.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- EC78D8A8141D8268D6382866CDF8F16A /* InteractiveTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6ADE5CBAD09E36BB7B465F20267126B /* InteractiveTransition.swift */; };
- ED6FC5CEB11E74E7698F09F380683CFC /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59169802A6943F3CF3E6863F541A89BE /* BeGreaterThanOrEqualTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- EF939F4625A0E03E9DEC69923879FAAD /* Nimble-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6CDBDFA6ADBDBDB485FB855B4F5DE52D /* Nimble-dummy.m */; };
- EFC67FB506472146894C81BD6A680894 /* Await.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32CE95AA00F4BDC440FB69A80F975275 /* Await.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- F1AAAE00BB32B733B238E2B4E8424506 /* UIImage+Compare.h in Headers */ = {isa = PBXBuildFile; fileRef = 642EC164F785288462C5450A382E2B3C /* UIImage+Compare.h */; settings = {ATTRIBUTES = (Private, ); }; };
- F5F579CACAC5D039AEA52CFD85BAA1DC /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = E1F08767ED830C0A4ADBB9AEABBD6298 /* DSL.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
- F720FAF13A108CE6901E0A8B0580E1E8 /* FBSnapshotTestCase-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 23527CD8F043D308D25644A0DCE44123 /* FBSnapshotTestCase-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
- F82E29CC1BF7165FF77D9C4A387357A7 /* PopupDialogButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = BEB17063EC5F1BD2547DA25EDAD1243E /* PopupDialogButton.swift */; };
- FAF7FF5CC98733942F81EACBDFA6083F /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 0EAD86BEBD8AD8016C0367602A7A4846 /* NMBStringify.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 028DF0FD8A2D44D80EB0313263408364 /* CwlCatchException.h in Headers */ = {isa = PBXBuildFile; fileRef = 74823AAD4B57CA924A7ADCE10A08B72C /* CwlCatchException.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 05B0FB93D36C759F7614D065FBC0B164 /* FBSnapshotTestController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8585C63BBC446F4E8A88731650241983 /* FBSnapshotTestController.m */; };
+ 091E200786E28C6766A07D636E0B33AB /* FBSnapshotTestCase.h in Headers */ = {isa = PBXBuildFile; fileRef = BE9753BAD372FFB193C0F38512BDB87E /* FBSnapshotTestCase.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 0B4955FACB8418E80447FBB5B99CD5C1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA075E3BCAFC670A0D5A3C1796CE7327 /* Foundation.framework */; };
+ 144BDE93E26654901B4FB21484EC77BB /* Pods-PopupDialog_Example-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 29744CD016B1185AC562D0482E20989D /* Pods-PopupDialog_Example-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 148034F66372FB0115EB12D52EA2545A /* MatcherFunc.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0AABD3AA8D14DF1487084914771264AE /* MatcherFunc.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 15A3B154223AF927E93AC5C83732F8C1 /* UIImage+Diff.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D41491FB9AB86E87AD99971C8A6B13F /* UIImage+Diff.m */; };
+ 1ABBEF76CF516143AC4C3CD3743BACB6 /* TransitionAnimations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 38D83146DF4CB712F570F9D8D91A29C5 /* TransitionAnimations.swift */; };
+ 1B57A0387C2CBCCF616043C57BB60215 /* XCTestObservationCenter+Register.m in Sources */ = {isa = PBXBuildFile; fileRef = 0C10507EBB8AA3756829FDC5FAC25C81 /* XCTestObservationCenter+Register.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 1E60789D3801FE2CCFCDFE262CDB2C39 /* DynamicBlurView.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADDE6276688C7E8C98EFB817A5289DBB /* DynamicBlurView.swift */; };
+ 1F6FBBBBE38178FA36B2CB60271A0D1E /* DynamicBlurView.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 38328F060AF39895E284A3811EC4A9BD /* DynamicBlurView.framework */; };
+ 25061DCFE254B9A51567D57282FD09B6 /* BeLogical.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80EE28C5B16EAD867F263D863CA8FC4E /* BeLogical.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 258AD4ECFBD18E67F0B18FE3CF9B1AA7 /* UIImage+Compare.m in Sources */ = {isa = PBXBuildFile; fileRef = 87F785A29003BAC86FB78E9905A624B6 /* UIImage+Compare.m */; };
+ 28AFE7BE0D55B9EB0436F652CDC0BF0A /* PresentationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B91546848953EFE3B8A19F21DA855A0 /* PresentationManager.swift */; };
+ 2A244420894E5360D3E2E7FEC79AF783 /* NMBStringify.m in Sources */ = {isa = PBXBuildFile; fileRef = 0D76BEEE5B32330195FB03044C3E4F44 /* NMBStringify.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 2AF068B3ADCE1AB7D890EC0684C83B63 /* Await.swift in Sources */ = {isa = PBXBuildFile; fileRef = B566E4F7B3B6C3FBFC3D25B4DC4F4CA1 /* Await.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 2B29853C2CD8A22239F8BA8AEAD7D870 /* UIImage+Blur.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC12B991F5D923B49A7E6F2B282A2058 /* UIImage+Blur.swift */; };
+ 2B53456A071A2F00B3D1DF5F58E248E4 /* NMBExceptionCapture.h in Headers */ = {isa = PBXBuildFile; fileRef = 4CFD05A4ADF118B4F237803DA904434C /* NMBExceptionCapture.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 2B79FFCE612175372C451F1653D32D84 /* iOSSnapshotTestCase-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1243339E448CD16D18717B50F920BB09 /* iOSSnapshotTestCase-dummy.m */; };
+ 2C1BD5BAE866697E817108A191FB28B6 /* FailureMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4677A1DC722B43705A27698CD6BFED09 /* FailureMessage.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 2CCCE84C7A1952595015411C9A436D3F /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C5299414864EBA7403DB7EB7300E148 /* SwiftSupport.swift */; };
+ 2F1DFFA18F8227FF0B226B3E0971AD20 /* BeIdenticalTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D3E08FF2BC522160B297D24F3DA657D /* BeIdenticalTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 30FD6CA8052FBCAD2D41DF768AEF5D49 /* CaptureQuality.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64091636CB0FA64C3BDF5E1799181546 /* CaptureQuality.swift */; };
+ 325558B7841069C5A237F82E8C6C473D /* DSL+Wait.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35165D0C2642FE0116B49AA4F537ACB8 /* DSL+Wait.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 37C28AD0CD393A0063A6E3B3400643EC /* AdapterProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5D0DC3E3B34D8BC8DEB09101BF7DC18 /* AdapterProtocols.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 37EC39C7D93118336AF1E98E9C7BAAA2 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA075E3BCAFC670A0D5A3C1796CE7327 /* Foundation.framework */; };
+ 38E861DE6E72CED4680AE094D99B77C2 /* ExpectationMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C577112BA5BA61FA2DA28270C5DC2ED /* ExpectationMessage.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 3E0EC3B170A3018A620D85099A090B49 /* DSL.m in Sources */ = {isa = PBXBuildFile; fileRef = 3242E237431529C3360DC01E63A37357 /* DSL.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 41C177B80002765D079AC76D27E681FF /* TransitionAnimator.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFD5FE2A53D91BCAB12D921FBF4CD0D0 /* TransitionAnimator.swift */; };
+ 4301C742FE4B509A8DC1504F367EEB99 /* Nimble-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 3EDE5D2AFC33018AA44EDF7079E6C8EF /* Nimble-dummy.m */; };
+ 43F296FD5616B0ED2AFB31D98B37B1EE /* FBSnapshotTestCasePlatform.m in Sources */ = {isa = PBXBuildFile; fileRef = CF7931B37ABE8616C2C5EE19B47E0DDC /* FBSnapshotTestCasePlatform.m */; };
+ 45B25D082BF52A41858126CE82885AD3 /* DSL.h in Headers */ = {isa = PBXBuildFile; fileRef = E048057C6B26BCEED88BCC32460490C6 /* DSL.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 4808EAAB76DB5DA6290FF72A19AD872E /* PopupDialogOverlayView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0421D68D0732E11A840C60681F90E79 /* PopupDialogOverlayView.swift */; };
+ 4A0338D4EF95D82B125C304D02D5DA2F /* NMBExpectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6ED3B51EEE439AD9A185845300BF06AD /* NMBExpectation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 4AEAB6E35C5D3C704C9A55CFC315C982 /* Match.swift in Sources */ = {isa = PBXBuildFile; fileRef = F955CA621E1387D18B6737FF34FECD4B /* Match.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 4DE6EADE9A71BF90004C24201D5B8E0D /* UIImage+Snapshot.h in Headers */ = {isa = PBXBuildFile; fileRef = 30B622D6D13E7E41B1E38658218CBA00 /* UIImage+Snapshot.h */; settings = {ATTRIBUTES = (Private, ); }; };
+ 51D822E3615B158048411AD97501AEB4 /* AllPass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 200A77E157E470437D3C032888ABC3C4 /* AllPass.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 542DF141858D476C903B497D200C9E2F /* PopupDialogContainerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B7F3B2BBF0FD8172393A0D3C72D33A9 /* PopupDialogContainerView.swift */; };
+ 54B34FD4ABB0FE120E25F5189DA213F1 /* PopupDialog-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C02E3E9B4CD484F229C00E686266FB17 /* PopupDialog-dummy.m */; };
+ 554593DE4755E5BF39C765037C0111FE /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7F2D87DA8397960596B1F5731D378B50 /* UIKit.framework */; };
+ 55F0D512EE0320AB90253B2A0F149614 /* BeGreaterThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0648E1602C901BD99D761CFE85054D0D /* BeGreaterThan.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 56775B822D73E8E27D53C4A8F93593AB /* BeAKindOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52A81F33A5D84847EB12A37057C44A7B /* BeAKindOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 5C41F0CE907C842E5D662C74836EFBDC /* PostNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE582858E444F78FF47160866AA54BC7 /* PostNotification.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 608181B47864A58E1C3B7B0AD0FE1FD1 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = B87A13D66557F8250802FF7BC30E391C /* Errors.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 6193AAE31B8DDFE2B4FD667055CAE810 /* mach_excServer.h in Headers */ = {isa = PBXBuildFile; fileRef = 0BD82EB3728DE03DCC8F5AD53A6C1753 /* mach_excServer.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 66BF5BCB2E0E11257E427A19F0CA69BB /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA075E3BCAFC670A0D5A3C1796CE7327 /* Foundation.framework */; };
+ 6892F564CC7FFE1680FDC431F5E66416 /* ToSucceed.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F48B91B4064EA92FA60D4455FBF0257 /* ToSucceed.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 699AA6D35A7C549B72DF9DF2DA356283 /* BlurLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 817F8878287639D4DD0224A69EA75047 /* BlurLayer.swift */; };
+ 6AF32EB2E58E09B85C53A735BC162BC2 /* NimbleEnvironment.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F05F0FE2AD0D7B08BB3F5A14E13573C /* NimbleEnvironment.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 6B4180B400F5F4BC3E85D36C3F9F5821 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1C7B47AEA8507F032FA94B515EA3FAE9 /* QuartzCore.framework */; };
+ 6BE8158D44809BA48B8B85EB4F92A45B /* EndWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36DDC1C4D729976F1145A8935F22BCDD /* EndWith.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 6D43C958217DDF52EA577425F130C245 /* FBSnapshotTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 27BA8A345B5729D15B3AACDDC93424DF /* FBSnapshotTestCase.m */; };
+ 764666F465F544BCE897E3BF4BAFD38F /* CwlCatchBadInstruction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C61567B81BB2E922D32901B1A352946 /* CwlCatchBadInstruction.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 76F766F6D0B6D09D5158F42A55AD0F29 /* BeEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 049FF961807D2CCFB4BFB006B3F6903A /* BeEmpty.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 7714F044B1FCABBB1C097A62A2A36760 /* Predicate.swift in Sources */ = {isa = PBXBuildFile; fileRef = E99CE5007733C4DAEA48881B1B8ADE74 /* Predicate.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 77A0C071248147C59F2AD9EDE5D9025E /* NMBStringify.h in Headers */ = {isa = PBXBuildFile; fileRef = 8D07B970FABF9B765FD43E03FBDD544D /* NMBStringify.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 785338FE484ABFB22EED6B979AC47AC4 /* NMBObjCMatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17658872231DBE64CAE55AA7B703F18A /* NMBObjCMatcher.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 7BB6491AF900FAC4353B3DB6649DC259 /* SatisfyAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = D287538FE9D0F5D3103907FBA0F711F1 /* SatisfyAllOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 7C7A79A8BEE1BEDB839CFA6F74E99C7E /* BeNil.swift in Sources */ = {isa = PBXBuildFile; fileRef = A67141F192016214363002CD81041EB2 /* BeNil.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 8189AB429E5264D1443941BFCEF26AFB /* PopupDialog.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95BA7DF0C033737DEE656977B7246131 /* PopupDialog.swift */; };
+ 82DE69D2E7FDCA857DA010C5440D9222 /* BeginWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9229EA4AF176F697394404461DF72DBA /* BeginWith.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 83604F2F98561C2DE46A70CF3AE03D56 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E200B17B93288E7C000F89157FC6CE9 /* XCTest.framework */; };
+ 839A40B87D37A40C7AA29B800E333724 /* DynamicBlurView-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 19BE1001CECE5FDB557512C1C892E151 /* DynamicBlurView-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 85A4019248D92500E641D01E1AD85724 /* CwlMachBadInstructionHandler.h in Headers */ = {isa = PBXBuildFile; fileRef = D82BCFDBBAE6BD68E1CB4043767DD315 /* CwlMachBadInstructionHandler.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 90D48E81FAE63982EAA8DE7E68010353 /* CwlMachBadInstructionHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 64860498EAA97994F29592BDBD85AB38 /* CwlMachBadInstructionHandler.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 91D72D53DEE7E861FC51B58432A07C24 /* Contain.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF8B64BA61B3141DD5976B92851DBC25 /* Contain.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 931F6BA94CDA2C88C3E446AB7359437B /* CGContext+CGImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE1358942C6DCF9745029C7914D4F182 /* CGContext+CGImage.swift */; };
+ 937D90C2670CFFB0A35B291A75F9009C /* CwlDarwinDefinitions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 79BB1E107157AB7C46336D7728F4AC69 /* CwlDarwinDefinitions.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 94BCC7B3DF53D9802499B98ABDC3FB05 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7F2D87DA8397960596B1F5731D378B50 /* UIKit.framework */; };
+ 97BCA6C4414C737B5A3F616ECB87D63A /* PresentationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC7179BE06255B0BF3AA15CFD7235156 /* PresentationController.swift */; };
+ 97BFF30F9CB958E74517131650D5BC7C /* mach_excServer.c in Sources */ = {isa = PBXBuildFile; fileRef = A1279F9C7CB28560E947BAB8241A24F9 /* mach_excServer.c */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ 9A0EADA9585165E1063D26C596C546F2 /* DynamicBlurView-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C00E7D44ECF69FE5460B080571C2FB66 /* DynamicBlurView-dummy.m */; };
+ 9C25BC723ED8C3D2AD876B9CAC53B173 /* Nimble.h in Headers */ = {isa = PBXBuildFile; fileRef = B9BE98E4FDCC94E0DAA530D3355D3FC2 /* Nimble.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 9FA84BEFB9A6EBCD81771B3BACD1B6D7 /* BeLessThanOrEqual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CD84BE03AE82DE3BA117239FC964D53 /* BeLessThanOrEqual.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ A5174F63D2FE4B0D01BBE018F09BC2A1 /* RaisesException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AEBB59DAF48A0CEFB4F5297AEB3779D /* RaisesException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ A7B7DDC792B0646E6BBC93DEBCBF1A86 /* CwlCatchException.m in Sources */ = {isa = PBXBuildFile; fileRef = 7186A4E63E259BF85CB22C8237BEEF4E /* CwlCatchException.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ A822E02EFA49284044CEDFED620F796E /* NimbleXCTestHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = F50BBB5271703EBEB2D8DC62A1B87F32 /* NimbleXCTestHandler.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ AA4E032922B89B6D052F14D0C0AB250B /* SourceLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 150E79AC1ECCCC04306BC175588D3351 /* SourceLocation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ AD4E0E8A55D8BEA2EBC4D011D0A7B212 /* BeGreaterThanOrEqualTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B9A767D2961EF0F8B7FD646793BEDF0 /* BeGreaterThanOrEqualTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ AFBF35BD00F64E9B7B23C718F1340666 /* PopupDialogDefaultButtons.swift in Sources */ = {isa = PBXBuildFile; fileRef = 667AE1285750252FDFEA407317858F9F /* PopupDialogDefaultButtons.swift */; };
+ AFF5E68DF0232B4E331A2A6D07A23EF6 /* TrackingMode.swift in Sources */ = {isa = PBXBuildFile; fileRef = E905F165F47AD6C59D19D988CCB1A1E1 /* TrackingMode.swift */; };
+ B01AA54C73F2D6B3C7240E81AE5B7EE5 /* BeAnInstanceOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87838F7843F344E484A1E26218D90F8B /* BeAnInstanceOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ B0EBBC56A849150DCF4CACB5DA6AC44A /* CGImage+Accelerate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 455DC35380748FE9C8AC10A6791D8553 /* CGImage+Accelerate.swift */; };
+ B10D7CDB5826C2AFD79C2E255BCD5F05 /* UIViewController+Visibility.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B7C91CE0BEF5AD7EBE599E18BA6F6A8 /* UIViewController+Visibility.swift */; };
+ B19CC4DDE469AA715425DF205252DF09 /* BeLessThan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 104768EF226E926A18F524E8C79C0CE7 /* BeLessThan.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ B23CF8A9066EF6B3739E7E8868A2D6C7 /* PopupDialogDefaultViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74D9842BCB672CACFC947E250922F87E /* PopupDialogDefaultViewController.swift */; };
+ B5DCD95D29D1251E9F7007D0D752BF3D /* UIView+Animations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D832BDD2D3D8BC23F7550A2680D3AD1 /* UIView+Animations.swift */; };
+ B7E2AB7A6C70C55094F252AFA84AD9C3 /* Expression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E941EF8F373F12B868892D01A1BA655 /* Expression.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ B8FB2D067E0C5605457C188F19392785 /* PopupDialog+Keyboard.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C8894F8D3D2B3BA57C2A7BC7D100798 /* PopupDialog+Keyboard.swift */; };
+ BB37A7C8F86DF110FBE474CCE487F88B /* PopupDialogDefaultView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AA35D35E0EC672D7AC55914FA29B4EB /* PopupDialogDefaultView.swift */; };
+ BB4EF29493E23FCD573A571EA2FC2691 /* BeVoid.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5CAF1B1DD973C6246CC3DB8C8E3DEDB /* BeVoid.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ BC87DC0E426ED91DB6BDBF2DF5BF2E3C /* Equal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83DAF84EA18303E3BB7DE997060F15DD /* Equal.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ BE9631B3CFF5881B6C29BBA43FD8B81E /* Nimble-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FA2D4A0B3E941EAC2405224507125B9 /* Nimble-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ BF886FB46C3CDABBD1583AF65B051021 /* AssertionRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD102EC8424E9B47199994939DEEFCB6 /* AssertionRecorder.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ C21C81182C2082520FFF8A70B6C01A7B /* Pods-PopupDialog_Example-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 3F8CFEBEEF998FFE137C33CFF02EF8D6 /* Pods-PopupDialog_Example-dummy.m */; };
+ C2D51D0E38F630A8A468843702A90348 /* FBSnapshotTestController.h in Headers */ = {isa = PBXBuildFile; fileRef = F22CD88D4A163E52EFC06779F30AAF0D /* FBSnapshotTestController.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ C3E37DE60D2E23308D089991D99BB571 /* NMBExceptionCapture.m in Sources */ = {isa = PBXBuildFile; fileRef = 9FA77AA498A074ACC80A4D92592F369C /* NMBExceptionCapture.m */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ C4F69BE250F3575D749A5E10CB782F9A /* CwlCatchException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 310A46556D07A0296C66D5864B4B1822 /* CwlCatchException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ C608CD5014667D549210559A33CA1892 /* DynamicBlurView.h in Headers */ = {isa = PBXBuildFile; fileRef = 16F11C32475366566F3A1AE69D966D67 /* DynamicBlurView.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ CF780D83CD27F18935122124907C4848 /* InteractiveTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 325E316C92DF01A9D94DF6430091DC23 /* InteractiveTransition.swift */; };
+ D0664493DF417CB8D86DFAE07F9671E4 /* ThrowAssertion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3103870D569FB5F369820BD98DC247AF /* ThrowAssertion.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ D0DE9DDC173315C08C72D6DE1B3C859E /* UIImage+Compare.h in Headers */ = {isa = PBXBuildFile; fileRef = 4823F2C2EEADA5B354927EB340E3E020 /* UIImage+Compare.h */; settings = {ATTRIBUTES = (Private, ); }; };
+ D1108B0B95C44070293DEC99A96E8B9E /* BeCloseTo.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE88B1AA041F9C52FFFF5D1B373D17CD /* BeCloseTo.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ D119ECF5F4F2CB90DFBA17153A844161 /* PopupDialog-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 6AC75CF853BC4363E81362410CBB15C0 /* PopupDialog-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ D67390654B973701CF79FBEBBA6A6DA1 /* UIImageView+Calculations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DE10CE7D7C57069894709C6EBE62D5C /* UIImageView+Calculations.swift */; };
+ D7CCF84F0F0D1FC2D050CA0F3EAD4E32 /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5C335FD9E99D06E1D6FF9521C5F9FEB2 /* Accelerate.framework */; };
+ D91179CD68BA1F5A48C16A42B6D14608 /* FBSnapshotTestCasePlatform.h in Headers */ = {isa = PBXBuildFile; fileRef = 59632C31CC7E9B0E97E82219B426C6BA /* FBSnapshotTestCasePlatform.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ DE170038470E8DDDBC393195336A19B8 /* CwlPreconditionTesting.h in Headers */ = {isa = PBXBuildFile; fileRef = 249EC0574A7A3B3075817EC5A0CD4C74 /* CwlPreconditionTesting.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ DE8627DC4C00D882077FC1D3E87BBEE5 /* HaveCount.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2BACD44F94D3A1EBD2170A673CE67AD /* HaveCount.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ DED2339032E336A6C72A1812E3300AF7 /* CwlBadInstructionException.swift in Sources */ = {isa = PBXBuildFile; fileRef = 607AF5DC12915B330572F1FD9A6253C0 /* CwlBadInstructionException.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ DF8E6E6872AF7D65EB8BC55923DB0B2E /* ContainElementSatisfying.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5537BA52CB0430AAD64E042140B410DF /* ContainElementSatisfying.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ E02F32E3075511E2B030DA022EB14D2E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA075E3BCAFC670A0D5A3C1796CE7327 /* Foundation.framework */; };
+ E078C238870C170DD524C8149975B22E /* iOSSnapshotTestCase-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 02293FB2EA49ECAC14876A877C5665B9 /* iOSSnapshotTestCase-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ E2E9404DF91A582434E341BAA79EFA9F /* Expectation.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3EFD0811319BB07458B57D9711B0061 /* Expectation.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ E34B752A6940722D74EF7323F9CF96AB /* ThrowError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 511D5F3EF0C438FA53E15FAC3DB97D37 /* ThrowError.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ E36AB6320950BF25D873CEA9F9094A48 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA075E3BCAFC670A0D5A3C1796CE7327 /* Foundation.framework */; };
+ E4B82392168C3D0D09AEF735DFAE18A1 /* SatisfyAnyOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE64350AE3AF7C9DE3DA3737E70644C5 /* SatisfyAnyOf.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ E523A7C9BB3E1DD9565AD0062BA13177 /* MatcherProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDD154686103441586C20809DF72C72A /* MatcherProtocols.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ E6B9EDF7E7EC48A6731FB949F2D97CA3 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA075E3BCAFC670A0D5A3C1796CE7327 /* Foundation.framework */; };
+ E7B32ED09537D571B1A28C42CE9E7DC9 /* UIImage+Snapshot.m in Sources */ = {isa = PBXBuildFile; fileRef = 287C70787CC4C2F3ABA8597DC104A392 /* UIImage+Snapshot.m */; };
+ E978590228F0A06065B7EAD5DBF21CB1 /* Stringers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CF89A6943F689434ED9CB6279165EDC /* Stringers.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ E9894788BB6C368CE76AD7754F8558D3 /* MatchError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3ECE482291E4AB1C3CA3877C9D4FBBD1 /* MatchError.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ EF23FBAFDF08894B5DED08BF52377DDE /* PopupDialogButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7952F701BC2C67E165903F32888AC3CF /* PopupDialogButton.swift */; };
+ F1926E4E362CBAED87FE5D17E219913A /* Functional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87B092C30EDF9B1934FDCE9AFF42924F /* Functional.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ F35CD6B3F10783E58481D6E00ACF3A39 /* DSL.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9B297BF2DF246257A265F8F19AF1478 /* DSL.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ F4FC149115FDBD8243CA10FA4552B4C8 /* Pods-PopupDialog_Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 69B71AD153BEE005185EDF50D848A1BC /* Pods-PopupDialog_Tests-dummy.m */; };
+ F7CCFB351CD1D60A555D1F5037EEC775 /* Async.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FCD81F4FCC8CBBB090E891E96AB22B2 /* Async.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ FA71E485EBC200D061E8C861607C02D9 /* Pods-PopupDialog_Tests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 46863F33A0753DFBCB245F19F5E87E46 /* Pods-PopupDialog_Tests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ FDBD0FFF2F3875EA683279E7A02310E2 /* AssertionDispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 431C0DCBF7EA442CC2886C333A20C0DF /* AssertionDispatcher.swift */; settings = {COMPILER_FLAGS = "-DPRODUCT_NAME=Nimble/Nimble"; }; };
+ FF107C8DAD13A21F44CE5072AAC76B51 /* UIImage+Diff.h in Headers */ = {isa = PBXBuildFile; fileRef = 6A4FD942AB99D4D6B1BAF5F19A80C325 /* UIImage+Diff.h */; settings = {ATTRIBUTES = (Private, ); }; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
- 2763FCA98104FEE93EB4E54D32DDF454 /* PBXContainerItemProxy */ = {
+ 0BB024B8D969D444E23F642A0CC53711 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
proxyType = 1;
- remoteGlobalIDString = 7D914FA2F03C860D5133BA2DB87C594A;
- remoteInfo = DynamicBlurView;
+ remoteGlobalIDString = CA74CEED40A402865660392784D34978;
+ remoteInfo = "Pods-PopupDialog_Example";
};
- 5DE6A812F01602ABD737FAE5CFFDCA8E /* PBXContainerItemProxy */ = {
+ 416CAAA122ADB75F6B80477E6535EA1C /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
proxyType = 1;
- remoteGlobalIDString = 64EF52228FAC44ED257BDDD2291AE3A3;
- remoteInfo = "Pods-PopupDialog_Example";
+ remoteGlobalIDString = 259FA497B621B18FB2921DA18AA46AC2;
+ remoteInfo = DynamicBlurView;
};
- 605A0384FCE86EF59C690F4BD7079E93 /* PBXContainerItemProxy */ = {
+ 671940896928CBAE7AD220920ED0ED03 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
proxyType = 1;
- remoteGlobalIDString = 98A98149697C80CEF8D5772791E92E66;
- remoteInfo = FBSnapshotTestCase;
+ remoteGlobalIDString = 259FA497B621B18FB2921DA18AA46AC2;
+ remoteInfo = DynamicBlurView;
};
- 69ED31331A85AC2F2E811E876B7BA820 /* PBXContainerItemProxy */ = {
+ A256C510D822779A85DA6B51AA741CEF /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
proxyType = 1;
- remoteGlobalIDString = 7D914FA2F03C860D5133BA2DB87C594A;
- remoteInfo = DynamicBlurView;
+ remoteGlobalIDString = 462030076D657DEC3A2BAA37E0C875A2;
+ remoteInfo = SwiftLint;
};
- D156589BEF28B1B971FF543898B5C8AB /* PBXContainerItemProxy */ = {
+ B649A5E3282D45F422BAD75E2AACA8AB /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
proxyType = 1;
- remoteGlobalIDString = 52B60EC2A583F24ACBB69C113F5488B9;
- remoteInfo = SwiftLint;
+ remoteGlobalIDString = FFBD6E8AFCC899B135424D8D701837CE;
+ remoteInfo = PopupDialog;
};
- DAF2265381CBAB2F1C3DDB7475CBDD74 /* PBXContainerItemProxy */ = {
+ C594029C1966F916E3FE5115D038CA68 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
proxyType = 1;
- remoteGlobalIDString = 6F13695E06195A78EA8A95F8C7ED0D2F;
+ remoteGlobalIDString = D4352C8CA6EDC802E8D85D2E61BC6173;
remoteInfo = Nimble;
};
- EC80586574AE02330BF77B2C0310E667 /* PBXContainerItemProxy */ = {
+ DDDB10C5FD26BB4F367DEBD30E06630C /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */;
proxyType = 1;
- remoteGlobalIDString = 6E71929B582F8CD57B3DC1FD6560F047;
- remoteInfo = PopupDialog;
+ remoteGlobalIDString = E0D5773C6DEB06357ABB396EF13BB2CD;
+ remoteInfo = iOSSnapshotTestCase;
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
- 00548BAEAB47DC6ED10CAA8C0C0A2E95 /* DSL+Wait.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DSL+Wait.swift"; path = "Sources/Nimble/DSL+Wait.swift"; sourceTree = ""; };
- 00FC46044508113A009D88D540F1E018 /* FBSnapshotTestCasePlatform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestCasePlatform.h; path = FBSnapshotTestCase/FBSnapshotTestCasePlatform.h; sourceTree = ""; };
- 0396503F8DBB4F70B59E78A9F62695F3 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
- 03D6C9895C238A039A720030480F2172 /* PopupDialogContainerView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PopupDialogContainerView.swift; path = PopupDialog/Classes/PopupDialogContainerView.swift; sourceTree = ""; };
- 057F58C7AE2DA604796B30040884DFBA /* SourceLocation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SourceLocation.swift; path = Sources/Nimble/Utils/SourceLocation.swift; sourceTree = ""; };
- 06E50A391A2FBD68EA8C9758D39355B3 /* CwlMachBadInstructionHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CwlMachBadInstructionHandler.m; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/CwlMachBadInstructionHandler.m; sourceTree = ""; };
- 071F19C535629E91C695B7E7DBDC4FFA /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/Accelerate.framework; sourceTree = DEVELOPER_DIR; };
- 0896F4869F45E8DA6473F1BFE63E57FE /* DynamicBlurView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DynamicBlurView.swift; path = DynamicBlurView/DynamicBlurView.swift; sourceTree = ""; };
- 0A08865764C1B76BA9B96BDB7A661620 /* PopupDialog-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PopupDialog-umbrella.h"; sourceTree = ""; };
- 0B80D23727C7BAECE77452D3786E9BE8 /* ThrowAssertion.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThrowAssertion.swift; path = Sources/Nimble/Matchers/ThrowAssertion.swift; sourceTree = ""; };
- 0C6F790D39FBBF31DF5E9DECE17E6F27 /* CaptureQuality.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CaptureQuality.swift; path = DynamicBlurView/CaptureQuality.swift; sourceTree = ""; };
- 0DB37505438AC54227D55B8BD8BEF31E /* PopupDialog+Keyboard.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PopupDialog+Keyboard.swift"; path = "PopupDialog/Classes/PopupDialog+Keyboard.swift"; sourceTree = ""; };
- 0DCFE8F07DDE9B0C2DFCEE86E9C7C967 /* PresentationManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PresentationManager.swift; path = PopupDialog/Classes/PresentationManager.swift; sourceTree = ""; };
- 0E8C0D570869EA4E252523F6ECB80B99 /* PopupDialog.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PopupDialog.modulemap; sourceTree = ""; };
- 0EAD86BEBD8AD8016C0367602A7A4846 /* NMBStringify.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = NMBStringify.m; path = Sources/NimbleObjectiveC/NMBStringify.m; sourceTree = ""; };
- 0F1D28079A6D6E70E58C38E61F042B2A /* TrackingMode.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrackingMode.swift; path = DynamicBlurView/TrackingMode.swift; sourceTree = ""; };
- 101D3770BE97321333AF4B130E226A96 /* DynamicBlurView-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "DynamicBlurView-dummy.m"; sourceTree = ""; };
- 112DB459CB78FF9B606088701CDE72FD /* MatcherFunc.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatcherFunc.swift; path = Sources/Nimble/Matchers/MatcherFunc.swift; sourceTree = ""; };
- 11DB7CB31983107A7414F650F4E837A4 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
- 1230E2988BCB2EEEF323AEA8ECBA0C2F /* mach_excServer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = mach_excServer.h; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/mach_excServer.h; sourceTree = ""; };
- 12DB852B7EACB37262D622FA6AD3237B /* SwiftLint.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SwiftLint.xcconfig; sourceTree = ""; };
- 14EC84B096B791D9DB25888C67DC1920 /* UIImage+Snapshot.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Snapshot.m"; path = "FBSnapshotTestCase/Categories/UIImage+Snapshot.m"; sourceTree = ""; };
- 18416CB52911A067126057FA2295B58A /* BeLessThanOrEqual.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLessThanOrEqual.swift; path = Sources/Nimble/Matchers/BeLessThanOrEqual.swift; sourceTree = ""; };
- 1B24E6E5F56D0BB20B8C0C00718A0D08 /* Nimble.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Nimble.modulemap; sourceTree = ""; };
- 1DA971E985C8B31B8F00808F5410A674 /* PopupDialog.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PopupDialog.swift; path = PopupDialog/Classes/PopupDialog.swift; sourceTree = ""; };
- 1FA35888E8C899C40C4F27F0AB8973B7 /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = FBSnapshotTestCase/SwiftSupport.swift; sourceTree = ""; };
- 23527CD8F043D308D25644A0DCE44123 /* FBSnapshotTestCase-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FBSnapshotTestCase-umbrella.h"; sourceTree = ""; };
- 257D5F8B0DCEC33CDA26D63499FB0495 /* FBSnapshotTestCase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestCase.h; path = FBSnapshotTestCase/FBSnapshotTestCase.h; sourceTree = ""; };
- 25CAF0CF8FA9D90CE9A964CC2EBC89BE /* Predicate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Predicate.swift; path = Sources/Nimble/Matchers/Predicate.swift; sourceTree = ""; };
- 2970A1076280C6E082DE6D039572CA26 /* Pods-PopupDialog_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-PopupDialog_Tests.release.xcconfig"; sourceTree = ""; };
- 297AB8230193A0DAA3A1408EF6C34587 /* UIImage+Snapshot.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Snapshot.h"; path = "FBSnapshotTestCase/Categories/UIImage+Snapshot.h"; sourceTree = ""; };
- 2A51B1E07AF713CC32319375437DD1AC /* CwlDarwinDefinitions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlDarwinDefinitions.swift; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlDarwinDefinitions.swift; sourceTree = ""; };
- 2B1387C6FD1B684C3898213BA1A2A2B0 /* PopupDialogDefaultButtons.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PopupDialogDefaultButtons.swift; path = PopupDialog/Classes/PopupDialogDefaultButtons.swift; sourceTree = ""; };
- 2B555B3BED0DBFF109DF78916794FB52 /* Functional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Functional.swift; path = Sources/Nimble/Utils/Functional.swift; sourceTree = ""; };
- 2BD220BDB7064BEFFC9E060BA9677245 /* Pods-PopupDialog_Tests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PopupDialog_Tests-Info.plist"; sourceTree = ""; };
- 2E14A056794F0B689BD9BC5BFC1E7359 /* Pods-PopupDialog_Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-PopupDialog_Tests-dummy.m"; sourceTree = ""; };
- 301A0279C95390C10CDA3DC8E2E1BAF2 /* Pods-PopupDialog_Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PopupDialog_Tests-acknowledgements.plist"; sourceTree = ""; };
- 321CDBDFEA4951B44E94B9B5BCBB4996 /* CwlCatchException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlCatchException.swift; path = Carthage/Checkouts/CwlCatchException/Sources/CwlCatchException/CwlCatchException.swift; sourceTree = ""; };
- 32CE95AA00F4BDC440FB69A80F975275 /* Await.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Await.swift; path = Sources/Nimble/Utils/Await.swift; sourceTree = ""; };
- 34FB964502259D0FF233CE71CFDD2A71 /* PopupDialog.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = PopupDialog.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- 3578BE46EA8B3A926D36CD6419758AA4 /* Contain.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Contain.swift; path = Sources/Nimble/Matchers/Contain.swift; sourceTree = ""; };
- 360DA97C674B5F1BBEA334DD9E1B5CD9 /* BeCloseTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeCloseTo.swift; path = Sources/Nimble/Matchers/BeCloseTo.swift; sourceTree = ""; };
- 38D6C61133B639A2B434904EDC0E25EC /* NMBExceptionCapture.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NMBExceptionCapture.h; path = Sources/NimbleObjectiveC/NMBExceptionCapture.h; sourceTree = ""; };
- 39C2084D891ED45BDC883367945AACF2 /* BlurLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BlurLayer.swift; path = DynamicBlurView/BlurLayer.swift; sourceTree = ""; };
- 3AE7F0062F408364EC0F24044FA83D49 /* Pods-PopupDialog_Example-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-PopupDialog_Example-frameworks.sh"; sourceTree = ""; };
- 3BCCEAA100D80B4239CDB98443C2FB6D /* BeIdenticalTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeIdenticalTo.swift; path = Sources/Nimble/Matchers/BeIdenticalTo.swift; sourceTree = ""; };
- 403A096447721C75BF14C7A3F6BCCDB2 /* FBSnapshotTestCase.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestCase.m; path = FBSnapshotTestCase/FBSnapshotTestCase.m; sourceTree = ""; };
- 4066371F801BE06ABA7B5378D1516984 /* UIApplication+StrictKeyWindow.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIApplication+StrictKeyWindow.m"; path = "FBSnapshotTestCase/Categories/UIApplication+StrictKeyWindow.m"; sourceTree = ""; };
- 493396BFE4F2972CC647D93F01EA4E3D /* BeLogical.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLogical.swift; path = Sources/Nimble/Matchers/BeLogical.swift; sourceTree = ""; };
- 4A0A1FC688B731C3AFCEDE79E21616EC /* PopupDialog-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PopupDialog-dummy.m"; sourceTree = ""; };
- 4B7B758730FD6CAAE90F7DB0B1DDFA39 /* FBSnapshotTestCase-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "FBSnapshotTestCase-Info.plist"; sourceTree = ""; };
- 4BAB293DC0DAC1537437AC4816A067CE /* Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Async.swift; path = Sources/Nimble/Matchers/Async.swift; sourceTree = ""; };
- 4C1286B7E412539B3FF9B70C238E83EB /* Nimble.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Nimble.xcconfig; sourceTree = ""; };
- 4CA3D96AE50B7C956B26E595B9D4F231 /* BeGreaterThan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThan.swift; path = Sources/Nimble/Matchers/BeGreaterThan.swift; sourceTree = ""; };
- 4EB568B257A9760AF7D1EB4AC7C16047 /* Equal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Equal.swift; path = Sources/Nimble/Matchers/Equal.swift; sourceTree = ""; };
- 4F26742D152937252FF450B2C14758C9 /* Pods_PopupDialog_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_PopupDialog_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- 515D96EB3DCC6FFD927E5316AECF8E3E /* NimbleEnvironment.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NimbleEnvironment.swift; path = Sources/Nimble/Adapters/NimbleEnvironment.swift; sourceTree = ""; };
- 5169668F2FE6098ACCEC6796DD3133B7 /* DSL.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = DSL.h; path = Sources/NimbleObjectiveC/DSL.h; sourceTree = ""; };
- 55EB2E713776DD76CEE5A8F765C27BEE /* PopupDialog.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PopupDialog.xcconfig; sourceTree = ""; };
- 57340A808DBA136ABD5E11C2ED9CE45F /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = LICENSE; sourceTree = ""; };
- 59169802A6943F3CF3E6863F541A89BE /* BeGreaterThanOrEqualTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThanOrEqualTo.swift; path = Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift; sourceTree = ""; };
- 5A537F208236FF12A11EF4ED807DD40A /* PopupDialog-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PopupDialog-prefix.pch"; sourceTree = ""; };
- 5B860197A4EB0939F19A944C8DE7B0BB /* MatchError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatchError.swift; path = Sources/Nimble/Matchers/MatchError.swift; sourceTree = ""; };
- 5C4F31330DFA99D699E4BDC8C3573D73 /* FBSnapshotTestCase.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = FBSnapshotTestCase.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- 5F51CBF47E005823E6A0F6F3CD578FCD /* Stringers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Stringers.swift; path = Sources/Nimble/Utils/Stringers.swift; sourceTree = ""; };
- 6123086D7F043014510D0169F0DEF417 /* Pods-PopupDialog_Tests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-PopupDialog_Tests-umbrella.h"; sourceTree = ""; };
- 6160A50827976F047D05E51443A69428 /* PopupDialog-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "PopupDialog-Info.plist"; sourceTree = ""; };
- 633AB6FEA3B38661462E0269BCFBD323 /* Pods-PopupDialog_Example-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PopupDialog_Example-acknowledgements.plist"; sourceTree = ""; };
- 63E121F8691A77E25F34A346AEF6F8B7 /* FBSnapshotTestCasePlatform.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestCasePlatform.m; path = FBSnapshotTestCase/FBSnapshotTestCasePlatform.m; sourceTree = ""; };
- 642EC164F785288462C5450A382E2B3C /* UIImage+Compare.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Compare.h"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.h"; sourceTree = ""; };
- 66F2E39DA85ACB237546341635BCF17C /* Pods-PopupDialog_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-PopupDialog_Tests.debug.xcconfig"; sourceTree = ""; };
- 688A762022DE1032000CB933 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; };
- 68BF571422DE1849006D64C0 /* .gitkeep */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = .gitkeep; sourceTree = ""; };
- 68FCF21795952014AA402E622F36E049 /* AllPass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AllPass.swift; path = Sources/Nimble/Matchers/AllPass.swift; sourceTree = ""; };
- 698D59A6E494E53C0F43A878354170EF /* ContainElementSatisfying.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContainElementSatisfying.swift; path = Sources/Nimble/Matchers/ContainElementSatisfying.swift; sourceTree = ""; };
- 6AC85212FDC881E6737CAADD8687DFF9 /* UIImage+Diff.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Diff.h"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.h"; sourceTree = ""; };
- 6CDBDFA6ADBDBDB485FB855B4F5DE52D /* Nimble-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Nimble-dummy.m"; sourceTree = ""; };
- 6D389C1F83BA03F065A60C7ED3604A36 /* Pods-PopupDialog_Tests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-PopupDialog_Tests.modulemap"; sourceTree = ""; };
- 6F632647C2DF9AA322A254983005F723 /* Nimble.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Nimble.h; path = Sources/Nimble/Nimble.h; sourceTree = ""; };
- 70A02165B63C411CB0CA1467595C40C9 /* ExpectationMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpectationMessage.swift; path = Sources/Nimble/ExpectationMessage.swift; sourceTree = ""; };
- 7155D2ED8BE5F64CC80C5520FC745A76 /* DynamicBlurView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = DynamicBlurView.h; path = DynamicBlurView/DynamicBlurView.h; sourceTree = ""; };
- 7199B1867D8AD2C4E059C8765E3F3F49 /* SatisfyAnyOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SatisfyAnyOf.swift; path = Sources/Nimble/Matchers/SatisfyAnyOf.swift; sourceTree = ""; };
- 71B93D69977525B74E43FE1B09CE2860 /* DSL.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DSL.swift; path = Sources/Nimble/DSL.swift; sourceTree = ""; };
- 72018E0EC559764CDE31152BC5BE89D1 /* DynamicBlurView-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "DynamicBlurView-prefix.pch"; sourceTree = ""; };
- 72A8C0F537441C4F97601D09EC192155 /* CwlPreconditionTesting.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CwlPreconditionTesting.h; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h; sourceTree = ""; };
- 7402B51D20F68E8EDF0BD5032DB9FF6B /* Nimble-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Nimble-prefix.pch"; sourceTree = ""; };
- 7465FC20B8D5A8395133678BB28FDA26 /* UIImage+Compare.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Compare.m"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.m"; sourceTree = ""; };
- 74D42C5E69D6BBA474F0716A84810ED2 /* CGContext+CGImage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CGContext+CGImage.swift"; path = "DynamicBlurView/CGContext+CGImage.swift"; sourceTree = ""; };
- 74D83E2536A78136F46912FBFF2B77AA /* FBSnapshotTestController.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestController.h; path = FBSnapshotTestCase/FBSnapshotTestController.h; sourceTree = ""; };
- 769D56B8A88B90E963557FF6D0D1858C /* FBSnapshotTestCase-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "FBSnapshotTestCase-prefix.pch"; sourceTree = ""; };
- 7E8A64BA70EF2572DB9B8AB444F3EB2F /* UIImage+Diff.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Diff.m"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.m"; sourceTree = ""; };
- 7EB40C46EE0ED7091984B7942FD6672D /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; };
- 7F1124B9692D608EC99400E0A4F535E3 /* BeEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeEmpty.swift; path = Sources/Nimble/Matchers/BeEmpty.swift; sourceTree = ""; };
- 7FBDBF40BDAA750070F2523840D60A2C /* NMBExceptionCapture.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = NMBExceptionCapture.m; path = Sources/NimbleObjectiveC/NMBExceptionCapture.m; sourceTree = ""; };
- 811052CEE5B0982AA7CE3AE4FD986A4C /* ThrowError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThrowError.swift; path = Sources/Nimble/Matchers/ThrowError.swift; sourceTree = ""; };
- 81E41ADEE8C8232E7CC5A1F2F9577386 /* XCTestObservationCenter+Register.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "XCTestObservationCenter+Register.m"; path = "Sources/NimbleObjectiveC/XCTestObservationCenter+Register.m"; sourceTree = ""; };
- 83E8F78BE4BCA36125359604509DBBAD /* NMBStringify.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NMBStringify.h; path = Sources/NimbleObjectiveC/NMBStringify.h; sourceTree = ""; };
- 83EF801B4936FC33191B799D61923BC9 /* DynamicBlurView-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "DynamicBlurView-umbrella.h"; sourceTree = ""; };
- 84B0303D51ED5C17293BC4477D02DAA9 /* BeNil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeNil.swift; path = Sources/Nimble/Matchers/BeNil.swift; sourceTree = ""; };
- 86C4A2D817E6CFFF31BF75161625FD5D /* DynamicBlurView.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = DynamicBlurView.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- 88A2D46F56B9B53408465E9019411FEB /* FBSnapshotTestCase.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = FBSnapshotTestCase.xcconfig; sourceTree = ""; };
- 8A4EF4BA115F9553E82AFB2B0E453027 /* CwlCatchException.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CwlCatchException.h; path = Carthage/Checkouts/CwlCatchException/Sources/CwlCatchExceptionSupport/include/CwlCatchException.h; sourceTree = ""; };
- 8C2C079E8AFC3A5EFF22EE190BAEC967 /* UIView+Animations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+Animations.swift"; path = "PopupDialog/Classes/UIView+Animations.swift"; sourceTree = ""; };
- 8F1C8AE77592302C5AF8840458F6A7C3 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };
- 8FA546E16F2C7E96360FD891F38C47A8 /* Expectation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Expectation.swift; path = Sources/Nimble/Expectation.swift; sourceTree = ""; };
- 9294A2D8BAEE19009408690C2B5D3F4A /* UIImageView+Calculations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImageView+Calculations.swift"; path = "PopupDialog/Classes/UIImageView+Calculations.swift"; sourceTree = ""; };
- 964C2F88B48470725E71A6369F2A1AAD /* RaisesException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RaisesException.swift; path = Sources/Nimble/Matchers/RaisesException.swift; sourceTree = ""; };
- 98E349E39A55FEA2A0FAD7D52575217A /* Pods-PopupDialog_Example-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PopupDialog_Example-Info.plist"; sourceTree = ""; };
- 99B3B57867426BE9922334CDB71EA529 /* DynamicBlurView.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = DynamicBlurView.modulemap; sourceTree = ""; };
- 9AA92EDEF03A1015E5878A9ECA73BB6A /* Match.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Match.swift; path = Sources/Nimble/Matchers/Match.swift; sourceTree = ""; };
- 9CC6517936E4387C41FE2189217EBA63 /* Pods-PopupDialog_Example-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-PopupDialog_Example-umbrella.h"; sourceTree = ""; };
+ 02293FB2EA49ECAC14876A877C5665B9 /* iOSSnapshotTestCase-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSSnapshotTestCase-umbrella.h"; sourceTree = ""; };
+ 049FF961807D2CCFB4BFB006B3F6903A /* BeEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeEmpty.swift; path = Sources/Nimble/Matchers/BeEmpty.swift; sourceTree = ""; };
+ 062B40CBDA4909A56A64AC28DFA2961C /* Pods_PopupDialog_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_PopupDialog_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 0648E1602C901BD99D761CFE85054D0D /* BeGreaterThan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThan.swift; path = Sources/Nimble/Matchers/BeGreaterThan.swift; sourceTree = ""; };
+ 0AABD3AA8D14DF1487084914771264AE /* MatcherFunc.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatcherFunc.swift; path = Sources/Nimble/Matchers/MatcherFunc.swift; sourceTree = ""; };
+ 0AEF0170963EF4B08801F885B935F660 /* Pods-PopupDialog_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-PopupDialog_Example.release.xcconfig"; sourceTree = ""; };
+ 0BD82EB3728DE03DCC8F5AD53A6C1753 /* mach_excServer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = mach_excServer.h; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/mach_excServer.h; sourceTree = ""; };
+ 0C10507EBB8AA3756829FDC5FAC25C81 /* XCTestObservationCenter+Register.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "XCTestObservationCenter+Register.m"; path = "Sources/NimbleObjectiveC/XCTestObservationCenter+Register.m"; sourceTree = ""; };
+ 0C577112BA5BA61FA2DA28270C5DC2ED /* ExpectationMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExpectationMessage.swift; path = Sources/Nimble/ExpectationMessage.swift; sourceTree = ""; };
+ 0D76BEEE5B32330195FB03044C3E4F44 /* NMBStringify.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = NMBStringify.m; path = Sources/NimbleObjectiveC/NMBStringify.m; sourceTree = ""; };
+ 104768EF226E926A18F524E8C79C0CE7 /* BeLessThan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLessThan.swift; path = Sources/Nimble/Matchers/BeLessThan.swift; sourceTree = ""; };
+ 1243339E448CD16D18717B50F920BB09 /* iOSSnapshotTestCase-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "iOSSnapshotTestCase-dummy.m"; sourceTree = ""; };
+ 150E79AC1ECCCC04306BC175588D3351 /* SourceLocation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SourceLocation.swift; path = Sources/Nimble/Utils/SourceLocation.swift; sourceTree = ""; };
+ 15F87AFA7A13F5CC2191237E6950D9F6 /* iOSSnapshotTestCase-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "iOSSnapshotTestCase-Info.plist"; sourceTree = ""; };
+ 16188B23CF197FC44AD8B26B9A757403 /* Pods-PopupDialog_Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-PopupDialog_Tests-acknowledgements.markdown"; sourceTree = ""; };
+ 16F11C32475366566F3A1AE69D966D67 /* DynamicBlurView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = DynamicBlurView.h; path = DynamicBlurView/DynamicBlurView.h; sourceTree = ""; };
+ 17658872231DBE64CAE55AA7B703F18A /* NMBObjCMatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NMBObjCMatcher.swift; path = Sources/Nimble/Adapters/NMBObjCMatcher.swift; sourceTree = ""; };
+ 19BE1001CECE5FDB557512C1C892E151 /* DynamicBlurView-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "DynamicBlurView-umbrella.h"; sourceTree = ""; };
+ 1B66FE64BF30208C9B90EDFDF4CB4184 /* PopupDialog.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PopupDialog.modulemap; sourceTree = ""; };
+ 1B91546848953EFE3B8A19F21DA855A0 /* PresentationManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PresentationManager.swift; path = PopupDialog/Classes/PresentationManager.swift; sourceTree = ""; };
+ 1C4A913B2ABE97CB0F21D60821655525 /* Nimble.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Nimble.xcconfig; sourceTree = ""; };
+ 1C7B47AEA8507F032FA94B515EA3FAE9 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; };
+ 1CECC7B09DE0C6F52BABCCDC6AE24C22 /* iOSSnapshotTestCase-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "iOSSnapshotTestCase-prefix.pch"; sourceTree = ""; };
+ 1E941EF8F373F12B868892D01A1BA655 /* Expression.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Expression.swift; path = Sources/Nimble/Expression.swift; sourceTree = ""; };
+ 1F48B91B4064EA92FA60D4455FBF0257 /* ToSucceed.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ToSucceed.swift; path = Sources/Nimble/Matchers/ToSucceed.swift; sourceTree = ""; };
+ 200A77E157E470437D3C032888ABC3C4 /* AllPass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AllPass.swift; path = Sources/Nimble/Matchers/AllPass.swift; sourceTree = ""; };
+ 249EC0574A7A3B3075817EC5A0CD4C74 /* CwlPreconditionTesting.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CwlPreconditionTesting.h; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/Mach/CwlPreconditionTesting.h; sourceTree = ""; };
+ 27BA8A345B5729D15B3AACDDC93424DF /* FBSnapshotTestCase.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestCase.m; path = FBSnapshotTestCase/FBSnapshotTestCase.m; sourceTree = ""; };
+ 287C70787CC4C2F3ABA8597DC104A392 /* UIImage+Snapshot.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Snapshot.m"; path = "FBSnapshotTestCase/Categories/UIImage+Snapshot.m"; sourceTree = ""; };
+ 29744CD016B1185AC562D0482E20989D /* Pods-PopupDialog_Example-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-PopupDialog_Example-umbrella.h"; sourceTree = ""; };
+ 2BA118F30416203AD3F72914EF48A12A /* DynamicBlurView-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "DynamicBlurView-Info.plist"; sourceTree = ""; };
+ 2C5299414864EBA7403DB7EB7300E148 /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = FBSnapshotTestCase/SwiftSupport.swift; sourceTree = ""; };
+ 30B622D6D13E7E41B1E38658218CBA00 /* UIImage+Snapshot.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Snapshot.h"; path = "FBSnapshotTestCase/Categories/UIImage+Snapshot.h"; sourceTree = ""; };
+ 3103870D569FB5F369820BD98DC247AF /* ThrowAssertion.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThrowAssertion.swift; path = Sources/Nimble/Matchers/ThrowAssertion.swift; sourceTree = ""; };
+ 310A46556D07A0296C66D5864B4B1822 /* CwlCatchException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlCatchException.swift; path = Carthage/Checkouts/CwlCatchException/Sources/CwlCatchException/CwlCatchException.swift; sourceTree = ""; };
+ 3242E237431529C3360DC01E63A37357 /* DSL.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = DSL.m; path = Sources/NimbleObjectiveC/DSL.m; sourceTree = ""; };
+ 325E316C92DF01A9D94DF6430091DC23 /* InteractiveTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InteractiveTransition.swift; path = PopupDialog/Classes/InteractiveTransition.swift; sourceTree = ""; };
+ 35165D0C2642FE0116B49AA4F537ACB8 /* DSL+Wait.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DSL+Wait.swift"; path = "Sources/Nimble/DSL+Wait.swift"; sourceTree = ""; };
+ 36DDC1C4D729976F1145A8935F22BCDD /* EndWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EndWith.swift; path = Sources/Nimble/Matchers/EndWith.swift; sourceTree = ""; };
+ 38328F060AF39895E284A3811EC4A9BD /* DynamicBlurView.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = DynamicBlurView.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 38D83146DF4CB712F570F9D8D91A29C5 /* TransitionAnimations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TransitionAnimations.swift; path = PopupDialog/Classes/TransitionAnimations.swift; sourceTree = ""; };
+ 3AA35D35E0EC672D7AC55914FA29B4EB /* PopupDialogDefaultView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PopupDialogDefaultView.swift; path = PopupDialog/Classes/PopupDialogDefaultView.swift; sourceTree = ""; };
+ 3AEBB59DAF48A0CEFB4F5297AEB3779D /* RaisesException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RaisesException.swift; path = Sources/Nimble/Matchers/RaisesException.swift; sourceTree = ""; };
+ 3B248EF6FA846138728808541EF4BCC5 /* Pods-PopupDialog_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-PopupDialog_Example.debug.xcconfig"; sourceTree = ""; };
+ 3C8894F8D3D2B3BA57C2A7BC7D100798 /* PopupDialog+Keyboard.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PopupDialog+Keyboard.swift"; path = "PopupDialog/Classes/PopupDialog+Keyboard.swift"; sourceTree = ""; };
+ 3DD2DA301B282EF57E9C93CF779114A3 /* Nimble.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Nimble.modulemap; sourceTree = ""; };
+ 3E03482672DEA8CD8256EF0392339636 /* iOSSnapshotTestCase.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = iOSSnapshotTestCase.xcconfig; sourceTree = ""; };
+ 3ECE482291E4AB1C3CA3877C9D4FBBD1 /* MatchError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MatchError.swift; path = Sources/Nimble/Matchers/MatchError.swift; sourceTree = ""; };
+ 3EDE5D2AFC33018AA44EDF7079E6C8EF /* Nimble-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Nimble-dummy.m"; sourceTree = ""; };
+ 3F8CFEBEEF998FFE137C33CFF02EF8D6 /* Pods-PopupDialog_Example-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-PopupDialog_Example-dummy.m"; sourceTree = ""; };
+ 401ECAF6FFC2200EEFED7B1B53B2F6BC /* Pods-PopupDialog_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-PopupDialog_Tests.debug.xcconfig"; sourceTree = ""; };
+ 431C0DCBF7EA442CC2886C333A20C0DF /* AssertionDispatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AssertionDispatcher.swift; path = Sources/Nimble/Adapters/AssertionDispatcher.swift; sourceTree = ""; };
+ 455DC35380748FE9C8AC10A6791D8553 /* CGImage+Accelerate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CGImage+Accelerate.swift"; path = "DynamicBlurView/CGImage+Accelerate.swift"; sourceTree = ""; };
+ 4677A1DC722B43705A27698CD6BFED09 /* FailureMessage.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FailureMessage.swift; path = Sources/Nimble/FailureMessage.swift; sourceTree = ""; };
+ 46863F33A0753DFBCB245F19F5E87E46 /* Pods-PopupDialog_Tests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-PopupDialog_Tests-umbrella.h"; sourceTree = ""; };
+ 4823F2C2EEADA5B354927EB340E3E020 /* UIImage+Compare.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Compare.h"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.h"; sourceTree = ""; };
+ 4B921A25089E53BFEDCD66354FE5169B /* DynamicBlurView-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "DynamicBlurView-prefix.pch"; sourceTree = ""; };
+ 4CFD05A4ADF118B4F237803DA904434C /* NMBExceptionCapture.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NMBExceptionCapture.h; path = Sources/NimbleObjectiveC/NMBExceptionCapture.h; sourceTree = ""; };
+ 4DE10CE7D7C57069894709C6EBE62D5C /* UIImageView+Calculations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIImageView+Calculations.swift"; path = "PopupDialog/Classes/UIImageView+Calculations.swift"; sourceTree = ""; };
+ 511D5F3EF0C438FA53E15FAC3DB97D37 /* ThrowError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThrowError.swift; path = Sources/Nimble/Matchers/ThrowError.swift; sourceTree = ""; };
+ 52A81F33A5D84847EB12A37057C44A7B /* BeAKindOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeAKindOf.swift; path = Sources/Nimble/Matchers/BeAKindOf.swift; sourceTree = ""; };
+ 52E79702AB3898330C827CB689786AEB /* DynamicBlurView.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = DynamicBlurView.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 5537BA52CB0430AAD64E042140B410DF /* ContainElementSatisfying.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContainElementSatisfying.swift; path = Sources/Nimble/Matchers/ContainElementSatisfying.swift; sourceTree = ""; };
+ 59632C31CC7E9B0E97E82219B426C6BA /* FBSnapshotTestCasePlatform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = FBSnapshotTestCasePlatform.h; path = FBSnapshotTestCase/FBSnapshotTestCasePlatform.h; sourceTree = ""; };
+ 5C335FD9E99D06E1D6FF9521C5F9FEB2 /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/Accelerate.framework; sourceTree = DEVELOPER_DIR; };
+ 5C61567B81BB2E922D32901B1A352946 /* CwlCatchBadInstruction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlCatchBadInstruction.swift; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlCatchBadInstruction.swift; sourceTree = ""; };
+ 5F3C735F0FF2503CC2041F1CF007347D /* Nimble-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Nimble-Info.plist"; sourceTree = ""; };
+ 5FCD81F4FCC8CBBB090E891E96AB22B2 /* Async.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Async.swift; path = Sources/Nimble/Matchers/Async.swift; sourceTree = ""; };
+ 607AF5DC12915B330572F1FD9A6253C0 /* CwlBadInstructionException.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlBadInstructionException.swift; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlBadInstructionException.swift; sourceTree = ""; };
+ 61760C778E71AF733C0C3FE68A2325B8 /* Pods-PopupDialog_Tests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-PopupDialog_Tests.modulemap"; sourceTree = ""; };
+ 64091636CB0FA64C3BDF5E1799181546 /* CaptureQuality.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CaptureQuality.swift; path = DynamicBlurView/CaptureQuality.swift; sourceTree = ""; };
+ 64860498EAA97994F29592BDBD85AB38 /* CwlMachBadInstructionHandler.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CwlMachBadInstructionHandler.m; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlMachBadInstructionHandler/CwlMachBadInstructionHandler.m; sourceTree = ""; };
+ 667AE1285750252FDFEA407317858F9F /* PopupDialogDefaultButtons.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PopupDialogDefaultButtons.swift; path = PopupDialog/Classes/PopupDialogDefaultButtons.swift; sourceTree = ""; };
+ 69B71AD153BEE005185EDF50D848A1BC /* Pods-PopupDialog_Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-PopupDialog_Tests-dummy.m"; sourceTree = ""; };
+ 6A4FD942AB99D4D6B1BAF5F19A80C325 /* UIImage+Diff.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+Diff.h"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.h"; sourceTree = ""; };
+ 6AC75CF853BC4363E81362410CBB15C0 /* PopupDialog-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PopupDialog-umbrella.h"; sourceTree = ""; };
+ 6CD84BE03AE82DE3BA117239FC964D53 /* BeLessThanOrEqual.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLessThanOrEqual.swift; path = Sources/Nimble/Matchers/BeLessThanOrEqual.swift; sourceTree = ""; };
+ 6ED3B51EEE439AD9A185845300BF06AD /* NMBExpectation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NMBExpectation.swift; path = Sources/Nimble/Adapters/NMBExpectation.swift; sourceTree = ""; };
+ 7186A4E63E259BF85CB22C8237BEEF4E /* CwlCatchException.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CwlCatchException.m; path = Carthage/Checkouts/CwlCatchException/Sources/CwlCatchExceptionSupport/CwlCatchException.m; sourceTree = ""; };
+ 722C7A27FD7D7E22369E39AAFFC586C2 /* Pods-PopupDialog_Example-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PopupDialog_Example-acknowledgements.plist"; sourceTree = ""; };
+ 74823AAD4B57CA924A7ADCE10A08B72C /* CwlCatchException.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = CwlCatchException.h; path = Carthage/Checkouts/CwlCatchException/Sources/CwlCatchExceptionSupport/include/CwlCatchException.h; sourceTree = ""; };
+ 74D9842BCB672CACFC947E250922F87E /* PopupDialogDefaultViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PopupDialogDefaultViewController.swift; path = PopupDialog/Classes/PopupDialogDefaultViewController.swift; sourceTree = ""; };
+ 77CC9B70E7718AF175B15CE716EC1493 /* Pods-PopupDialog_Example-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PopupDialog_Example-Info.plist"; sourceTree = ""; };
+ 7952F701BC2C67E165903F32888AC3CF /* PopupDialogButton.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PopupDialogButton.swift; path = PopupDialog/Classes/PopupDialogButton.swift; sourceTree = ""; };
+ 79BB1E107157AB7C46336D7728F4AC69 /* CwlDarwinDefinitions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CwlDarwinDefinitions.swift; path = Carthage/Checkouts/CwlPreconditionTesting/Sources/CwlPreconditionTesting/CwlDarwinDefinitions.swift; sourceTree = ""; };
+ 7B55FC5833F829BBE6DBA3E1D3624839 /* PopupDialog.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PopupDialog.xcconfig; sourceTree = ""; };
+ 7B9A767D2961EF0F8B7FD646793BEDF0 /* BeGreaterThanOrEqualTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeGreaterThanOrEqualTo.swift; path = Sources/Nimble/Matchers/BeGreaterThanOrEqualTo.swift; sourceTree = ""; };
+ 7E200B17B93288E7C000F89157FC6CE9 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; };
+ 7F2D87DA8397960596B1F5731D378B50 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; };
+ 80EE28C5B16EAD867F263D863CA8FC4E /* BeLogical.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeLogical.swift; path = Sources/Nimble/Matchers/BeLogical.swift; sourceTree = ""; };
+ 817F8878287639D4DD0224A69EA75047 /* BlurLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BlurLayer.swift; path = DynamicBlurView/BlurLayer.swift; sourceTree = ""; };
+ 83DAF84EA18303E3BB7DE997060F15DD /* Equal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Equal.swift; path = Sources/Nimble/Matchers/Equal.swift; sourceTree = ""; };
+ 8585C63BBC446F4E8A88731650241983 /* FBSnapshotTestController.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = FBSnapshotTestController.m; path = FBSnapshotTestCase/FBSnapshotTestController.m; sourceTree = ""; };
+ 865F19D3D1EF135E1965B13962BE1B4B /* Pods-PopupDialog_Tests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-PopupDialog_Tests-frameworks.sh"; sourceTree = ""; };
+ 87838F7843F344E484A1E26218D90F8B /* BeAnInstanceOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeAnInstanceOf.swift; path = Sources/Nimble/Matchers/BeAnInstanceOf.swift; sourceTree = ""; };
+ 87B092C30EDF9B1934FDCE9AFF42924F /* Functional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Functional.swift; path = Sources/Nimble/Utils/Functional.swift; sourceTree = ""; };
+ 87F785A29003BAC86FB78E9905A624B6 /* UIImage+Compare.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Compare.m"; path = "FBSnapshotTestCase/Categories/UIImage+Compare.m"; sourceTree = ""; };
+ 8D07B970FABF9B765FD43E03FBDD544D /* NMBStringify.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = NMBStringify.h; path = Sources/NimbleObjectiveC/NMBStringify.h; sourceTree = ""; };
+ 8D3E08FF2BC522160B297D24F3DA657D /* BeIdenticalTo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeIdenticalTo.swift; path = Sources/Nimble/Matchers/BeIdenticalTo.swift; sourceTree = ""; };
+ 8D41491FB9AB86E87AD99971C8A6B13F /* UIImage+Diff.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+Diff.m"; path = "FBSnapshotTestCase/Categories/UIImage+Diff.m"; sourceTree = ""; };
+ 8F05F0FE2AD0D7B08BB3F5A14E13573C /* NimbleEnvironment.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NimbleEnvironment.swift; path = Sources/Nimble/Adapters/NimbleEnvironment.swift; sourceTree = ""; };
+ 8FA2D4A0B3E941EAC2405224507125B9 /* Nimble-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Nimble-umbrella.h"; sourceTree = ""; };
+ 90DE7B18813B41B0237404EA7187BCD5 /* Pods-PopupDialog_Tests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-PopupDialog_Tests-Info.plist"; sourceTree = ""; };
+ 9149414E122143FE570977D66C83E70C /* Pods_PopupDialog_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_PopupDialog_Example.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 9229EA4AF176F697394404461DF72DBA /* BeginWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BeginWith.swift; path = Sources/Nimble/Matchers/BeginWith.swift; sourceTree = ""; };
+ 92EE080E4A4E64AE18D07C5479F1ABFA /* DynamicBlurView.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = DynamicBlurView.modulemap; sourceTree = ""; };
+ 95BA7DF0C033737DEE656977B7246131 /* PopupDialog.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PopupDialog.swift; path = PopupDialog/Classes/PopupDialog.swift; sourceTree = ""; };
+ 97174344DBF09A205DFA3DC57B25C7D1 /* PopupDialog-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "PopupDialog-Info.plist"; sourceTree = ""; };
+ 9B7C91CE0BEF5AD7EBE599E18BA6F6A8 /* UIViewController+Visibility.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIViewController+Visibility.swift"; path = "PopupDialog/Classes/UIViewController+Visibility.swift"; sourceTree = ""; };
+ 9B7F3B2BBF0FD8172393A0D3C72D33A9 /* PopupDialogContainerView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PopupDialogContainerView.swift; path = PopupDialog/Classes/PopupDialogContainerView.swift; sourceTree = ""; };
+ 9CF89A6943F689434ED9CB6279165EDC /* Stringers.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Stringers.swift; path = Sources/Nimble/Utils/Stringers.swift; sourceTree = ""; };
+ 9D832BDD2D3D8BC23F7550A2680D3AD1 /* UIView+Animations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIView+Animations.swift"; path = "PopupDialog/Classes/UIView+Animations.swift"; sourceTree = ""; };
9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; };
- 9E676FA350BAF8126087BBBBCB484CDB /* PopupDialogDefaultViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PopupDialogDefaultViewController.swift; path = PopupDialog/Classes/PopupDialogDefaultViewController.swift; sourceTree = ""; };
- A013F2B906262190FBABDDB366F5434B /* PopupDialog.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; path = PopupDialog.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; };
- A4AB04D722A9B70580BB83D9CC041170 /* Pods-PopupDialog_Example-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-PopupDialog_Example-dummy.m"; sourceTree = ""; };
- A76484091D5ABDF3F244B9EA6428C1E7 /* CwlCatchException.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = CwlCatchException.m; path = Carthage/Checkouts/CwlCatchException/Sources/CwlCatchExceptionSupport/CwlCatchException.m; sourceTree = "