mayday 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +46 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +80 -0
  6. data/Rakefile +2 -0
  7. data/bin/mayday +33 -0
  8. data/lib/mayday/abstract_flag/error.rb +7 -0
  9. data/lib/mayday/abstract_flag/warning.rb +11 -0
  10. data/lib/mayday/abstract_flag.rb +90 -0
  11. data/lib/mayday/error.rb +7 -0
  12. data/lib/mayday/reader.rb +108 -0
  13. data/lib/mayday/script_generator.rb +74 -0
  14. data/lib/mayday/target_integrator.rb +69 -0
  15. data/lib/mayday/user_definitions.rb +42 -0
  16. data/lib/mayday/version.rb +3 -0
  17. data/lib/mayday/warning.rb +11 -0
  18. data/lib/mayday.rb +2 -0
  19. data/mayday.gemspec +30 -0
  20. data/spec/fixtures/Fixtures/Fixtures/AppDelegate.swift +46 -0
  21. data/spec/fixtures/Fixtures/Fixtures/Base.lproj/LaunchScreen.xib +41 -0
  22. data/spec/fixtures/Fixtures/Fixtures/Base.lproj/Main.storyboard +25 -0
  23. data/spec/fixtures/Fixtures/Fixtures/Excluded/ExcludedFile.h +13 -0
  24. data/spec/fixtures/Fixtures/Fixtures/Excluded/ExcludedFile.m +15 -0
  25. data/spec/fixtures/Fixtures/Fixtures/Images.xcassets/AppIcon.appiconset/Contents.json +38 -0
  26. data/spec/fixtures/Fixtures/Fixtures/Info.plist +40 -0
  27. data/spec/fixtures/Fixtures/Fixtures/Pods/SomePodObject.h +13 -0
  28. data/spec/fixtures/Fixtures/Fixtures/Pods/SomePodObject.m +16 -0
  29. data/spec/fixtures/Fixtures/Fixtures/SomeDir/Fixtures-Bridging-Header.h +4 -0
  30. data/spec/fixtures/Fixtures/Fixtures/SomeDir/LongFile.h +5 -0
  31. data/spec/fixtures/Fixtures/Fixtures/SomeDir/LongFile.m +547 -0
  32. data/spec/fixtures/Fixtures/Fixtures/SomeDir/SomeObject.h +15 -0
  33. data/spec/fixtures/Fixtures/Fixtures/SomeDir/SomeObject.m +18 -0
  34. data/spec/fixtures/Fixtures/Fixtures/ViewController.swift +26 -0
  35. data/spec/fixtures/Fixtures/Fixtures.xcodeproj/project.pbxproj +487 -0
  36. data/spec/fixtures/Fixtures/Fixtures.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  37. data/spec/fixtures/Fixtures/Fixtures.xcodeproj/xcuserdata/marklarsen.xcuserdatad/xcschemes/Fixtures.xcscheme +110 -0
  38. data/spec/fixtures/Fixtures/FixturesTests/FixturesTests.swift +36 -0
  39. data/spec/fixtures/Fixtures/FixturesTests/Info.plist +24 -0
  40. data/spec/fixtures/Maydayfile +22 -0
  41. data/spec/fixtures/Maydayfile_ruby_error +11 -0
  42. data/spec/mayday/user_definitions_spec.rb +177 -0
  43. data/spec/spec_helper.rb +16 -0
  44. metadata +223 -0
@@ -0,0 +1,487 @@
1
+ // !$*UTF8*$!
2
+ {
3
+ archiveVersion = 1;
4
+ classes = {
5
+ };
6
+ objectVersion = 46;
7
+ objects = {
8
+
9
+ /* Begin PBXBuildFile section */
10
+ 8C2A82F219F357A800EC9FC0 /* ExcludedFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8C2A82F119F357A800EC9FC0 /* ExcludedFile.m */; };
11
+ 8C2A82F619F3581F00EC9FC0 /* SomePodObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8C2A82F519F3581F00EC9FC0 /* SomePodObject.m */; };
12
+ 8C2A830419F3AC4900EC9FC0 /* LongFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 8C2A830319F3AC4900EC9FC0 /* LongFile.m */; };
13
+ 8C45AC0F19EF97EB00D0B22A /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C45AC0E19EF97EB00D0B22A /* AppDelegate.swift */; };
14
+ 8C45AC1119EF97EB00D0B22A /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C45AC1019EF97EB00D0B22A /* ViewController.swift */; };
15
+ 8C45AC1419EF97EB00D0B22A /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 8C45AC1219EF97EB00D0B22A /* Main.storyboard */; };
16
+ 8C45AC1619EF97EB00D0B22A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 8C45AC1519EF97EB00D0B22A /* Images.xcassets */; };
17
+ 8C45AC1919EF97EB00D0B22A /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8C45AC1719EF97EB00D0B22A /* LaunchScreen.xib */; };
18
+ 8C45AC2519EF97EB00D0B22A /* FixturesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C45AC2419EF97EB00D0B22A /* FixturesTests.swift */; };
19
+ 8C45AC3219EF98BE00D0B22A /* SomeObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 8C45AC3119EF98BE00D0B22A /* SomeObject.m */; };
20
+ /* End PBXBuildFile section */
21
+
22
+ /* Begin PBXContainerItemProxy section */
23
+ 8C45AC1F19EF97EB00D0B22A /* PBXContainerItemProxy */ = {
24
+ isa = PBXContainerItemProxy;
25
+ containerPortal = 8C45AC0119EF97EB00D0B22A /* Project object */;
26
+ proxyType = 1;
27
+ remoteGlobalIDString = 8C45AC0819EF97EB00D0B22A;
28
+ remoteInfo = Fixtures;
29
+ };
30
+ /* End PBXContainerItemProxy section */
31
+
32
+ /* Begin PBXFileReference section */
33
+ 8C2A82F019F357A800EC9FC0 /* ExcludedFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExcludedFile.h; sourceTree = "<group>"; };
34
+ 8C2A82F119F357A800EC9FC0 /* ExcludedFile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ExcludedFile.m; sourceTree = "<group>"; };
35
+ 8C2A82F419F3581F00EC9FC0 /* SomePodObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SomePodObject.h; sourceTree = "<group>"; };
36
+ 8C2A82F519F3581F00EC9FC0 /* SomePodObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SomePodObject.m; sourceTree = "<group>"; };
37
+ 8C2A830219F3AC4900EC9FC0 /* LongFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LongFile.h; sourceTree = "<group>"; };
38
+ 8C2A830319F3AC4900EC9FC0 /* LongFile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LongFile.m; sourceTree = "<group>"; };
39
+ 8C45AC0919EF97EB00D0B22A /* Fixtures.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Fixtures.app; sourceTree = BUILT_PRODUCTS_DIR; };
40
+ 8C45AC0D19EF97EB00D0B22A /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
41
+ 8C45AC0E19EF97EB00D0B22A /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
42
+ 8C45AC1019EF97EB00D0B22A /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
43
+ 8C45AC1319EF97EB00D0B22A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
44
+ 8C45AC1519EF97EB00D0B22A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; };
45
+ 8C45AC1819EF97EB00D0B22A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = "<group>"; };
46
+ 8C45AC1E19EF97EB00D0B22A /* FixturesTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = FixturesTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
47
+ 8C45AC2319EF97EB00D0B22A /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
48
+ 8C45AC2419EF97EB00D0B22A /* FixturesTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FixturesTests.swift; sourceTree = "<group>"; };
49
+ 8C45AC2F19EF98BE00D0B22A /* Fixtures-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Fixtures-Bridging-Header.h"; sourceTree = "<group>"; };
50
+ 8C45AC3019EF98BE00D0B22A /* SomeObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SomeObject.h; sourceTree = "<group>"; };
51
+ 8C45AC3119EF98BE00D0B22A /* SomeObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SomeObject.m; sourceTree = "<group>"; };
52
+ /* End PBXFileReference section */
53
+
54
+ /* Begin PBXFrameworksBuildPhase section */
55
+ 8C45AC0619EF97EB00D0B22A /* Frameworks */ = {
56
+ isa = PBXFrameworksBuildPhase;
57
+ buildActionMask = 2147483647;
58
+ files = (
59
+ );
60
+ runOnlyForDeploymentPostprocessing = 0;
61
+ };
62
+ 8C45AC1B19EF97EB00D0B22A /* Frameworks */ = {
63
+ isa = PBXFrameworksBuildPhase;
64
+ buildActionMask = 2147483647;
65
+ files = (
66
+ );
67
+ runOnlyForDeploymentPostprocessing = 0;
68
+ };
69
+ /* End PBXFrameworksBuildPhase section */
70
+
71
+ /* Begin PBXGroup section */
72
+ 8C2A82EF19F3579600EC9FC0 /* Excluded */ = {
73
+ isa = PBXGroup;
74
+ children = (
75
+ 8C2A82F019F357A800EC9FC0 /* ExcludedFile.h */,
76
+ 8C2A82F119F357A800EC9FC0 /* ExcludedFile.m */,
77
+ );
78
+ name = Excluded;
79
+ path = Fixtures/Excluded;
80
+ sourceTree = SOURCE_ROOT;
81
+ };
82
+ 8C2A82F319F3580D00EC9FC0 /* Pods */ = {
83
+ isa = PBXGroup;
84
+ children = (
85
+ 8C2A82F419F3581F00EC9FC0 /* SomePodObject.h */,
86
+ 8C2A82F519F3581F00EC9FC0 /* SomePodObject.m */,
87
+ );
88
+ name = Pods;
89
+ path = Fixtures/Pods;
90
+ sourceTree = SOURCE_ROOT;
91
+ };
92
+ 8C2A82FC19F3AC3000EC9FC0 /* LongFile */ = {
93
+ isa = PBXGroup;
94
+ children = (
95
+ 8C2A830219F3AC4900EC9FC0 /* LongFile.h */,
96
+ 8C2A830319F3AC4900EC9FC0 /* LongFile.m */,
97
+ );
98
+ name = LongFile;
99
+ sourceTree = "<group>";
100
+ };
101
+ 8C45AC0019EF97EB00D0B22A = {
102
+ isa = PBXGroup;
103
+ children = (
104
+ 8C45AC0B19EF97EB00D0B22A /* Fixtures */,
105
+ 8C45AC2119EF97EB00D0B22A /* FixturesTests */,
106
+ 8C45AC0A19EF97EB00D0B22A /* Products */,
107
+ );
108
+ sourceTree = "<group>";
109
+ };
110
+ 8C45AC0A19EF97EB00D0B22A /* Products */ = {
111
+ isa = PBXGroup;
112
+ children = (
113
+ 8C45AC0919EF97EB00D0B22A /* Fixtures.app */,
114
+ 8C45AC1E19EF97EB00D0B22A /* FixturesTests.xctest */,
115
+ );
116
+ name = Products;
117
+ sourceTree = "<group>";
118
+ };
119
+ 8C45AC0B19EF97EB00D0B22A /* Fixtures */ = {
120
+ isa = PBXGroup;
121
+ children = (
122
+ 8C45AC2E19EF98A700D0B22A /* SomeDir */,
123
+ 8C45AC0E19EF97EB00D0B22A /* AppDelegate.swift */,
124
+ 8C45AC1019EF97EB00D0B22A /* ViewController.swift */,
125
+ 8C45AC1219EF97EB00D0B22A /* Main.storyboard */,
126
+ 8C45AC1519EF97EB00D0B22A /* Images.xcassets */,
127
+ 8C45AC1719EF97EB00D0B22A /* LaunchScreen.xib */,
128
+ 8C45AC0C19EF97EB00D0B22A /* Supporting Files */,
129
+ );
130
+ path = Fixtures;
131
+ sourceTree = "<group>";
132
+ };
133
+ 8C45AC0C19EF97EB00D0B22A /* Supporting Files */ = {
134
+ isa = PBXGroup;
135
+ children = (
136
+ 8C45AC0D19EF97EB00D0B22A /* Info.plist */,
137
+ );
138
+ name = "Supporting Files";
139
+ sourceTree = "<group>";
140
+ };
141
+ 8C45AC2119EF97EB00D0B22A /* FixturesTests */ = {
142
+ isa = PBXGroup;
143
+ children = (
144
+ 8C45AC2419EF97EB00D0B22A /* FixturesTests.swift */,
145
+ 8C45AC2219EF97EB00D0B22A /* Supporting Files */,
146
+ );
147
+ path = FixturesTests;
148
+ sourceTree = "<group>";
149
+ };
150
+ 8C45AC2219EF97EB00D0B22A /* Supporting Files */ = {
151
+ isa = PBXGroup;
152
+ children = (
153
+ 8C45AC2319EF97EB00D0B22A /* Info.plist */,
154
+ );
155
+ name = "Supporting Files";
156
+ sourceTree = "<group>";
157
+ };
158
+ 8C45AC2E19EF98A700D0B22A /* SomeDir */ = {
159
+ isa = PBXGroup;
160
+ children = (
161
+ 8C2A82FC19F3AC3000EC9FC0 /* LongFile */,
162
+ 8C2A82F319F3580D00EC9FC0 /* Pods */,
163
+ 8C2A82EF19F3579600EC9FC0 /* Excluded */,
164
+ 8C45AC3019EF98BE00D0B22A /* SomeObject.h */,
165
+ 8C45AC3119EF98BE00D0B22A /* SomeObject.m */,
166
+ 8C45AC2F19EF98BE00D0B22A /* Fixtures-Bridging-Header.h */,
167
+ );
168
+ path = SomeDir;
169
+ sourceTree = "<group>";
170
+ };
171
+ /* End PBXGroup section */
172
+
173
+ /* Begin PBXNativeTarget section */
174
+ 8C45AC0819EF97EB00D0B22A /* Fixtures */ = {
175
+ isa = PBXNativeTarget;
176
+ buildConfigurationList = 8C45AC2819EF97EB00D0B22A /* Build configuration list for PBXNativeTarget "Fixtures" */;
177
+ buildPhases = (
178
+ 8C45AC0519EF97EB00D0B22A /* Sources */,
179
+ 8C45AC0619EF97EB00D0B22A /* Frameworks */,
180
+ 8C45AC0719EF97EB00D0B22A /* Resources */,
181
+ );
182
+ buildRules = (
183
+ );
184
+ dependencies = (
185
+ );
186
+ name = Fixtures;
187
+ productName = Fixtures;
188
+ productReference = 8C45AC0919EF97EB00D0B22A /* Fixtures.app */;
189
+ productType = "com.apple.product-type.application";
190
+ };
191
+ 8C45AC1D19EF97EB00D0B22A /* FixturesTests */ = {
192
+ isa = PBXNativeTarget;
193
+ buildConfigurationList = 8C45AC2B19EF97EB00D0B22A /* Build configuration list for PBXNativeTarget "FixturesTests" */;
194
+ buildPhases = (
195
+ 8C45AC1A19EF97EB00D0B22A /* Sources */,
196
+ 8C45AC1B19EF97EB00D0B22A /* Frameworks */,
197
+ 8C45AC1C19EF97EB00D0B22A /* Resources */,
198
+ );
199
+ buildRules = (
200
+ );
201
+ dependencies = (
202
+ 8C45AC2019EF97EB00D0B22A /* PBXTargetDependency */,
203
+ );
204
+ name = FixturesTests;
205
+ productName = FixturesTests;
206
+ productReference = 8C45AC1E19EF97EB00D0B22A /* FixturesTests.xctest */;
207
+ productType = "com.apple.product-type.bundle.unit-test";
208
+ };
209
+ /* End PBXNativeTarget section */
210
+
211
+ /* Begin PBXProject section */
212
+ 8C45AC0119EF97EB00D0B22A /* Project object */ = {
213
+ isa = PBXProject;
214
+ attributes = {
215
+ LastUpgradeCheck = 0600;
216
+ ORGANIZATIONNAME = marklarr;
217
+ TargetAttributes = {
218
+ 8C45AC0819EF97EB00D0B22A = {
219
+ CreatedOnToolsVersion = 6.0.1;
220
+ };
221
+ 8C45AC1D19EF97EB00D0B22A = {
222
+ CreatedOnToolsVersion = 6.0.1;
223
+ TestTargetID = 8C45AC0819EF97EB00D0B22A;
224
+ };
225
+ };
226
+ };
227
+ buildConfigurationList = 8C45AC0419EF97EB00D0B22A /* Build configuration list for PBXProject "Fixtures" */;
228
+ compatibilityVersion = "Xcode 3.2";
229
+ developmentRegion = English;
230
+ hasScannedForEncodings = 0;
231
+ knownRegions = (
232
+ en,
233
+ Base,
234
+ );
235
+ mainGroup = 8C45AC0019EF97EB00D0B22A;
236
+ productRefGroup = 8C45AC0A19EF97EB00D0B22A /* Products */;
237
+ projectDirPath = "";
238
+ projectRoot = "";
239
+ targets = (
240
+ 8C45AC0819EF97EB00D0B22A /* Fixtures */,
241
+ 8C45AC1D19EF97EB00D0B22A /* FixturesTests */,
242
+ );
243
+ };
244
+ /* End PBXProject section */
245
+
246
+ /* Begin PBXResourcesBuildPhase section */
247
+ 8C45AC0719EF97EB00D0B22A /* Resources */ = {
248
+ isa = PBXResourcesBuildPhase;
249
+ buildActionMask = 2147483647;
250
+ files = (
251
+ 8C45AC1419EF97EB00D0B22A /* Main.storyboard in Resources */,
252
+ 8C45AC1919EF97EB00D0B22A /* LaunchScreen.xib in Resources */,
253
+ 8C45AC1619EF97EB00D0B22A /* Images.xcassets in Resources */,
254
+ );
255
+ runOnlyForDeploymentPostprocessing = 0;
256
+ };
257
+ 8C45AC1C19EF97EB00D0B22A /* Resources */ = {
258
+ isa = PBXResourcesBuildPhase;
259
+ buildActionMask = 2147483647;
260
+ files = (
261
+ );
262
+ runOnlyForDeploymentPostprocessing = 0;
263
+ };
264
+ /* End PBXResourcesBuildPhase section */
265
+
266
+ /* Begin PBXSourcesBuildPhase section */
267
+ 8C45AC0519EF97EB00D0B22A /* Sources */ = {
268
+ isa = PBXSourcesBuildPhase;
269
+ buildActionMask = 2147483647;
270
+ files = (
271
+ 8C2A82F619F3581F00EC9FC0 /* SomePodObject.m in Sources */,
272
+ 8C45AC1119EF97EB00D0B22A /* ViewController.swift in Sources */,
273
+ 8C45AC0F19EF97EB00D0B22A /* AppDelegate.swift in Sources */,
274
+ 8C2A830419F3AC4900EC9FC0 /* LongFile.m in Sources */,
275
+ 8C45AC3219EF98BE00D0B22A /* SomeObject.m in Sources */,
276
+ 8C2A82F219F357A800EC9FC0 /* ExcludedFile.m in Sources */,
277
+ );
278
+ runOnlyForDeploymentPostprocessing = 0;
279
+ };
280
+ 8C45AC1A19EF97EB00D0B22A /* Sources */ = {
281
+ isa = PBXSourcesBuildPhase;
282
+ buildActionMask = 2147483647;
283
+ files = (
284
+ 8C45AC2519EF97EB00D0B22A /* FixturesTests.swift in Sources */,
285
+ );
286
+ runOnlyForDeploymentPostprocessing = 0;
287
+ };
288
+ /* End PBXSourcesBuildPhase section */
289
+
290
+ /* Begin PBXTargetDependency section */
291
+ 8C45AC2019EF97EB00D0B22A /* PBXTargetDependency */ = {
292
+ isa = PBXTargetDependency;
293
+ target = 8C45AC0819EF97EB00D0B22A /* Fixtures */;
294
+ targetProxy = 8C45AC1F19EF97EB00D0B22A /* PBXContainerItemProxy */;
295
+ };
296
+ /* End PBXTargetDependency section */
297
+
298
+ /* Begin PBXVariantGroup section */
299
+ 8C45AC1219EF97EB00D0B22A /* Main.storyboard */ = {
300
+ isa = PBXVariantGroup;
301
+ children = (
302
+ 8C45AC1319EF97EB00D0B22A /* Base */,
303
+ );
304
+ name = Main.storyboard;
305
+ sourceTree = "<group>";
306
+ };
307
+ 8C45AC1719EF97EB00D0B22A /* LaunchScreen.xib */ = {
308
+ isa = PBXVariantGroup;
309
+ children = (
310
+ 8C45AC1819EF97EB00D0B22A /* Base */,
311
+ );
312
+ name = LaunchScreen.xib;
313
+ sourceTree = "<group>";
314
+ };
315
+ /* End PBXVariantGroup section */
316
+
317
+ /* Begin XCBuildConfiguration section */
318
+ 8C45AC2619EF97EB00D0B22A /* Debug */ = {
319
+ isa = XCBuildConfiguration;
320
+ buildSettings = {
321
+ ALWAYS_SEARCH_USER_PATHS = NO;
322
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
323
+ CLANG_CXX_LIBRARY = "libc++";
324
+ CLANG_ENABLE_MODULES = YES;
325
+ CLANG_ENABLE_OBJC_ARC = YES;
326
+ CLANG_WARN_BOOL_CONVERSION = YES;
327
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
328
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
329
+ CLANG_WARN_EMPTY_BODY = YES;
330
+ CLANG_WARN_ENUM_CONVERSION = YES;
331
+ CLANG_WARN_INT_CONVERSION = YES;
332
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
333
+ CLANG_WARN_UNREACHABLE_CODE = YES;
334
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
335
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
336
+ COPY_PHASE_STRIP = NO;
337
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
338
+ GCC_C_LANGUAGE_STANDARD = gnu99;
339
+ GCC_DYNAMIC_NO_PIC = NO;
340
+ GCC_OPTIMIZATION_LEVEL = 0;
341
+ GCC_PREPROCESSOR_DEFINITIONS = (
342
+ "DEBUG=1",
343
+ "$(inherited)",
344
+ );
345
+ GCC_SYMBOLS_PRIVATE_EXTERN = NO;
346
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
347
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
348
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
349
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
350
+ GCC_WARN_UNUSED_FUNCTION = YES;
351
+ GCC_WARN_UNUSED_VARIABLE = YES;
352
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
353
+ MTL_ENABLE_DEBUG_INFO = YES;
354
+ ONLY_ACTIVE_ARCH = YES;
355
+ SDKROOT = iphoneos;
356
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
357
+ };
358
+ name = Debug;
359
+ };
360
+ 8C45AC2719EF97EB00D0B22A /* Release */ = {
361
+ isa = XCBuildConfiguration;
362
+ buildSettings = {
363
+ ALWAYS_SEARCH_USER_PATHS = NO;
364
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
365
+ CLANG_CXX_LIBRARY = "libc++";
366
+ CLANG_ENABLE_MODULES = YES;
367
+ CLANG_ENABLE_OBJC_ARC = YES;
368
+ CLANG_WARN_BOOL_CONVERSION = YES;
369
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
370
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
371
+ CLANG_WARN_EMPTY_BODY = YES;
372
+ CLANG_WARN_ENUM_CONVERSION = YES;
373
+ CLANG_WARN_INT_CONVERSION = YES;
374
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
375
+ CLANG_WARN_UNREACHABLE_CODE = YES;
376
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
377
+ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
378
+ COPY_PHASE_STRIP = YES;
379
+ ENABLE_NS_ASSERTIONS = NO;
380
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
381
+ GCC_C_LANGUAGE_STANDARD = gnu99;
382
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
383
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
384
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
385
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
386
+ GCC_WARN_UNUSED_FUNCTION = YES;
387
+ GCC_WARN_UNUSED_VARIABLE = YES;
388
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
389
+ MTL_ENABLE_DEBUG_INFO = NO;
390
+ SDKROOT = iphoneos;
391
+ VALIDATE_PRODUCT = YES;
392
+ };
393
+ name = Release;
394
+ };
395
+ 8C45AC2919EF97EB00D0B22A /* Debug */ = {
396
+ isa = XCBuildConfiguration;
397
+ buildSettings = {
398
+ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
399
+ CLANG_ENABLE_MODULES = YES;
400
+ INFOPLIST_FILE = Fixtures/Info.plist;
401
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
402
+ PRODUCT_NAME = "$(TARGET_NAME)";
403
+ SWIFT_OBJC_BRIDGING_HEADER = "Fixtures/SomeDir/Fixtures-Bridging-Header.h";
404
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
405
+ };
406
+ name = Debug;
407
+ };
408
+ 8C45AC2A19EF97EB00D0B22A /* Release */ = {
409
+ isa = XCBuildConfiguration;
410
+ buildSettings = {
411
+ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
412
+ CLANG_ENABLE_MODULES = YES;
413
+ INFOPLIST_FILE = Fixtures/Info.plist;
414
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
415
+ PRODUCT_NAME = "$(TARGET_NAME)";
416
+ SWIFT_OBJC_BRIDGING_HEADER = "Fixtures/SomeDir/Fixtures-Bridging-Header.h";
417
+ };
418
+ name = Release;
419
+ };
420
+ 8C45AC2C19EF97EB00D0B22A /* Debug */ = {
421
+ isa = XCBuildConfiguration;
422
+ buildSettings = {
423
+ BUNDLE_LOADER = "$(TEST_HOST)";
424
+ FRAMEWORK_SEARCH_PATHS = (
425
+ "$(SDKROOT)/Developer/Library/Frameworks",
426
+ "$(inherited)",
427
+ );
428
+ GCC_PREPROCESSOR_DEFINITIONS = (
429
+ "DEBUG=1",
430
+ "$(inherited)",
431
+ );
432
+ INFOPLIST_FILE = FixturesTests/Info.plist;
433
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
434
+ PRODUCT_NAME = "$(TARGET_NAME)";
435
+ TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Fixtures.app/Fixtures";
436
+ };
437
+ name = Debug;
438
+ };
439
+ 8C45AC2D19EF97EB00D0B22A /* Release */ = {
440
+ isa = XCBuildConfiguration;
441
+ buildSettings = {
442
+ BUNDLE_LOADER = "$(TEST_HOST)";
443
+ FRAMEWORK_SEARCH_PATHS = (
444
+ "$(SDKROOT)/Developer/Library/Frameworks",
445
+ "$(inherited)",
446
+ );
447
+ INFOPLIST_FILE = FixturesTests/Info.plist;
448
+ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
449
+ PRODUCT_NAME = "$(TARGET_NAME)";
450
+ TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Fixtures.app/Fixtures";
451
+ };
452
+ name = Release;
453
+ };
454
+ /* End XCBuildConfiguration section */
455
+
456
+ /* Begin XCConfigurationList section */
457
+ 8C45AC0419EF97EB00D0B22A /* Build configuration list for PBXProject "Fixtures" */ = {
458
+ isa = XCConfigurationList;
459
+ buildConfigurations = (
460
+ 8C45AC2619EF97EB00D0B22A /* Debug */,
461
+ 8C45AC2719EF97EB00D0B22A /* Release */,
462
+ );
463
+ defaultConfigurationIsVisible = 0;
464
+ defaultConfigurationName = Release;
465
+ };
466
+ 8C45AC2819EF97EB00D0B22A /* Build configuration list for PBXNativeTarget "Fixtures" */ = {
467
+ isa = XCConfigurationList;
468
+ buildConfigurations = (
469
+ 8C45AC2919EF97EB00D0B22A /* Debug */,
470
+ 8C45AC2A19EF97EB00D0B22A /* Release */,
471
+ );
472
+ defaultConfigurationIsVisible = 0;
473
+ defaultConfigurationName = Release;
474
+ };
475
+ 8C45AC2B19EF97EB00D0B22A /* Build configuration list for PBXNativeTarget "FixturesTests" */ = {
476
+ isa = XCConfigurationList;
477
+ buildConfigurations = (
478
+ 8C45AC2C19EF97EB00D0B22A /* Debug */,
479
+ 8C45AC2D19EF97EB00D0B22A /* Release */,
480
+ );
481
+ defaultConfigurationIsVisible = 0;
482
+ defaultConfigurationName = Release;
483
+ };
484
+ /* End XCConfigurationList section */
485
+ };
486
+ rootObject = 8C45AC0119EF97EB00D0B22A /* Project object */;
487
+ }
@@ -0,0 +1,7 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Workspace
3
+ version = "1.0">
4
+ <FileRef
5
+ location = "self:Fixtures.xcodeproj">
6
+ </FileRef>
7
+ </Workspace>
@@ -0,0 +1,110 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Scheme
3
+ LastUpgradeVersion = "0600"
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 = "8C45AC0819EF97EB00D0B22A"
18
+ BuildableName = "Fixtures.app"
19
+ BlueprintName = "Fixtures"
20
+ ReferencedContainer = "container:Fixtures.xcodeproj">
21
+ </BuildableReference>
22
+ </BuildActionEntry>
23
+ <BuildActionEntry
24
+ buildForTesting = "YES"
25
+ buildForRunning = "YES"
26
+ buildForProfiling = "NO"
27
+ buildForArchiving = "NO"
28
+ buildForAnalyzing = "YES">
29
+ <BuildableReference
30
+ BuildableIdentifier = "primary"
31
+ BlueprintIdentifier = "8C45AC1D19EF97EB00D0B22A"
32
+ BuildableName = "FixturesTests.xctest"
33
+ BlueprintName = "FixturesTests"
34
+ ReferencedContainer = "container:Fixtures.xcodeproj">
35
+ </BuildableReference>
36
+ </BuildActionEntry>
37
+ </BuildActionEntries>
38
+ </BuildAction>
39
+ <TestAction
40
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
41
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
42
+ shouldUseLaunchSchemeArgsEnv = "YES"
43
+ buildConfiguration = "Debug">
44
+ <Testables>
45
+ <TestableReference
46
+ skipped = "NO">
47
+ <BuildableReference
48
+ BuildableIdentifier = "primary"
49
+ BlueprintIdentifier = "8C45AC1D19EF97EB00D0B22A"
50
+ BuildableName = "FixturesTests.xctest"
51
+ BlueprintName = "FixturesTests"
52
+ ReferencedContainer = "container:Fixtures.xcodeproj">
53
+ </BuildableReference>
54
+ </TestableReference>
55
+ </Testables>
56
+ <MacroExpansion>
57
+ <BuildableReference
58
+ BuildableIdentifier = "primary"
59
+ BlueprintIdentifier = "8C45AC0819EF97EB00D0B22A"
60
+ BuildableName = "Fixtures.app"
61
+ BlueprintName = "Fixtures"
62
+ ReferencedContainer = "container:Fixtures.xcodeproj">
63
+ </BuildableReference>
64
+ </MacroExpansion>
65
+ </TestAction>
66
+ <LaunchAction
67
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
68
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
69
+ launchStyle = "0"
70
+ useCustomWorkingDirectory = "NO"
71
+ buildConfiguration = "Debug"
72
+ ignoresPersistentStateOnLaunch = "NO"
73
+ debugDocumentVersioning = "YES"
74
+ allowLocationSimulation = "YES">
75
+ <BuildableProductRunnable>
76
+ <BuildableReference
77
+ BuildableIdentifier = "primary"
78
+ BlueprintIdentifier = "8C45AC0819EF97EB00D0B22A"
79
+ BuildableName = "Fixtures.app"
80
+ BlueprintName = "Fixtures"
81
+ ReferencedContainer = "container:Fixtures.xcodeproj">
82
+ </BuildableReference>
83
+ </BuildableProductRunnable>
84
+ <AdditionalOptions>
85
+ </AdditionalOptions>
86
+ </LaunchAction>
87
+ <ProfileAction
88
+ shouldUseLaunchSchemeArgsEnv = "YES"
89
+ savedToolIdentifier = ""
90
+ useCustomWorkingDirectory = "NO"
91
+ buildConfiguration = "Release"
92
+ debugDocumentVersioning = "YES">
93
+ <BuildableProductRunnable>
94
+ <BuildableReference
95
+ BuildableIdentifier = "primary"
96
+ BlueprintIdentifier = "8C45AC0819EF97EB00D0B22A"
97
+ BuildableName = "Fixtures.app"
98
+ BlueprintName = "Fixtures"
99
+ ReferencedContainer = "container:Fixtures.xcodeproj">
100
+ </BuildableReference>
101
+ </BuildableProductRunnable>
102
+ </ProfileAction>
103
+ <AnalyzeAction
104
+ buildConfiguration = "Debug">
105
+ </AnalyzeAction>
106
+ <ArchiveAction
107
+ buildConfiguration = "Release"
108
+ revealArchiveInOrganizer = "YES">
109
+ </ArchiveAction>
110
+ </Scheme>
@@ -0,0 +1,36 @@
1
+ //
2
+ // FixturesTests.swift
3
+ // FixturesTests
4
+ //
5
+ // Created by Mark Larsen on 10/16/14.
6
+ // Copyright (c) 2014 marklarr. All rights reserved.
7
+ //
8
+
9
+ import UIKit
10
+ import XCTest
11
+
12
+ class FixturesTests: XCTestCase {
13
+
14
+ override func setUp() {
15
+ super.setUp()
16
+ // Put setup code here. This method is called before the invocation of each test method in the class.
17
+ }
18
+
19
+ override func tearDown() {
20
+ // Put teardown code here. This method is called after the invocation of each test method in the class.
21
+ super.tearDown()
22
+ }
23
+
24
+ func testExample() {
25
+ // This is an example of a functional test case.
26
+ XCTAssert(true, "Pass")
27
+ }
28
+
29
+ func testPerformanceExample() {
30
+ // This is an example of a performance test case.
31
+ self.measureBlock() {
32
+ // Put the code you want to measure the time of here.
33
+ }
34
+ }
35
+
36
+ }
@@ -0,0 +1,24 @@
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>marklarr.$(PRODUCT_NAME:rfc1034identifier)</string>
11
+ <key>CFBundleInfoDictionaryVersion</key>
12
+ <string>6.0</string>
13
+ <key>CFBundleName</key>
14
+ <string>$(PRODUCT_NAME)</string>
15
+ <key>CFBundlePackageType</key>
16
+ <string>BNDL</string>
17
+ <key>CFBundleShortVersionString</key>
18
+ <string>1.0</string>
19
+ <key>CFBundleSignature</key>
20
+ <string>????</string>
21
+ <key>CFBundleVersion</key>
22
+ <string>1</string>
23
+ </dict>
24
+ </plist>
@@ -0,0 +1,22 @@
1
+ xcode_proj "Fixtures/Fixtures.xcodeproj"
2
+ main_target "Fixtures"
3
+
4
+ warning :line, :language => "swift" do |line|
5
+ line.length > 120 ? "Length of line #{line.length} is longer than 120 characters!" : false
6
+ end
7
+
8
+ warning :file do |entire_file|
9
+ max_number_of_lines = 500
10
+
11
+ number_of_code_or_comment_lines = entire_file.split("\n").select { |line| line.strip.length > 0 }.count
12
+ if number_of_code_or_comment_lines > max_number_of_lines
13
+ # Map line numbers to errors
14
+ { "1" => "File is #{number_of_code_or_comment_lines} lines long" }
15
+ else
16
+ false
17
+ end
18
+ end
19
+
20
+ error_regex "Please remove Copyright boilerplate", /^\/\/ Copyright \(c\).*$/, :files => ["*AppDelegate*"]
21
+
22
+ warning_regex "TODO", /^\/\/\s+TODO:.*$/, :exclude => "*/Fixtures/Excluded/*"