xcknife 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0b6205c8d36ae8e54613311d15ca1819c311e091
4
- data.tar.gz: fee83a2de8da43399901a1b1dd90185b6dcbf8e1
3
+ metadata.gz: 382b508c31ce85bef5f5e3b8c62c0123c99621c8
4
+ data.tar.gz: 32d2d0f673e3249255b6411c4495728fd88f2ad4
5
5
  SHA512:
6
- metadata.gz: 938970059eaeb4463ee976b0b22a05b0912098817f007dc22e2ac1401fb7dac8fc148ed8c4c1da8bbb99dfd82951fcf51d19873d8d14c116f38b695d3f554667
7
- data.tar.gz: 9bf514e7e67fdf21ddbf358bdf9fc58569a0eef1e25a0c4715aa6524b0cfdae0fa14214db30eee8c50e880b366905686316d53f6acf3ae9a85d1eb27648d6de9
6
+ metadata.gz: 62db236867e7b9cce9cd898d801f85529f839dc1b92d5b90012477f5217f56162b8cac832b50c0018baab3cfe930e1457f6044cc0487dc91f68b4e046b3218bb
7
+ data.tar.gz: f511bda1db99c3248cdec74fe82a297ca949e49f8dc12802364ee24fa413fe4c2a8c4f61ee45290278a6e5eb833490d997bba3d5ea5b607fa720065251134b5c
data/.gitignore CHANGED
@@ -3,3 +3,8 @@ pkg
3
3
  .idea/
4
4
  *.gem
5
5
  Gemfile.lock
6
+ xcuserdata/
7
+ testdumperbuild
8
+ contents.xcworkspacedata
9
+ TestDumper/TestDumper.dylib
10
+ *.tmp
data/.gitmodules ADDED
@@ -0,0 +1,3 @@
1
+ [submodule "spec/xcknife-exemplar"]
2
+ path = spec/xcknife-exemplar
3
+ url = https://github.com/danielribeiro/xcknife-exemplar.git
data/.travis.yml ADDED
@@ -0,0 +1,9 @@
1
+ language: ruby
2
+ sudo: false
3
+ before_install: gem install bundler
4
+ bundler_args: --without development
5
+
6
+ rvm:
7
+ - 2.2.3
8
+ - 2.3.0
9
+ - 2.3.1
data/README.md CHANGED
@@ -1,4 +1,6 @@
1
1
  # XCKnife
2
+ [![Gem Version](https://badge.fury.io/rb/xcknife.svg)](https://badge.fury.io/rb/xcknife)
3
+ [![Build Status](https://travis-ci.org/square/xcknife.svg?branch=master)](https://travis-ci.org/square/xcknife)
2
4
  [![Apache 2 licensed](https://img.shields.io/badge/license-Apache2-blue.svg)](https://github.com/square/xcknife/blob/master/LICENSE)
3
5
 
4
6
  XCKnife is a tool that partitions XCTestCase tests in a way that minimizes total execution time (particularly useful for distributed test executions).
@@ -6,6 +8,8 @@ XCKnife is a tool that partitions XCTestCase tests in a way that minimizes total
6
8
  It works by leveraging [xctool's](https://github.com/facebook/xctool) [json-stream](https://github.com/facebook/xctool#included-reporters) reporter output.
7
9
 
8
10
  XCKnife generates a list of only arguments meant to be pass to Xctool's [*-only* test arguments](https://github.com/facebook/xctool#testing), but alternatively could used to generate multiple xcschemes with the proper test partitions.
11
+
12
+ More information on XCKnife, go [here](https://corner.squareup.com/2016/06/xcknife-faster-distributed-tests-for-ios.html).
9
13
 
10
14
  ## Install
11
15
 
@@ -93,7 +97,7 @@ outputing:
93
97
 
94
98
  ## Example: Multiple partition Sets
95
99
 
96
- You can pass the partition flag mutliple times, so that XCKnife will do two level partiotioning: inside each partition, and then for all partitions.
100
+ You can pass the partition flag mutliple times, so that XCKnife will do two level partitioning: inside each partition, and then for all partitions.
97
101
 
98
102
  This is useful if each partition is tested against multiple devices, simulator versions or configurations. On the following example picture `CommonTestTarget` being tested against iPhones only, while `CommonTestTarget,iPadTestTarget` is tested against iPads.
99
103
 
data/Rakefile CHANGED
@@ -1,6 +1,17 @@
1
1
  require 'rspec/core/rake_task'
2
2
  require "bundler/gem_tasks"
3
+ require 'fileutils'
3
4
 
4
5
  RSpec::Core::RakeTask.new(:spec)
5
6
 
6
7
  task default: :spec
8
+
9
+ desc "Builds TestDumper.dylib"
10
+ task :build_test_dumper do
11
+ target_dir = File.join(File.dirname(__FILE__), "TestDumper")
12
+ Dir.chdir(target_dir) do
13
+ system "./build.sh"
14
+ FileUtils.copy_file("./testdumperbuild/Build/Products/Debug-iphonesimulator/TestDumper.framework/TestDumper", "./TestDumper.dylib")
15
+ puts "TestDumper.dylib was created successfully"
16
+ end
17
+ end
@@ -0,0 +1,11 @@
1
+ # TestDumper - EXPERIMENTAL
2
+
3
+ Utility that replaces xctool for enumerating tests. It requires the `build-for-testing` feature Xcode8 introduced on xcodebuild. In particular, it leverages the xctestrun file (see `man xcodebuild.xctestrun`).
4
+
5
+ ## Building.
6
+
7
+ Run
8
+
9
+ ```
10
+ $ ./build.sh
11
+ ````
@@ -0,0 +1,525 @@
1
+ // !$*UTF8*$!
2
+ {
3
+ archiveVersion = 1;
4
+ classes = {
5
+ };
6
+ objectVersion = 46;
7
+ objects = {
8
+
9
+ /* Begin PBXBuildFile section */
10
+ F60C68C01B8D038300CC8521 /* TestDumper.h in Headers */ = {isa = PBXBuildFile; fileRef = F60C68BF1B8D038300CC8521 /* TestDumper.h */; settings = {ATTRIBUTES = (Public, ); }; };
11
+ F60C68C61B8D038300CC8521 /* TestDumper.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F60C68BA1B8D038300CC8521 /* TestDumper.framework */; };
12
+ F60C68D91B8D04F400CC8521 /* Initialize.m in Sources */ = {isa = PBXBuildFile; fileRef = F60C68D81B8D04F400CC8521 /* Initialize.m */; };
13
+ F670871C1B8D09D7000466B2 /* TestDumper.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F60C68BA1B8D038300CC8521 /* TestDumper.framework */; };
14
+ F67087251B8D0A71000466B2 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F67087241B8D0A71000466B2 /* XCTest.framework */; };
15
+ /* End PBXBuildFile section */
16
+
17
+ /* Begin PBXContainerItemProxy section */
18
+ F60C68C71B8D038300CC8521 /* PBXContainerItemProxy */ = {
19
+ isa = PBXContainerItemProxy;
20
+ containerPortal = F60C68B11B8D038300CC8521 /* Project object */;
21
+ proxyType = 1;
22
+ remoteGlobalIDString = F60C68B91B8D038300CC8521;
23
+ remoteInfo = TestDumper;
24
+ };
25
+ F670871D1B8D09D7000466B2 /* PBXContainerItemProxy */ = {
26
+ isa = PBXContainerItemProxy;
27
+ containerPortal = F60C68B11B8D038300CC8521 /* Project object */;
28
+ proxyType = 1;
29
+ remoteGlobalIDString = F60C68B91B8D038300CC8521;
30
+ remoteInfo = TestDumper;
31
+ };
32
+ /* End PBXContainerItemProxy section */
33
+
34
+ /* Begin PBXFileReference section */
35
+ F60C68BA1B8D038300CC8521 /* TestDumper.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = TestDumper.framework; sourceTree = BUILT_PRODUCTS_DIR; };
36
+ F60C68BE1B8D038300CC8521 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
37
+ F60C68BF1B8D038300CC8521 /* TestDumper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TestDumper.h; sourceTree = "<group>"; };
38
+ F60C68C51B8D038300CC8521 /* TestDumperTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TestDumperTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
39
+ F60C68D81B8D04F400CC8521 /* Initialize.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Initialize.m; sourceTree = "<group>"; };
40
+ F67087171B8D09D7000466B2 /* TestTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TestTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
41
+ F67087241B8D0A71000466B2 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = ../../Library/Frameworks/XCTest.framework; sourceTree = SDKROOT; };
42
+ /* End PBXFileReference section */
43
+
44
+ /* Begin PBXFrameworksBuildPhase section */
45
+ F60C68B61B8D038300CC8521 /* Frameworks */ = {
46
+ isa = PBXFrameworksBuildPhase;
47
+ buildActionMask = 2147483647;
48
+ files = (
49
+ F67087251B8D0A71000466B2 /* XCTest.framework in Frameworks */,
50
+ );
51
+ runOnlyForDeploymentPostprocessing = 0;
52
+ };
53
+ F60C68C21B8D038300CC8521 /* Frameworks */ = {
54
+ isa = PBXFrameworksBuildPhase;
55
+ buildActionMask = 2147483647;
56
+ files = (
57
+ F60C68C61B8D038300CC8521 /* TestDumper.framework in Frameworks */,
58
+ );
59
+ runOnlyForDeploymentPostprocessing = 0;
60
+ };
61
+ F67087141B8D09D7000466B2 /* Frameworks */ = {
62
+ isa = PBXFrameworksBuildPhase;
63
+ buildActionMask = 2147483647;
64
+ files = (
65
+ F670871C1B8D09D7000466B2 /* TestDumper.framework in Frameworks */,
66
+ );
67
+ runOnlyForDeploymentPostprocessing = 0;
68
+ };
69
+ /* End PBXFrameworksBuildPhase section */
70
+
71
+ /* Begin PBXGroup section */
72
+ F60C68B01B8D038300CC8521 = {
73
+ isa = PBXGroup;
74
+ children = (
75
+ F67087241B8D0A71000466B2 /* XCTest.framework */,
76
+ F60C68BC1B8D038300CC8521 /* TestDumper */,
77
+ F60C68BB1B8D038300CC8521 /* Products */,
78
+ );
79
+ sourceTree = "<group>";
80
+ };
81
+ F60C68BB1B8D038300CC8521 /* Products */ = {
82
+ isa = PBXGroup;
83
+ children = (
84
+ F60C68BA1B8D038300CC8521 /* TestDumper.framework */,
85
+ F60C68C51B8D038300CC8521 /* TestDumperTests.xctest */,
86
+ F67087171B8D09D7000466B2 /* TestTests.xctest */,
87
+ );
88
+ name = Products;
89
+ sourceTree = "<group>";
90
+ };
91
+ F60C68BC1B8D038300CC8521 /* TestDumper */ = {
92
+ isa = PBXGroup;
93
+ children = (
94
+ F60C68BF1B8D038300CC8521 /* TestDumper.h */,
95
+ F60C68BD1B8D038300CC8521 /* Supporting Files */,
96
+ F60C68D81B8D04F400CC8521 /* Initialize.m */,
97
+ );
98
+ path = TestDumper;
99
+ sourceTree = "<group>";
100
+ };
101
+ F60C68BD1B8D038300CC8521 /* Supporting Files */ = {
102
+ isa = PBXGroup;
103
+ children = (
104
+ F60C68BE1B8D038300CC8521 /* Info.plist */,
105
+ );
106
+ name = "Supporting Files";
107
+ sourceTree = "<group>";
108
+ };
109
+ /* End PBXGroup section */
110
+
111
+ /* Begin PBXHeadersBuildPhase section */
112
+ F60C68B71B8D038300CC8521 /* Headers */ = {
113
+ isa = PBXHeadersBuildPhase;
114
+ buildActionMask = 2147483647;
115
+ files = (
116
+ F60C68C01B8D038300CC8521 /* TestDumper.h in Headers */,
117
+ );
118
+ runOnlyForDeploymentPostprocessing = 0;
119
+ };
120
+ /* End PBXHeadersBuildPhase section */
121
+
122
+ /* Begin PBXNativeTarget section */
123
+ F60C68B91B8D038300CC8521 /* TestDumper */ = {
124
+ isa = PBXNativeTarget;
125
+ buildConfigurationList = F60C68D01B8D038300CC8521 /* Build configuration list for PBXNativeTarget "TestDumper" */;
126
+ buildPhases = (
127
+ F60C68B51B8D038300CC8521 /* Sources */,
128
+ F60C68B61B8D038300CC8521 /* Frameworks */,
129
+ F60C68B71B8D038300CC8521 /* Headers */,
130
+ F60C68B81B8D038300CC8521 /* Resources */,
131
+ );
132
+ buildRules = (
133
+ );
134
+ dependencies = (
135
+ );
136
+ name = TestDumper;
137
+ productName = TestDumper;
138
+ productReference = F60C68BA1B8D038300CC8521 /* TestDumper.framework */;
139
+ productType = "com.apple.product-type.framework";
140
+ };
141
+ F60C68C41B8D038300CC8521 /* TestDumperTests */ = {
142
+ isa = PBXNativeTarget;
143
+ buildConfigurationList = F60C68D31B8D038300CC8521 /* Build configuration list for PBXNativeTarget "TestDumperTests" */;
144
+ buildPhases = (
145
+ F60C68C11B8D038300CC8521 /* Sources */,
146
+ F60C68C21B8D038300CC8521 /* Frameworks */,
147
+ F60C68C31B8D038300CC8521 /* Resources */,
148
+ );
149
+ buildRules = (
150
+ );
151
+ dependencies = (
152
+ F60C68C81B8D038300CC8521 /* PBXTargetDependency */,
153
+ );
154
+ name = TestDumperTests;
155
+ productName = TestDumperTests;
156
+ productReference = F60C68C51B8D038300CC8521 /* TestDumperTests.xctest */;
157
+ productType = "com.apple.product-type.bundle.unit-test";
158
+ };
159
+ F67087161B8D09D7000466B2 /* TestTests */ = {
160
+ isa = PBXNativeTarget;
161
+ buildConfigurationList = F670871F1B8D09D7000466B2 /* Build configuration list for PBXNativeTarget "TestTests" */;
162
+ buildPhases = (
163
+ F67087131B8D09D7000466B2 /* Sources */,
164
+ F67087141B8D09D7000466B2 /* Frameworks */,
165
+ F67087151B8D09D7000466B2 /* Resources */,
166
+ );
167
+ buildRules = (
168
+ );
169
+ dependencies = (
170
+ F670871E1B8D09D7000466B2 /* PBXTargetDependency */,
171
+ );
172
+ name = TestTests;
173
+ productName = TestTests;
174
+ productReference = F67087171B8D09D7000466B2 /* TestTests.xctest */;
175
+ productType = "com.apple.product-type.bundle.unit-test";
176
+ };
177
+ /* End PBXNativeTarget section */
178
+
179
+ /* Begin PBXProject section */
180
+ F60C68B11B8D038300CC8521 /* Project object */ = {
181
+ isa = PBXProject;
182
+ attributes = {
183
+ LastSwiftUpdateCheck = 0700;
184
+ LastUpgradeCheck = 0700;
185
+ ORGANIZATIONNAME = "Square, Inc";
186
+ TargetAttributes = {
187
+ F60C68B91B8D038300CC8521 = {
188
+ CreatedOnToolsVersion = 6.4;
189
+ LastSwiftMigration = 0800;
190
+ };
191
+ F60C68C41B8D038300CC8521 = {
192
+ CreatedOnToolsVersion = 6.4;
193
+ LastSwiftMigration = 0800;
194
+ };
195
+ F67087161B8D09D7000466B2 = {
196
+ CreatedOnToolsVersion = 7.0;
197
+ LastSwiftMigration = 0800;
198
+ };
199
+ };
200
+ };
201
+ buildConfigurationList = F60C68B41B8D038300CC8521 /* Build configuration list for PBXProject "toolc" */;
202
+ compatibilityVersion = "Xcode 3.2";
203
+ developmentRegion = English;
204
+ hasScannedForEncodings = 0;
205
+ knownRegions = (
206
+ en,
207
+ );
208
+ mainGroup = F60C68B01B8D038300CC8521;
209
+ productRefGroup = F60C68BB1B8D038300CC8521 /* Products */;
210
+ projectDirPath = "";
211
+ projectRoot = "";
212
+ targets = (
213
+ F60C68B91B8D038300CC8521 /* TestDumper */,
214
+ F60C68C41B8D038300CC8521 /* TestDumperTests */,
215
+ F67087161B8D09D7000466B2 /* TestTests */,
216
+ );
217
+ };
218
+ /* End PBXProject section */
219
+
220
+ /* Begin PBXResourcesBuildPhase section */
221
+ F60C68B81B8D038300CC8521 /* Resources */ = {
222
+ isa = PBXResourcesBuildPhase;
223
+ buildActionMask = 2147483647;
224
+ files = (
225
+ );
226
+ runOnlyForDeploymentPostprocessing = 0;
227
+ };
228
+ F60C68C31B8D038300CC8521 /* Resources */ = {
229
+ isa = PBXResourcesBuildPhase;
230
+ buildActionMask = 2147483647;
231
+ files = (
232
+ );
233
+ runOnlyForDeploymentPostprocessing = 0;
234
+ };
235
+ F67087151B8D09D7000466B2 /* Resources */ = {
236
+ isa = PBXResourcesBuildPhase;
237
+ buildActionMask = 2147483647;
238
+ files = (
239
+ );
240
+ runOnlyForDeploymentPostprocessing = 0;
241
+ };
242
+ /* End PBXResourcesBuildPhase section */
243
+
244
+ /* Begin PBXSourcesBuildPhase section */
245
+ F60C68B51B8D038300CC8521 /* Sources */ = {
246
+ isa = PBXSourcesBuildPhase;
247
+ buildActionMask = 2147483647;
248
+ files = (
249
+ F60C68D91B8D04F400CC8521 /* Initialize.m in Sources */,
250
+ );
251
+ runOnlyForDeploymentPostprocessing = 0;
252
+ };
253
+ F60C68C11B8D038300CC8521 /* Sources */ = {
254
+ isa = PBXSourcesBuildPhase;
255
+ buildActionMask = 2147483647;
256
+ files = (
257
+ );
258
+ runOnlyForDeploymentPostprocessing = 0;
259
+ };
260
+ F67087131B8D09D7000466B2 /* Sources */ = {
261
+ isa = PBXSourcesBuildPhase;
262
+ buildActionMask = 2147483647;
263
+ files = (
264
+ );
265
+ runOnlyForDeploymentPostprocessing = 0;
266
+ };
267
+ /* End PBXSourcesBuildPhase section */
268
+
269
+ /* Begin PBXTargetDependency section */
270
+ F60C68C81B8D038300CC8521 /* PBXTargetDependency */ = {
271
+ isa = PBXTargetDependency;
272
+ target = F60C68B91B8D038300CC8521 /* TestDumper */;
273
+ targetProxy = F60C68C71B8D038300CC8521 /* PBXContainerItemProxy */;
274
+ };
275
+ F670871E1B8D09D7000466B2 /* PBXTargetDependency */ = {
276
+ isa = PBXTargetDependency;
277
+ target = F60C68B91B8D038300CC8521 /* TestDumper */;
278
+ targetProxy = F670871D1B8D09D7000466B2 /* PBXContainerItemProxy */;
279
+ };
280
+ /* End PBXTargetDependency section */
281
+
282
+ /* Begin XCBuildConfiguration section */
283
+ F60C68CE1B8D038300CC8521 /* Debug */ = {
284
+ isa = XCBuildConfiguration;
285
+ buildSettings = {
286
+ ALWAYS_SEARCH_USER_PATHS = NO;
287
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
288
+ CLANG_CXX_LIBRARY = "libc++";
289
+ CLANG_ENABLE_MODULES = YES;
290
+ CLANG_ENABLE_OBJC_ARC = YES;
291
+ CLANG_WARN_BOOL_CONVERSION = YES;
292
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
293
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
294
+ CLANG_WARN_EMPTY_BODY = YES;
295
+ CLANG_WARN_ENUM_CONVERSION = YES;
296
+ CLANG_WARN_INT_CONVERSION = YES;
297
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
298
+ CLANG_WARN_UNREACHABLE_CODE = YES;
299
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
300
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
301
+ COPY_PHASE_STRIP = NO;
302
+ CURRENT_PROJECT_VERSION = 1;
303
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
304
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
305
+ ENABLE_TESTABILITY = YES;
306
+ GCC_C_LANGUAGE_STANDARD = gnu99;
307
+ GCC_DYNAMIC_NO_PIC = NO;
308
+ GCC_NO_COMMON_BLOCKS = YES;
309
+ GCC_OPTIMIZATION_LEVEL = 0;
310
+ GCC_PREPROCESSOR_DEFINITIONS = (
311
+ "DEBUG=1",
312
+ "$(inherited)",
313
+ );
314
+ GCC_SYMBOLS_PRIVATE_EXTERN = NO;
315
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
316
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
317
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
318
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
319
+ GCC_WARN_UNUSED_FUNCTION = YES;
320
+ GCC_WARN_UNUSED_VARIABLE = YES;
321
+ IPHONEOS_DEPLOYMENT_TARGET = 8.4;
322
+ MTL_ENABLE_DEBUG_INFO = YES;
323
+ ONLY_ACTIVE_ARCH = YES;
324
+ SDKROOT = iphoneos;
325
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
326
+ TARGETED_DEVICE_FAMILY = "1,2";
327
+ VERSIONING_SYSTEM = "apple-generic";
328
+ VERSION_INFO_PREFIX = "";
329
+ };
330
+ name = Debug;
331
+ };
332
+ F60C68CF1B8D038300CC8521 /* Release */ = {
333
+ isa = XCBuildConfiguration;
334
+ buildSettings = {
335
+ ALWAYS_SEARCH_USER_PATHS = NO;
336
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
337
+ CLANG_CXX_LIBRARY = "libc++";
338
+ CLANG_ENABLE_MODULES = YES;
339
+ CLANG_ENABLE_OBJC_ARC = YES;
340
+ CLANG_WARN_BOOL_CONVERSION = YES;
341
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
342
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
343
+ CLANG_WARN_EMPTY_BODY = YES;
344
+ CLANG_WARN_ENUM_CONVERSION = YES;
345
+ CLANG_WARN_INT_CONVERSION = YES;
346
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
347
+ CLANG_WARN_UNREACHABLE_CODE = YES;
348
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
349
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
350
+ COPY_PHASE_STRIP = NO;
351
+ CURRENT_PROJECT_VERSION = 1;
352
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
353
+ ENABLE_NS_ASSERTIONS = NO;
354
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
355
+ GCC_C_LANGUAGE_STANDARD = gnu99;
356
+ GCC_NO_COMMON_BLOCKS = YES;
357
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
358
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
359
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
360
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
361
+ GCC_WARN_UNUSED_FUNCTION = YES;
362
+ GCC_WARN_UNUSED_VARIABLE = YES;
363
+ IPHONEOS_DEPLOYMENT_TARGET = 8.4;
364
+ MTL_ENABLE_DEBUG_INFO = NO;
365
+ SDKROOT = iphoneos;
366
+ TARGETED_DEVICE_FAMILY = "1,2";
367
+ VALIDATE_PRODUCT = YES;
368
+ VERSIONING_SYSTEM = "apple-generic";
369
+ VERSION_INFO_PREFIX = "";
370
+ };
371
+ name = Release;
372
+ };
373
+ F60C68D11B8D038300CC8521 /* Debug */ = {
374
+ isa = XCBuildConfiguration;
375
+ buildSettings = {
376
+ CLANG_ENABLE_MODULES = YES;
377
+ DEFINES_MODULE = YES;
378
+ DYLIB_COMPATIBILITY_VERSION = 1;
379
+ DYLIB_CURRENT_VERSION = 1;
380
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
381
+ EMBEDDED_CONTENT_CONTAINS_SWIFT = YES;
382
+ FRAMEWORK_SEARCH_PATHS = (
383
+ "$(inherited)",
384
+ "$(SDKROOT)/../../Library/Frameworks/",
385
+ "$(PROJECT_DIR)",
386
+ );
387
+ INFOPLIST_FILE = TestDumper/Info.plist;
388
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
389
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
390
+ PRODUCT_BUNDLE_IDENTIFIER = "com.squareup.$(PRODUCT_NAME:rfc1034identifier)";
391
+ PRODUCT_NAME = "$(TARGET_NAME)";
392
+ SKIP_INSTALL = YES;
393
+ SWIFT_INCLUDE_PATHS = "$(SDKROOT)/Developer/Library/Frameworks $(inherited)";
394
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
395
+ SWIFT_VERSION = 2.3;
396
+ };
397
+ name = Debug;
398
+ };
399
+ F60C68D21B8D038300CC8521 /* Release */ = {
400
+ isa = XCBuildConfiguration;
401
+ buildSettings = {
402
+ CLANG_ENABLE_MODULES = YES;
403
+ DEFINES_MODULE = YES;
404
+ DYLIB_COMPATIBILITY_VERSION = 1;
405
+ DYLIB_CURRENT_VERSION = 1;
406
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
407
+ EMBEDDED_CONTENT_CONTAINS_SWIFT = YES;
408
+ FRAMEWORK_SEARCH_PATHS = (
409
+ "$(inherited)",
410
+ "$(SDKROOT)/../../Library/Frameworks/",
411
+ "$(PROJECT_DIR)",
412
+ );
413
+ INFOPLIST_FILE = TestDumper/Info.plist;
414
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
415
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
416
+ PRODUCT_BUNDLE_IDENTIFIER = "com.squareup.$(PRODUCT_NAME:rfc1034identifier)";
417
+ PRODUCT_NAME = "$(TARGET_NAME)";
418
+ SKIP_INSTALL = YES;
419
+ SWIFT_INCLUDE_PATHS = "$(SDKROOT)/Developer/Library/Frameworks $(inherited)";
420
+ SWIFT_VERSION = 2.3;
421
+ };
422
+ name = Release;
423
+ };
424
+ F60C68D41B8D038300CC8521 /* Debug */ = {
425
+ isa = XCBuildConfiguration;
426
+ buildSettings = {
427
+ FRAMEWORK_SEARCH_PATHS = (
428
+ "$(SDKROOT)/Developer/Library/Frameworks",
429
+ "$(inherited)",
430
+ );
431
+ GCC_PREPROCESSOR_DEFINITIONS = (
432
+ "DEBUG=1",
433
+ "$(inherited)",
434
+ );
435
+ INFOPLIST_FILE = TestDumperTests/Info.plist;
436
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
437
+ PRODUCT_BUNDLE_IDENTIFIER = "com.squareup.$(PRODUCT_NAME:rfc1034identifier)";
438
+ PRODUCT_NAME = "$(TARGET_NAME)";
439
+ SWIFT_VERSION = 2.3;
440
+ };
441
+ name = Debug;
442
+ };
443
+ F60C68D51B8D038300CC8521 /* Release */ = {
444
+ isa = XCBuildConfiguration;
445
+ buildSettings = {
446
+ FRAMEWORK_SEARCH_PATHS = (
447
+ "$(SDKROOT)/Developer/Library/Frameworks",
448
+ "$(inherited)",
449
+ );
450
+ INFOPLIST_FILE = TestDumperTests/Info.plist;
451
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
452
+ PRODUCT_BUNDLE_IDENTIFIER = "com.squareup.$(PRODUCT_NAME:rfc1034identifier)";
453
+ PRODUCT_NAME = "$(TARGET_NAME)";
454
+ SWIFT_VERSION = 2.3;
455
+ };
456
+ name = Release;
457
+ };
458
+ F67087201B8D09D7000466B2 /* Debug */ = {
459
+ isa = XCBuildConfiguration;
460
+ buildSettings = {
461
+ DEBUG_INFORMATION_FORMAT = dwarf;
462
+ INFOPLIST_FILE = TestTests/Info.plist;
463
+ IPHONEOS_DEPLOYMENT_TARGET = 9.0;
464
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
465
+ PRODUCT_BUNDLE_IDENTIFIER = com.squareup.TestTests;
466
+ PRODUCT_NAME = "$(TARGET_NAME)";
467
+ SWIFT_VERSION = 2.3;
468
+ };
469
+ name = Debug;
470
+ };
471
+ F67087211B8D09D7000466B2 /* Release */ = {
472
+ isa = XCBuildConfiguration;
473
+ buildSettings = {
474
+ INFOPLIST_FILE = TestTests/Info.plist;
475
+ IPHONEOS_DEPLOYMENT_TARGET = 9.0;
476
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
477
+ PRODUCT_BUNDLE_IDENTIFIER = com.squareup.TestTests;
478
+ PRODUCT_NAME = "$(TARGET_NAME)";
479
+ SWIFT_VERSION = 2.3;
480
+ };
481
+ name = Release;
482
+ };
483
+ /* End XCBuildConfiguration section */
484
+
485
+ /* Begin XCConfigurationList section */
486
+ F60C68B41B8D038300CC8521 /* Build configuration list for PBXProject "toolc" */ = {
487
+ isa = XCConfigurationList;
488
+ buildConfigurations = (
489
+ F60C68CE1B8D038300CC8521 /* Debug */,
490
+ F60C68CF1B8D038300CC8521 /* Release */,
491
+ );
492
+ defaultConfigurationIsVisible = 0;
493
+ defaultConfigurationName = Release;
494
+ };
495
+ F60C68D01B8D038300CC8521 /* Build configuration list for PBXNativeTarget "TestDumper" */ = {
496
+ isa = XCConfigurationList;
497
+ buildConfigurations = (
498
+ F60C68D11B8D038300CC8521 /* Debug */,
499
+ F60C68D21B8D038300CC8521 /* Release */,
500
+ );
501
+ defaultConfigurationIsVisible = 0;
502
+ defaultConfigurationName = Release;
503
+ };
504
+ F60C68D31B8D038300CC8521 /* Build configuration list for PBXNativeTarget "TestDumperTests" */ = {
505
+ isa = XCConfigurationList;
506
+ buildConfigurations = (
507
+ F60C68D41B8D038300CC8521 /* Debug */,
508
+ F60C68D51B8D038300CC8521 /* Release */,
509
+ );
510
+ defaultConfigurationIsVisible = 0;
511
+ defaultConfigurationName = Release;
512
+ };
513
+ F670871F1B8D09D7000466B2 /* Build configuration list for PBXNativeTarget "TestTests" */ = {
514
+ isa = XCConfigurationList;
515
+ buildConfigurations = (
516
+ F67087201B8D09D7000466B2 /* Debug */,
517
+ F67087211B8D09D7000466B2 /* Release */,
518
+ );
519
+ defaultConfigurationIsVisible = 0;
520
+ defaultConfigurationName = Release;
521
+ };
522
+ /* End XCConfigurationList section */
523
+ };
524
+ rootObject = F60C68B11B8D038300CC8521 /* Project object */;
525
+ }