xcbootstrap 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. checksums.yaml +7 -0
  2. data/bin/xcbootstrap +8 -0
  3. data/lib/xcbootstrap/bootstrap.rb +65 -0
  4. data/lib/xcbootstrap/cli.rb +17 -0
  5. data/lib/xcbootstrap/next_steps.txt +32 -0
  6. data/lib/xcbootstrap/template.rb +40 -0
  7. data/lib/xcbootstrap/version.rb +3 -0
  8. data/lib/xcbootstrap.rb +3 -0
  9. data/spec/acceptance/xcbootstrap_spec.rb +57 -0
  10. data/spec/spec_helper.rb +5 -0
  11. data/spec/unit/bootstrap_spec.rb +100 -0
  12. data/spec/unit/cli_spec.rb +33 -0
  13. data/spec/unit/template_spec.rb +86 -0
  14. data/templates/Sample/Sample/AppDelegate.h +15 -0
  15. data/templates/Sample/Sample/AppDelegate.m +49 -0
  16. data/templates/Sample/Sample/Default-568h@2x.png +0 -0
  17. data/templates/Sample/Sample/Default.png +0 -0
  18. data/templates/Sample/Sample/Default@2x.png +0 -0
  19. data/templates/Sample/Sample/Sample-Info.plist +45 -0
  20. data/templates/Sample/Sample/Sample-Prefix.pch +14 -0
  21. data/templates/Sample/Sample/main.m +18 -0
  22. data/templates/Sample/Sample.xcodeproj/project.pbxproj +423 -0
  23. data/templates/Sample/Sample.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  24. data/templates/Sample/Sample.xcodeproj/xcshareddata/xcschemes/Sample.xcscheme +96 -0
  25. data/templates/Sample/SampleTests/SampleTests-Info.plist +22 -0
  26. data/templates/Sample/SampleTests/SampleTests.m +22 -0
  27. data/templates/Sample/gitignore +18 -0
  28. data/templates/Sample/manifest.yml +16 -0
  29. data/templates/simple/Gemfile +7 -0
  30. data/templates/simple/Podfile +15 -0
  31. data/templates/simple/Rakefile +45 -0
  32. data/templates/simple/app/configuration/analyzer.xcconfig +21 -0
  33. data/templates/simple/app/configuration/app.xcconfig +13 -0
  34. data/templates/simple/app/configuration/architectures.xcconfig +5 -0
  35. data/templates/simple/app/configuration/compiler.xcconfig +59 -0
  36. data/templates/simple/app/configuration/debug-code-sign.xcconfig +3 -0
  37. data/templates/simple/app/configuration/debug.xcconfig +22 -0
  38. data/templates/simple/app/configuration/release-code-sign.xcconfig +3 -0
  39. data/templates/simple/app/configuration/release.xcconfig +18 -0
  40. data/templates/simple/app/configuration/shared.xcconfig +12 -0
  41. data/templates/simple/app/configuration/unit-tests.xcconfig +13 -0
  42. data/templates/simple/app/resources/AppInfo.plist +45 -0
  43. data/templates/simple/app/resources/Default-568h@2x.png +0 -0
  44. data/templates/simple/app/resources/Default.png +0 -0
  45. data/templates/simple/app/resources/Default@2x.png +0 -0
  46. data/templates/simple/app/resources/UnitTestsInfo.plist +22 -0
  47. data/templates/simple/app/simple.xcodeproj/project.pbxproj +439 -0
  48. data/templates/simple/app/simple.xcodeproj/xcshareddata/xcschemes/simple.xcscheme +138 -0
  49. data/templates/simple/app/src/AppDelegate.h +7 -0
  50. data/templates/simple/app/src/AppDelegate.m +46 -0
  51. data/templates/simple/app/src/AppPrefix.pch +10 -0
  52. data/templates/simple/app/src/main.m +9 -0
  53. data/templates/simple/app/test/ExampleSpec.m +34 -0
  54. data/templates/simple/app/test/UnitTestsPrefix.pch +11 -0
  55. data/templates/simple/gitignore +20 -0
  56. data/templates/simple/manifest.yml +31 -0
  57. data/templates/simple/simple.xcworkspace/contents.xcworkspacedata +10 -0
  58. data/templates/static-lib/Gemfile +4 -0
  59. data/templates/static-lib/Podfile +14 -0
  60. data/templates/static-lib/Rakefile +29 -0
  61. data/templates/static-lib/gitignore +20 -0
  62. data/templates/static-lib/lib/configuration/analyzer.xcconfig +21 -0
  63. data/templates/static-lib/lib/configuration/architectures.xcconfig +5 -0
  64. data/templates/static-lib/lib/configuration/compiler.xcconfig +59 -0
  65. data/templates/static-lib/lib/configuration/debug-code-sign.xcconfig +3 -0
  66. data/templates/static-lib/lib/configuration/debug.xcconfig +19 -0
  67. data/templates/static-lib/lib/configuration/lib.xcconfig +10 -0
  68. data/templates/static-lib/lib/configuration/release-code-sign.xcconfig +3 -0
  69. data/templates/static-lib/lib/configuration/release.xcconfig +18 -0
  70. data/templates/static-lib/lib/configuration/shared.xcconfig +11 -0
  71. data/templates/static-lib/lib/configuration/test-loader.xcconfig +11 -0
  72. data/templates/static-lib/lib/configuration/unit-tests.xcconfig +13 -0
  73. data/templates/static-lib/lib/resources/Default-568h@2x.png +0 -0
  74. data/templates/static-lib/lib/resources/Default.png +0 -0
  75. data/templates/static-lib/lib/resources/Default@2x.png +0 -0
  76. data/templates/static-lib/lib/resources/TestLoaderAppInfo.plist +45 -0
  77. data/templates/static-lib/lib/resources/UnitTestsInfo.plist +22 -0
  78. data/templates/static-lib/lib/src/MyFirstLibObject.h +7 -0
  79. data/templates/static-lib/lib/src/MyFirstLibObject.m +15 -0
  80. data/templates/static-lib/lib/src/StaticLibPrefix.pch +10 -0
  81. data/templates/static-lib/lib/static-lib.xcodeproj/project.pbxproj +546 -0
  82. data/templates/static-lib/lib/static-lib.xcodeproj/xcshareddata/xcschemes/static-lib.xcscheme +97 -0
  83. data/templates/static-lib/lib/test/ExampleSpec.m +34 -0
  84. data/templates/static-lib/lib/test/TestLoaderAppDelegate.h +7 -0
  85. data/templates/static-lib/lib/test/TestLoaderAppDelegate.m +13 -0
  86. data/templates/static-lib/lib/test/TestLoaderAppPrefix.pch +10 -0
  87. data/templates/static-lib/lib/test/UnitTestsPrefix.pch +11 -0
  88. data/templates/static-lib/lib/test/main.m +9 -0
  89. data/templates/static-lib/manifest.yml +36 -0
  90. data/templates/static-lib/static-lib.podspec +29 -0
  91. data/templates/static-lib/static-lib.xcworkspace/contents.xcworkspacedata +10 -0
  92. metadata +209 -0
@@ -0,0 +1,423 @@
1
+ // !$*UTF8*$!
2
+ {
3
+ archiveVersion = 1;
4
+ classes = {
5
+ };
6
+ objectVersion = 46;
7
+ objects = {
8
+
9
+ /* Begin PBXBuildFile section */
10
+ C925671317688EB300CC8929 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C925671217688EB300CC8929 /* UIKit.framework */; };
11
+ C925671517688EB300CC8929 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C925671417688EB300CC8929 /* Foundation.framework */; };
12
+ C925671717688EB300CC8929 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C925671617688EB300CC8929 /* CoreGraphics.framework */; };
13
+ C925671F17688EB300CC8929 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = C925671E17688EB300CC8929 /* main.m */; };
14
+ C925672317688EB300CC8929 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = C925672217688EB300CC8929 /* AppDelegate.m */; };
15
+ C925672517688EB300CC8929 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = C925672417688EB300CC8929 /* Default.png */; };
16
+ C925672717688EB300CC8929 /* Default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = C925672617688EB300CC8929 /* Default@2x.png */; };
17
+ C925672917688EB300CC8929 /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = C925672817688EB300CC8929 /* Default-568h@2x.png */; };
18
+ C925673117688EB300CC8929 /* SenTestingKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C925673017688EB300CC8929 /* SenTestingKit.framework */; };
19
+ C925673217688EB300CC8929 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C925671217688EB300CC8929 /* UIKit.framework */; };
20
+ C925673317688EB300CC8929 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C925671417688EB300CC8929 /* Foundation.framework */; };
21
+ C925673E17688EB300CC8929 /* SampleTests.m in Sources */ = {isa = PBXBuildFile; fileRef = C925673D17688EB300CC8929 /* SampleTests.m */; };
22
+ /* End PBXBuildFile section */
23
+
24
+ /* Begin PBXContainerItemProxy section */
25
+ C925673417688EB300CC8929 /* PBXContainerItemProxy */ = {
26
+ isa = PBXContainerItemProxy;
27
+ containerPortal = C925670717688EB300CC8929 /* Project object */;
28
+ proxyType = 1;
29
+ remoteGlobalIDString = C925670E17688EB300CC8929;
30
+ remoteInfo = Sample;
31
+ };
32
+ /* End PBXContainerItemProxy section */
33
+
34
+ /* Begin PBXFileReference section */
35
+ C925670F17688EB300CC8929 /* Sample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Sample.app; sourceTree = BUILT_PRODUCTS_DIR; };
36
+ C925671217688EB300CC8929 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
37
+ C925671417688EB300CC8929 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
38
+ C925671617688EB300CC8929 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
39
+ C925671A17688EB300CC8929 /* Sample-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Sample-Info.plist"; sourceTree = "<group>"; };
40
+ C925671E17688EB300CC8929 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
41
+ C925672017688EB300CC8929 /* Sample-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Sample-Prefix.pch"; sourceTree = "<group>"; };
42
+ C925672117688EB300CC8929 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
43
+ C925672217688EB300CC8929 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
44
+ C925672417688EB300CC8929 /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = "<group>"; };
45
+ C925672617688EB300CC8929 /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default@2x.png"; sourceTree = "<group>"; };
46
+ C925672817688EB300CC8929 /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = "<group>"; };
47
+ C925672F17688EB300CC8929 /* SampleTests.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SampleTests.octest; sourceTree = BUILT_PRODUCTS_DIR; };
48
+ C925673017688EB300CC8929 /* SenTestingKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SenTestingKit.framework; path = Library/Frameworks/SenTestingKit.framework; sourceTree = DEVELOPER_DIR; };
49
+ C925673817688EB300CC8929 /* SampleTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "SampleTests-Info.plist"; sourceTree = "<group>"; };
50
+ C925673D17688EB300CC8929 /* SampleTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SampleTests.m; sourceTree = "<group>"; };
51
+ /* End PBXFileReference section */
52
+
53
+ /* Begin PBXFrameworksBuildPhase section */
54
+ C925670C17688EB300CC8929 /* Frameworks */ = {
55
+ isa = PBXFrameworksBuildPhase;
56
+ buildActionMask = 2147483647;
57
+ files = (
58
+ C925671317688EB300CC8929 /* UIKit.framework in Frameworks */,
59
+ C925671517688EB300CC8929 /* Foundation.framework in Frameworks */,
60
+ C925671717688EB300CC8929 /* CoreGraphics.framework in Frameworks */,
61
+ );
62
+ runOnlyForDeploymentPostprocessing = 0;
63
+ };
64
+ C925672B17688EB300CC8929 /* Frameworks */ = {
65
+ isa = PBXFrameworksBuildPhase;
66
+ buildActionMask = 2147483647;
67
+ files = (
68
+ C925673117688EB300CC8929 /* SenTestingKit.framework in Frameworks */,
69
+ C925673217688EB300CC8929 /* UIKit.framework in Frameworks */,
70
+ C925673317688EB300CC8929 /* Foundation.framework in Frameworks */,
71
+ );
72
+ runOnlyForDeploymentPostprocessing = 0;
73
+ };
74
+ /* End PBXFrameworksBuildPhase section */
75
+
76
+ /* Begin PBXGroup section */
77
+ C925670617688EB300CC8929 = {
78
+ isa = PBXGroup;
79
+ children = (
80
+ C925671817688EB300CC8929 /* Sample */,
81
+ C925673617688EB300CC8929 /* SampleTests */,
82
+ C925671117688EB300CC8929 /* Frameworks */,
83
+ C925671017688EB300CC8929 /* Products */,
84
+ );
85
+ sourceTree = "<group>";
86
+ };
87
+ C925671017688EB300CC8929 /* Products */ = {
88
+ isa = PBXGroup;
89
+ children = (
90
+ C925670F17688EB300CC8929 /* Sample.app */,
91
+ C925672F17688EB300CC8929 /* SampleTests.octest */,
92
+ );
93
+ name = Products;
94
+ sourceTree = "<group>";
95
+ };
96
+ C925671117688EB300CC8929 /* Frameworks */ = {
97
+ isa = PBXGroup;
98
+ children = (
99
+ C925671217688EB300CC8929 /* UIKit.framework */,
100
+ C925671417688EB300CC8929 /* Foundation.framework */,
101
+ C925671617688EB300CC8929 /* CoreGraphics.framework */,
102
+ C925673017688EB300CC8929 /* SenTestingKit.framework */,
103
+ );
104
+ name = Frameworks;
105
+ sourceTree = "<group>";
106
+ };
107
+ C925671817688EB300CC8929 /* Sample */ = {
108
+ isa = PBXGroup;
109
+ children = (
110
+ C925672117688EB300CC8929 /* AppDelegate.h */,
111
+ C925672217688EB300CC8929 /* AppDelegate.m */,
112
+ C925671917688EB300CC8929 /* Supporting Files */,
113
+ );
114
+ path = Sample;
115
+ sourceTree = "<group>";
116
+ };
117
+ C925671917688EB300CC8929 /* Supporting Files */ = {
118
+ isa = PBXGroup;
119
+ children = (
120
+ C925671A17688EB300CC8929 /* Sample-Info.plist */,
121
+ C925671E17688EB300CC8929 /* main.m */,
122
+ C925672017688EB300CC8929 /* Sample-Prefix.pch */,
123
+ C925672417688EB300CC8929 /* Default.png */,
124
+ C925672617688EB300CC8929 /* Default@2x.png */,
125
+ C925672817688EB300CC8929 /* Default-568h@2x.png */,
126
+ );
127
+ name = "Supporting Files";
128
+ sourceTree = "<group>";
129
+ };
130
+ C925673617688EB300CC8929 /* SampleTests */ = {
131
+ isa = PBXGroup;
132
+ children = (
133
+ C925673D17688EB300CC8929 /* SampleTests.m */,
134
+ C925673717688EB300CC8929 /* Supporting Files */,
135
+ );
136
+ path = SampleTests;
137
+ sourceTree = "<group>";
138
+ };
139
+ C925673717688EB300CC8929 /* Supporting Files */ = {
140
+ isa = PBXGroup;
141
+ children = (
142
+ C925673817688EB300CC8929 /* SampleTests-Info.plist */,
143
+ );
144
+ name = "Supporting Files";
145
+ sourceTree = "<group>";
146
+ };
147
+ /* End PBXGroup section */
148
+
149
+ /* Begin PBXNativeTarget section */
150
+ C925670E17688EB300CC8929 /* Sample */ = {
151
+ isa = PBXNativeTarget;
152
+ buildConfigurationList = C925674117688EB300CC8929 /* Build configuration list for PBXNativeTarget "Sample" */;
153
+ buildPhases = (
154
+ C925670B17688EB300CC8929 /* Sources */,
155
+ C925670C17688EB300CC8929 /* Frameworks */,
156
+ C925670D17688EB300CC8929 /* Resources */,
157
+ );
158
+ buildRules = (
159
+ );
160
+ dependencies = (
161
+ );
162
+ name = Sample;
163
+ productName = Sample;
164
+ productReference = C925670F17688EB300CC8929 /* Sample.app */;
165
+ productType = "com.apple.product-type.application";
166
+ };
167
+ C925672E17688EB300CC8929 /* SampleTests */ = {
168
+ isa = PBXNativeTarget;
169
+ buildConfigurationList = C925674417688EB300CC8929 /* Build configuration list for PBXNativeTarget "SampleTests" */;
170
+ buildPhases = (
171
+ C925672A17688EB300CC8929 /* Sources */,
172
+ C925672B17688EB300CC8929 /* Frameworks */,
173
+ C925672C17688EB300CC8929 /* Resources */,
174
+ C925672D17688EB300CC8929 /* ShellScript */,
175
+ );
176
+ buildRules = (
177
+ );
178
+ dependencies = (
179
+ C925673517688EB300CC8929 /* PBXTargetDependency */,
180
+ );
181
+ name = SampleTests;
182
+ productName = SampleTests;
183
+ productReference = C925672F17688EB300CC8929 /* SampleTests.octest */;
184
+ productType = "com.apple.product-type.bundle";
185
+ };
186
+ /* End PBXNativeTarget section */
187
+
188
+ /* Begin PBXProject section */
189
+ C925670717688EB300CC8929 /* Project object */ = {
190
+ isa = PBXProject;
191
+ attributes = {
192
+ LastUpgradeCheck = 0460;
193
+ ORGANIZATIONNAME = yourcompanyname;
194
+ };
195
+ buildConfigurationList = C925670A17688EB300CC8929 /* Build configuration list for PBXProject "Sample" */;
196
+ compatibilityVersion = "Xcode 3.2";
197
+ developmentRegion = English;
198
+ hasScannedForEncodings = 0;
199
+ knownRegions = (
200
+ en,
201
+ );
202
+ mainGroup = C925670617688EB300CC8929;
203
+ productRefGroup = C925671017688EB300CC8929 /* Products */;
204
+ projectDirPath = "";
205
+ projectRoot = "";
206
+ targets = (
207
+ C925670E17688EB300CC8929 /* Sample */,
208
+ C925672E17688EB300CC8929 /* SampleTests */,
209
+ );
210
+ };
211
+ /* End PBXProject section */
212
+
213
+ /* Begin PBXResourcesBuildPhase section */
214
+ C925670D17688EB300CC8929 /* Resources */ = {
215
+ isa = PBXResourcesBuildPhase;
216
+ buildActionMask = 2147483647;
217
+ files = (
218
+ C925672517688EB300CC8929 /* Default.png in Resources */,
219
+ C925672717688EB300CC8929 /* Default@2x.png in Resources */,
220
+ C925672917688EB300CC8929 /* Default-568h@2x.png in Resources */,
221
+ );
222
+ runOnlyForDeploymentPostprocessing = 0;
223
+ };
224
+ C925672C17688EB300CC8929 /* Resources */ = {
225
+ isa = PBXResourcesBuildPhase;
226
+ buildActionMask = 2147483647;
227
+ files = (
228
+ );
229
+ runOnlyForDeploymentPostprocessing = 0;
230
+ };
231
+ /* End PBXResourcesBuildPhase section */
232
+
233
+ /* Begin PBXShellScriptBuildPhase section */
234
+ C925672D17688EB300CC8929 /* ShellScript */ = {
235
+ isa = PBXShellScriptBuildPhase;
236
+ buildActionMask = 2147483647;
237
+ files = (
238
+ );
239
+ inputPaths = (
240
+ );
241
+ outputPaths = (
242
+ );
243
+ runOnlyForDeploymentPostprocessing = 0;
244
+ shellPath = /bin/sh;
245
+ shellScript = "# Run the unit tests in this test bundle.\n\"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests\"\n";
246
+ };
247
+ /* End PBXShellScriptBuildPhase section */
248
+
249
+ /* Begin PBXSourcesBuildPhase section */
250
+ C925670B17688EB300CC8929 /* Sources */ = {
251
+ isa = PBXSourcesBuildPhase;
252
+ buildActionMask = 2147483647;
253
+ files = (
254
+ C925671F17688EB300CC8929 /* main.m in Sources */,
255
+ C925672317688EB300CC8929 /* AppDelegate.m in Sources */,
256
+ );
257
+ runOnlyForDeploymentPostprocessing = 0;
258
+ };
259
+ C925672A17688EB300CC8929 /* Sources */ = {
260
+ isa = PBXSourcesBuildPhase;
261
+ buildActionMask = 2147483647;
262
+ files = (
263
+ C925673E17688EB300CC8929 /* SampleTests.m in Sources */,
264
+ );
265
+ runOnlyForDeploymentPostprocessing = 0;
266
+ };
267
+ /* End PBXSourcesBuildPhase section */
268
+
269
+ /* Begin PBXTargetDependency section */
270
+ C925673517688EB300CC8929 /* PBXTargetDependency */ = {
271
+ isa = PBXTargetDependency;
272
+ target = C925670E17688EB300CC8929 /* Sample */;
273
+ targetProxy = C925673417688EB300CC8929 /* PBXContainerItemProxy */;
274
+ };
275
+ /* End PBXTargetDependency section */
276
+
277
+ /* Begin XCBuildConfiguration section */
278
+ C925673F17688EB300CC8929 /* Debug */ = {
279
+ isa = XCBuildConfiguration;
280
+ buildSettings = {
281
+ ALWAYS_SEARCH_USER_PATHS = NO;
282
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
283
+ CLANG_CXX_LIBRARY = "libc++";
284
+ CLANG_ENABLE_OBJC_ARC = YES;
285
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
286
+ CLANG_WARN_EMPTY_BODY = YES;
287
+ CLANG_WARN_ENUM_CONVERSION = YES;
288
+ CLANG_WARN_INT_CONVERSION = YES;
289
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
290
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
291
+ COPY_PHASE_STRIP = NO;
292
+ GCC_C_LANGUAGE_STANDARD = gnu99;
293
+ GCC_DYNAMIC_NO_PIC = NO;
294
+ GCC_OPTIMIZATION_LEVEL = 0;
295
+ GCC_PREPROCESSOR_DEFINITIONS = (
296
+ "DEBUG=1",
297
+ "$(inherited)",
298
+ );
299
+ GCC_SYMBOLS_PRIVATE_EXTERN = NO;
300
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
301
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
302
+ GCC_WARN_UNUSED_VARIABLE = YES;
303
+ IPHONEOS_DEPLOYMENT_TARGET = 6.1;
304
+ ONLY_ACTIVE_ARCH = YES;
305
+ SDKROOT = iphoneos;
306
+ TARGETED_DEVICE_FAMILY = "1,2";
307
+ };
308
+ name = Debug;
309
+ };
310
+ C925674017688EB300CC8929 /* Release */ = {
311
+ isa = XCBuildConfiguration;
312
+ buildSettings = {
313
+ ALWAYS_SEARCH_USER_PATHS = NO;
314
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
315
+ CLANG_CXX_LIBRARY = "libc++";
316
+ CLANG_ENABLE_OBJC_ARC = YES;
317
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
318
+ CLANG_WARN_EMPTY_BODY = YES;
319
+ CLANG_WARN_ENUM_CONVERSION = YES;
320
+ CLANG_WARN_INT_CONVERSION = YES;
321
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
322
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
323
+ COPY_PHASE_STRIP = YES;
324
+ GCC_C_LANGUAGE_STANDARD = gnu99;
325
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
326
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
327
+ GCC_WARN_UNUSED_VARIABLE = YES;
328
+ IPHONEOS_DEPLOYMENT_TARGET = 6.1;
329
+ OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
330
+ SDKROOT = iphoneos;
331
+ TARGETED_DEVICE_FAMILY = "1,2";
332
+ VALIDATE_PRODUCT = YES;
333
+ };
334
+ name = Release;
335
+ };
336
+ C925674217688EB300CC8929 /* Debug */ = {
337
+ isa = XCBuildConfiguration;
338
+ buildSettings = {
339
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
340
+ GCC_PREFIX_HEADER = "Sample/Sample-Prefix.pch";
341
+ INFOPLIST_FILE = "Sample/Sample-Info.plist";
342
+ PRODUCT_NAME = "$(TARGET_NAME)";
343
+ WRAPPER_EXTENSION = app;
344
+ };
345
+ name = Debug;
346
+ };
347
+ C925674317688EB300CC8929 /* Release */ = {
348
+ isa = XCBuildConfiguration;
349
+ buildSettings = {
350
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
351
+ GCC_PREFIX_HEADER = "Sample/Sample-Prefix.pch";
352
+ INFOPLIST_FILE = "Sample/Sample-Info.plist";
353
+ PRODUCT_NAME = "$(TARGET_NAME)";
354
+ WRAPPER_EXTENSION = app;
355
+ };
356
+ name = Release;
357
+ };
358
+ C925674517688EB300CC8929 /* Debug */ = {
359
+ isa = XCBuildConfiguration;
360
+ buildSettings = {
361
+ BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/Sample.app/Sample";
362
+ FRAMEWORK_SEARCH_PATHS = (
363
+ "\"$(SDKROOT)/Developer/Library/Frameworks\"",
364
+ "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"",
365
+ );
366
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
367
+ GCC_PREFIX_HEADER = "Sample/Sample-Prefix.pch";
368
+ INFOPLIST_FILE = "SampleTests/SampleTests-Info.plist";
369
+ PRODUCT_NAME = "$(TARGET_NAME)";
370
+ TEST_HOST = "$(BUNDLE_LOADER)";
371
+ WRAPPER_EXTENSION = octest;
372
+ };
373
+ name = Debug;
374
+ };
375
+ C925674617688EB300CC8929 /* Release */ = {
376
+ isa = XCBuildConfiguration;
377
+ buildSettings = {
378
+ BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/Sample.app/Sample";
379
+ FRAMEWORK_SEARCH_PATHS = (
380
+ "\"$(SDKROOT)/Developer/Library/Frameworks\"",
381
+ "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"",
382
+ );
383
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
384
+ GCC_PREFIX_HEADER = "Sample/Sample-Prefix.pch";
385
+ INFOPLIST_FILE = "SampleTests/SampleTests-Info.plist";
386
+ PRODUCT_NAME = "$(TARGET_NAME)";
387
+ TEST_HOST = "$(BUNDLE_LOADER)";
388
+ WRAPPER_EXTENSION = octest;
389
+ };
390
+ name = Release;
391
+ };
392
+ /* End XCBuildConfiguration section */
393
+
394
+ /* Begin XCConfigurationList section */
395
+ C925670A17688EB300CC8929 /* Build configuration list for PBXProject "Sample" */ = {
396
+ isa = XCConfigurationList;
397
+ buildConfigurations = (
398
+ C925673F17688EB300CC8929 /* Debug */,
399
+ C925674017688EB300CC8929 /* Release */,
400
+ );
401
+ defaultConfigurationIsVisible = 0;
402
+ defaultConfigurationName = Release;
403
+ };
404
+ C925674117688EB300CC8929 /* Build configuration list for PBXNativeTarget "Sample" */ = {
405
+ isa = XCConfigurationList;
406
+ buildConfigurations = (
407
+ C925674217688EB300CC8929 /* Debug */,
408
+ C925674317688EB300CC8929 /* Release */,
409
+ );
410
+ defaultConfigurationIsVisible = 0;
411
+ };
412
+ C925674417688EB300CC8929 /* Build configuration list for PBXNativeTarget "SampleTests" */ = {
413
+ isa = XCConfigurationList;
414
+ buildConfigurations = (
415
+ C925674517688EB300CC8929 /* Debug */,
416
+ C925674617688EB300CC8929 /* Release */,
417
+ );
418
+ defaultConfigurationIsVisible = 0;
419
+ };
420
+ /* End XCConfigurationList section */
421
+ };
422
+ rootObject = C925670717688EB300CC8929 /* Project object */;
423
+ }
@@ -0,0 +1,7 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Workspace
3
+ version = "1.0">
4
+ <FileRef
5
+ location = "self:Sample.xcodeproj">
6
+ </FileRef>
7
+ </Workspace>
@@ -0,0 +1,96 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Scheme
3
+ LastUpgradeVersion = "0460"
4
+ version = "1.3">
5
+ <BuildAction
6
+ parallelizeBuildables = "YES"
7
+ buildImplicitDependencies = "YES">
8
+ <BuildActionEntries>
9
+ <BuildActionEntry
10
+ buildForTesting = "YES"
11
+ buildForRunning = "YES"
12
+ buildForProfiling = "YES"
13
+ buildForArchiving = "YES"
14
+ buildForAnalyzing = "YES">
15
+ <BuildableReference
16
+ BuildableIdentifier = "primary"
17
+ BlueprintIdentifier = "C925670E17688EB300CC8929"
18
+ BuildableName = "Sample.app"
19
+ BlueprintName = "Sample"
20
+ ReferencedContainer = "container:Sample.xcodeproj">
21
+ </BuildableReference>
22
+ </BuildActionEntry>
23
+ </BuildActionEntries>
24
+ </BuildAction>
25
+ <TestAction
26
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
27
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
28
+ shouldUseLaunchSchemeArgsEnv = "YES"
29
+ buildConfiguration = "Debug">
30
+ <Testables>
31
+ <TestableReference
32
+ skipped = "NO">
33
+ <BuildableReference
34
+ BuildableIdentifier = "primary"
35
+ BlueprintIdentifier = "C925672E17688EB300CC8929"
36
+ BuildableName = "SampleTests.octest"
37
+ BlueprintName = "SampleTests"
38
+ ReferencedContainer = "container:Sample.xcodeproj">
39
+ </BuildableReference>
40
+ </TestableReference>
41
+ </Testables>
42
+ <MacroExpansion>
43
+ <BuildableReference
44
+ BuildableIdentifier = "primary"
45
+ BlueprintIdentifier = "C925670E17688EB300CC8929"
46
+ BuildableName = "Sample.app"
47
+ BlueprintName = "Sample"
48
+ ReferencedContainer = "container:Sample.xcodeproj">
49
+ </BuildableReference>
50
+ </MacroExpansion>
51
+ </TestAction>
52
+ <LaunchAction
53
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
54
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
55
+ launchStyle = "0"
56
+ useCustomWorkingDirectory = "NO"
57
+ buildConfiguration = "Debug"
58
+ ignoresPersistentStateOnLaunch = "NO"
59
+ debugDocumentVersioning = "YES"
60
+ allowLocationSimulation = "YES">
61
+ <BuildableProductRunnable>
62
+ <BuildableReference
63
+ BuildableIdentifier = "primary"
64
+ BlueprintIdentifier = "C925670E17688EB300CC8929"
65
+ BuildableName = "Sample.app"
66
+ BlueprintName = "Sample"
67
+ ReferencedContainer = "container:Sample.xcodeproj">
68
+ </BuildableReference>
69
+ </BuildableProductRunnable>
70
+ <AdditionalOptions>
71
+ </AdditionalOptions>
72
+ </LaunchAction>
73
+ <ProfileAction
74
+ shouldUseLaunchSchemeArgsEnv = "YES"
75
+ savedToolIdentifier = ""
76
+ useCustomWorkingDirectory = "NO"
77
+ buildConfiguration = "Release"
78
+ debugDocumentVersioning = "YES">
79
+ <BuildableProductRunnable>
80
+ <BuildableReference
81
+ BuildableIdentifier = "primary"
82
+ BlueprintIdentifier = "C925670E17688EB300CC8929"
83
+ BuildableName = "Sample.app"
84
+ BlueprintName = "Sample"
85
+ ReferencedContainer = "container:Sample.xcodeproj">
86
+ </BuildableReference>
87
+ </BuildableProductRunnable>
88
+ </ProfileAction>
89
+ <AnalyzeAction
90
+ buildConfiguration = "Debug">
91
+ </AnalyzeAction>
92
+ <ArchiveAction
93
+ buildConfiguration = "Release"
94
+ revealArchiveInOrganizer = "YES">
95
+ </ArchiveAction>
96
+ </Scheme>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>CFBundleDevelopmentRegion</key>
6
+ <string>en</string>
7
+ <key>CFBundleExecutable</key>
8
+ <string>${EXECUTABLE_NAME}</string>
9
+ <key>CFBundleIdentifier</key>
10
+ <string>com.yourcompanyname.${PRODUCT_NAME:rfc1034identifier}</string>
11
+ <key>CFBundleInfoDictionaryVersion</key>
12
+ <string>6.0</string>
13
+ <key>CFBundlePackageType</key>
14
+ <string>BNDL</string>
15
+ <key>CFBundleShortVersionString</key>
16
+ <string>1.0</string>
17
+ <key>CFBundleSignature</key>
18
+ <string>????</string>
19
+ <key>CFBundleVersion</key>
20
+ <string>1</string>
21
+ </dict>
22
+ </plist>
@@ -0,0 +1,22 @@
1
+ //
2
+ // SampleTests.m
3
+ // SampleTests
4
+ //
5
+ // Created by Stewart Gleadow on 12/06/13.
6
+ // Copyright (c) 2013 yourcompanyname. All rights reserved.
7
+ //
8
+
9
+ #import <SenTestingKit/SenTestingKit.h>
10
+
11
+ @interface SampleTests : SenTestCase
12
+
13
+ @end
14
+
15
+ @implementation SampleTests
16
+
17
+ - (void)testExample
18
+ {
19
+ STAssertTrue(YES, @"Sample passing unit test");
20
+ }
21
+
22
+ @end
@@ -0,0 +1,18 @@
1
+ .DS_Store
2
+ build/
3
+ *.pbxuser
4
+ !default.pbxuser
5
+ *.mode1v3
6
+ !default.mode1v3
7
+ *.mode2v3
8
+ !default.mode2v3
9
+ *.perspectivev3
10
+ !default.perspectivev3
11
+ *.xcworkspace
12
+ !default.xcworkspace
13
+ xcuserdata
14
+ profile
15
+ *.moved-aside
16
+ DerivedData
17
+ .idea/
18
+ frankified_build
@@ -0,0 +1,16 @@
1
+ ---
2
+ files:
3
+ - from: gitignore
4
+ to: .gitignore
5
+ - from: Sample.xcodeproj/project.pbxproj
6
+ - from: Sample.xcodeproj/xcshareddata/xcschemes/Sample.xcscheme
7
+ - from: Sample/AppDelegate.h
8
+ - from: Sample/AppDelegate.m
9
+ - from: Sample/Default-568h@2x.png
10
+ - from: Sample/Default.png
11
+ - from: Sample/Default@2x.png
12
+ - from: Sample/Sample-Info.plist
13
+ - from: Sample/Sample-Prefix.pch
14
+ - from: Sample/main.m
15
+ - from: SampleTests/SampleTests-Info.plist
16
+ - from: SampleTests/SampleTests.m
@@ -0,0 +1,7 @@
1
+ source "https://rubygems.org"
2
+
3
+ gem "cocoapods", "~> 0.22.3"
4
+ gem "sinatra"
5
+ gem "frank-cucumber", "~> 1.1.12"
6
+ gem "rake", "~> 10.0.4"
7
+
@@ -0,0 +1,15 @@
1
+ platform :ios, '6.0'
2
+
3
+ workspace 'simple'
4
+ xcodeproj 'app/simple.xcodeproj'
5
+ link_with 'simple'
6
+
7
+ pod 'ObjectiveSugar'
8
+ pod "static-lib", :path => "../static-lib"
9
+
10
+ target :test, :exclusive => true do
11
+ link_with 'unit-tests'
12
+
13
+ pod 'Kiwi'
14
+ end
15
+
@@ -0,0 +1,45 @@
1
+ require 'bundler'
2
+ Bundler.setup
3
+
4
+ # TODO: SG 10/4/13
5
+ # These lines seem to break trying to include frank-cucumber (maybe because it's not a cucumber run?)
6
+ # Would really like to fix this, not sure how.
7
+ # Bundler.require
8
+
9
+ require 'rake'
10
+ require 'cucumber'
11
+ require 'cucumber/rake/task'
12
+
13
+ desc "Default: build, test, frank"
14
+ task :default => [:build, :test, "frank:build", "frank:run"]
15
+
16
+ desc "Bootstrap dependencies for the app"
17
+ task :bootstrap do
18
+ system("which -s brew") || fail("Cannot find 'brew' command. Have you installed homebrew?")
19
+ system("brew update > /dev/null") || fail("Error: updating homebrew failed")
20
+ system("which -s xctool") || system("brew install xctool") || fail("Error: installing xctool failed")
21
+ end
22
+
23
+ desc "Clean and build the app"
24
+ task :build do
25
+ system("xctool -workspace simple.xcworkspace -scheme simple -sdk iphoneos clean build") || fail("Error building app")
26
+ end
27
+
28
+ desc "Clean, build the app, run unit tests"
29
+ task :test do
30
+ system("xctool -workspace simple.xcworkspace -scheme simple -sdk iphonesimulator clean test") || fail("Error running unit tests")
31
+ end
32
+
33
+ desc "Configure Frank tests"
34
+ task "frank:setup" do
35
+ system("frank setup --project app/simple.xcodeproj --target simple") || fail("Error running frank setup")
36
+ end
37
+
38
+ desc "Build the frank target"
39
+ task "frank:build" do
40
+ system("frank build --workspace simple.xcworkspace --scheme simple") || fail("Error running frank build")
41
+ end
42
+
43
+ Cucumber::Rake::Task.new("frank:run") do |t|
44
+ t.cucumber_opts = "Frank/features --format pretty"
45
+ end