xcfit 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (28) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/XCFit.podspec +3 -5
  4. data/XCFit/Classes/CliSwift.swift +87 -0
  5. data/XCFit/Classes/CopyDir.swift +26 -0
  6. data/XCFitDemo/FitNesseRoot/RecentChanges/content.txt +1 -1
  7. data/XCFitDemo/FitNesseRoot/files/testResults/FrontPage.ShoudIBuyMilk/20160716220147_1_0_0_0.xml +242 -0
  8. data/XCFitDemo/FitNesseRoot/files/testResults/FrontPage/20160716220147_1_0_0_0.xml +49 -0
  9. data/XCFitDemo/LaunchFitnesse +47 -6
  10. data/XCFitDemo/Podfile +2 -2
  11. data/XCFitDemo/Podfile.lock +5 -9
  12. data/XCFitDemo/Pods/Manifest.lock +5 -9
  13. data/XCFitDemo/Pods/OCSlimProject/Pod/Support/SharedSupport/LICENCE.txt +214 -0
  14. data/XCFitDemo/Pods/OCSlimProject/Pod/Support/SharedSupport/LaunchFitnesse +47 -6
  15. data/XCFitDemo/Pods/OCSlimProject/Pod/Support/SharedSupport/fitnesse-standalone.jar +0 -0
  16. data/XCFitDemo/Pods/OCSlimProject/README.md +44 -45
  17. data/XCFitDemo/Pods/Pods.xcodeproj/project.pbxproj +290 -413
  18. data/XCFitDemo/Pods/Target Support Files/OCSlimProject/ResourceBundle-OCSlimProject-Info.plist +1 -1
  19. data/XCFitDemo/Pods/XCFit/LICENSE +19 -0
  20. data/XCFitDemo/Pods/XCFit/README.md +33 -0
  21. data/XCFitDemo/Pods/XCFit/XCFit/Classes/CliSwift.swift +87 -0
  22. data/XCFitDemo/Pods/XCFit/XCFit/Classes/CopyDir.swift +26 -0
  23. data/lib/XCFit/main.rb +41 -3
  24. data/lib/XCFit/version.rb +1 -1
  25. metadata +12 -5
  26. data/XCFit/Classes/ReplaceMe.swift +0 -0
  27. data/XCFitDemo/Pods/Local Podspecs/XCFit.podspec.json +0 -33
  28. data/XCFitDemo/Pods/Target Support Files/XCFit/ResourceBundle-XCFit-Info.plist +0 -24
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0b92ebe828e7b0bb9ecb5164171dd5fc027015b5
4
- data.tar.gz: d4f9e9d4fb438a691b26f123041bd6b5da2bb4fa
3
+ metadata.gz: 9fa3dfd73d7a76dcb2b8d70b0ebc3aa3ad420a82
4
+ data.tar.gz: 477065eee9980e44e1ddb6c41b1c2a234ce93788
5
5
  SHA512:
6
- metadata.gz: 309d057eaed027f86b3e963268c84a941ce220090f5edf16bba070a3f8de83d4b2801f93dfd5fda8f7b311036a8d37d160f02603a01d45cb62a50dca62941049
7
- data.tar.gz: 2b076e64aa7dd401e2ac0a16fbaa8fa2e634159e06042bcb0f387d48d3a73bc24bbcf81000774a2dabb58b30f8835e918ead975d2ee8456f77c785b39139ad01
6
+ metadata.gz: 25e4c94a24c9859fb23b1b8fd133c2da66f3ebadd6632c135990ae8efb50bbfb5e41e7784a0ac4c3966331399546e132bf862bcdbd10188bc8832f89799db98a
7
+ data.tar.gz: 3e7779058ce4d00076942a5d0f045502d57b6ff8a447b7d1a659b28b20286553938c19360c5e12409a471e40dbac2794ca2103ad9176d2b879a57c04505767f6
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- xcfit (0.2.0)
4
+ xcfit (0.3.0)
5
5
  thor (~> 0.17.0)
6
6
 
7
7
  GEM
@@ -11,16 +11,14 @@ XCFit is a full stack BDD framework for iOS and macOS apps with Swift using Cucu
11
11
  # s.screenshots = 'www.example.com/screenshots_1', 'www.example.com/screenshots_2'
12
12
  s.license = { :type => 'MIT', :file => 'LICENSE' }
13
13
  s.author = { 'Shashikant86' => 'shashikant.jagtap@icloud.com' }
14
- s.source = { :git => 'https://github.com/Shashikant86/XCFit.git', :tag => s.version.to_s }
14
+ s.source = { :git => 'https://github.com/Shashikant86/XCFit.git', :tag => '0.1.0' }
15
+
15
16
  s.social_media_url = 'https://twitter.com/Shashikant86'
16
17
 
17
18
  s.ios.deployment_target = '8.0'
18
19
 
19
20
  s.source_files = 'XCFit/Classes/**/*'
20
-
21
- s.resource_bundles = {
22
- 'XCFit' => ['XCFit/Assets/*.png']
23
- }
21
+
24
22
 
25
23
  # s.public_header_files = 'Pod/Classes/**/*.h'
26
24
  # s.frameworks = 'UIKit', 'MapKit'
@@ -0,0 +1,87 @@
1
+ // import Foundation
2
+
3
+ // func printShell(launchPath launchPath: String, arguments: [String], output: String?) {
4
+ // let args = arguments.reduce("") {
5
+ // $0 + $1 + " "
6
+ // }
7
+ // print("Ran shell script: \(launchPath) \(args)\nOutput:\n" + (output ?? "--No Output--"))
8
+ // }
9
+
10
+ // func shell(launchPath launchPath: String, arguments: [String] = [], debugPrint: Bool = false) -> String? {
11
+
12
+ // let task = NSTask()
13
+ // task.launchPath = launchPath
14
+ // task.arguments = arguments
15
+
16
+ // let pipe = NSPipe()
17
+ // task.standardOutput = pipe
18
+ // task.launch()
19
+
20
+ // let data = pipe.fileHandleForReading.readDataToEndOfFile()
21
+ // let output: String? = NSString(data: data, encoding: NSUTF8StringEncoding) as String?
22
+
23
+ // if debugPrint {
24
+ // printShell(launchPath: launchPath, arguments: arguments, output: output)
25
+ // }
26
+ // return output
27
+ // }
28
+
29
+ // func environmentVariable(named named: String) -> String? {
30
+ // return NSProcessInfo.processInfo().environment[named]
31
+ // }
32
+
33
+ // func say(message: String) {
34
+ // print("😀 " + TerminalColor.Green + message + TerminalColor.Default)
35
+ // }
36
+
37
+ // func warn(message: String) {
38
+ // print("😰 " + TerminalColor.Yellow + message + TerminalColor.Default)
39
+ // }
40
+
41
+ // @noreturn
42
+ // func fail(message: String) {
43
+ // print("😭 " + TerminalColor.Red + message + TerminalColor.Default)
44
+ // exit(1)
45
+ // }
46
+
47
+ // protocol Script {
48
+ // var usage: String { get }
49
+ // var expectedNumberOfArguments: Int { get }
50
+ // func run(arguments arguments: [String])
51
+
52
+ // func run()
53
+ // }
54
+
55
+ // extension Script {
56
+
57
+ // func run() {
58
+ // let args = createArguments()
59
+ // guard expectedNumberOfArguments == args.count else {
60
+ // fail("Expected \(expectedNumberOfArguments) arguments. Got: \(args). \n\nUsage: \(usage)")
61
+ // }
62
+ // run(arguments: args)
63
+ // }
64
+
65
+ // func createArguments() -> [String] {
66
+ // let args = Process.arguments
67
+ // guard args.count > 1 else {
68
+ // return []
69
+ // }
70
+ // return Array(args[1 ..< args.count])
71
+ // }
72
+ // }
73
+
74
+ // enum TerminalColor: String {
75
+ // case Red = "\u{001B}[0;31m"
76
+ // case Yellow = "\u{001B}[0;33m"
77
+ // case Green = "\u{001B}[0;32m"
78
+ // case Default = "\u{001B}[0m"
79
+ // }
80
+
81
+ // func +(lhs: TerminalColor, rhs: String) -> String {
82
+ // return lhs.rawValue + rhs
83
+ // }
84
+
85
+ // func +(lhs: String, rhs: TerminalColor) -> String {
86
+ // return lhs + rhs.rawValue
87
+ // }
@@ -0,0 +1,26 @@
1
+ // import Foundation
2
+
3
+ // struct CopyDir: Script {
4
+
5
+ // var usage: String {
6
+ // return "Usage: swift CopyDir.swift <DIR1> <DIR2>"
7
+ // }
8
+
9
+ // var expectedNumberOfArguments = 2
10
+
11
+ // func run(arguments arguments: [String]) {
12
+ // let dir1 = arguments[0]
13
+ // let dir2 = arguments[1]
14
+ // }
15
+
16
+ // func copyDir(dir1: String, dir2: String) {
17
+ // let sourcePath = "XCFit_Template/"
18
+ // let destinationPath = "~/Library/Developer/Xcode/Templates/"
19
+
20
+
21
+
22
+ // shell(launchPath: "/bin/cp", arguments: ["-rf", sourcePath, destinationPath)
23
+ // }
24
+ // }
25
+
26
+ // CopyDir().run()
@@ -1,4 +1,4 @@
1
+ |FrontPage||22:00:44 Sat, Jul 16, 2016|
1
2
  |FrontPage.ShoudIBuyMilk||10:41:33 Sat, Jul 16, 2016|
2
3
  |FrontPage.BuyMilk||10:40:25 Sat, Jul 16, 2016|
3
- |FrontPage||10:39:05 Sat, Jul 16, 2016|
4
4
  |FrontPage.Suite||23:59:15 Fri, Jul 15, 2016|
@@ -0,0 +1,242 @@
1
+ <?xml version="1.0"?>
2
+ <testResults>
3
+ <FitNesseVersion>v20160618</FitNesseVersion>
4
+ <rootPath>FrontPage.ShoudIBuyMilk</rootPath>
5
+ <result>
6
+ <counts>
7
+ <right>4</right>
8
+ <wrong>0</wrong>
9
+ <ignores>0</ignores>
10
+ <exceptions>0</exceptions>
11
+ </counts>
12
+ <date>2016-07-16T22:01:47+01:00</date>
13
+ <runTimeInMillis>2609</runTimeInMillis>
14
+ <content>&lt;br/&gt;&lt;table&gt;
15
+ &lt;tr&gt;
16
+ &lt;td colspan="4"&gt;&lt;span class="pass"&gt;should I buy milk&lt;/span&gt;&lt;/td&gt;
17
+ &lt;/tr&gt;
18
+ &lt;tr&gt;
19
+ &lt;td&gt;cash in wallet&lt;/td&gt;
20
+ &lt;td&gt;credit card&lt;/td&gt;
21
+ &lt;td&gt;pints of milk remaining&lt;/td&gt;
22
+ &lt;td&gt;go to store?&lt;/td&gt;
23
+ &lt;/tr&gt;
24
+ &lt;tr&gt;
25
+ &lt;td&gt;0&lt;/td&gt;
26
+ &lt;td&gt;no&lt;/td&gt;
27
+ &lt;td&gt;0&lt;/td&gt;
28
+ &lt;td&gt;&lt;span class="pass"&gt;no&lt;/span&gt;&lt;/td&gt;
29
+ &lt;/tr&gt;
30
+ &lt;tr&gt;
31
+ &lt;td&gt;0&lt;/td&gt;
32
+ &lt;td&gt;no&lt;/td&gt;
33
+ &lt;td&gt;1&lt;/td&gt;
34
+ &lt;td&gt;&lt;span class="pass"&gt;no&lt;/span&gt;&lt;/td&gt;
35
+ &lt;/tr&gt;
36
+ &lt;tr&gt;
37
+ &lt;td&gt;10&lt;/td&gt;
38
+ &lt;td&gt;no&lt;/td&gt;
39
+ &lt;td&gt;1&lt;/td&gt;
40
+ &lt;td&gt;&lt;span class="pass"&gt;no&lt;/span&gt;&lt;/td&gt;
41
+ &lt;/tr&gt;
42
+ &lt;tr&gt;
43
+ &lt;td&gt;0&lt;/td&gt;
44
+ &lt;td&gt;yes&lt;/td&gt;
45
+ &lt;td&gt;1&lt;/td&gt;
46
+ &lt;td&gt;&lt;span class="pass"&gt;no&lt;/span&gt;&lt;/td&gt;
47
+ &lt;/tr&gt;
48
+ &lt;/table&gt;
49
+ </content>
50
+ <relativePageName>ShoudIBuyMilk</relativePageName>
51
+ <instructions>
52
+ <instructionResult>
53
+ <instruction>{id='decisionTable_0_0', instruction='make', instanceName='decisionTable_0', className='ShouldIBuyMilk', args=[]}</instruction>
54
+ <slimResult>pass(should I buy milk)</slimResult>
55
+ <expectation>
56
+ <status>pass</status>
57
+ <instructionId>decisionTable_0_0</instructionId>
58
+ <col>0</col>
59
+ <row>0</row>
60
+ <type>ConstructionExpectation</type>
61
+ <evaluationMessage>should I buy milk</evaluationMessage>
62
+ </expectation>
63
+ </instructionResult>
64
+ <instructionResult>
65
+ <instruction>{id='decisionTable_0_4', instruction='call', instanceName='decisionTable_0', methodName='setCashInWallet', args=[0]}</instruction>
66
+ <slimResult></slimResult>
67
+ <expectation>
68
+ <instructionId>decisionTable_0_4</instructionId>
69
+ <col>0</col>
70
+ <row>2</row>
71
+ <type>VoidReturnExpectation</type>
72
+ </expectation>
73
+ </instructionResult>
74
+ <instructionResult>
75
+ <instruction>{id='decisionTable_0_5', instruction='call', instanceName='decisionTable_0', methodName='setCreditCard', args=[no]}</instruction>
76
+ <slimResult></slimResult>
77
+ <expectation>
78
+ <instructionId>decisionTable_0_5</instructionId>
79
+ <col>1</col>
80
+ <row>2</row>
81
+ <type>VoidReturnExpectation</type>
82
+ </expectation>
83
+ </instructionResult>
84
+ <instructionResult>
85
+ <instruction>{id='decisionTable_0_6', instruction='call', instanceName='decisionTable_0', methodName='setPintsOfMilkRemaining', args=[0]}</instruction>
86
+ <slimResult></slimResult>
87
+ <expectation>
88
+ <instructionId>decisionTable_0_6</instructionId>
89
+ <col>2</col>
90
+ <row>2</row>
91
+ <type>VoidReturnExpectation</type>
92
+ </expectation>
93
+ </instructionResult>
94
+ <instructionResult>
95
+ <instruction>{id='decisionTable_0_8', instruction='call', instanceName='decisionTable_0', methodName='goToStore', args=[]}</instruction>
96
+ <slimResult>pass(no)</slimResult>
97
+ <expectation>
98
+ <status>pass</status>
99
+ <instructionId>decisionTable_0_8</instructionId>
100
+ <col>3</col>
101
+ <row>2</row>
102
+ <type>ReturnedValueExpectation</type>
103
+ <evaluationMessage>no</evaluationMessage>
104
+ </expectation>
105
+ </instructionResult>
106
+ <instructionResult>
107
+ <instruction>{id='decisionTable_0_10', instruction='call', instanceName='decisionTable_0', methodName='setCashInWallet', args=[0]}</instruction>
108
+ <slimResult></slimResult>
109
+ <expectation>
110
+ <instructionId>decisionTable_0_10</instructionId>
111
+ <col>0</col>
112
+ <row>3</row>
113
+ <type>VoidReturnExpectation</type>
114
+ </expectation>
115
+ </instructionResult>
116
+ <instructionResult>
117
+ <instruction>{id='decisionTable_0_11', instruction='call', instanceName='decisionTable_0', methodName='setCreditCard', args=[no]}</instruction>
118
+ <slimResult></slimResult>
119
+ <expectation>
120
+ <instructionId>decisionTable_0_11</instructionId>
121
+ <col>1</col>
122
+ <row>3</row>
123
+ <type>VoidReturnExpectation</type>
124
+ </expectation>
125
+ </instructionResult>
126
+ <instructionResult>
127
+ <instruction>{id='decisionTable_0_12', instruction='call', instanceName='decisionTable_0', methodName='setPintsOfMilkRemaining', args=[1]}</instruction>
128
+ <slimResult></slimResult>
129
+ <expectation>
130
+ <instructionId>decisionTable_0_12</instructionId>
131
+ <col>2</col>
132
+ <row>3</row>
133
+ <type>VoidReturnExpectation</type>
134
+ </expectation>
135
+ </instructionResult>
136
+ <instructionResult>
137
+ <instruction>{id='decisionTable_0_14', instruction='call', instanceName='decisionTable_0', methodName='goToStore', args=[]}</instruction>
138
+ <slimResult>pass(no)</slimResult>
139
+ <expectation>
140
+ <status>pass</status>
141
+ <instructionId>decisionTable_0_14</instructionId>
142
+ <col>3</col>
143
+ <row>3</row>
144
+ <type>ReturnedValueExpectation</type>
145
+ <evaluationMessage>no</evaluationMessage>
146
+ </expectation>
147
+ </instructionResult>
148
+ <instructionResult>
149
+ <instruction>{id='decisionTable_0_16', instruction='call', instanceName='decisionTable_0', methodName='setCashInWallet', args=[10]}</instruction>
150
+ <slimResult></slimResult>
151
+ <expectation>
152
+ <instructionId>decisionTable_0_16</instructionId>
153
+ <col>0</col>
154
+ <row>4</row>
155
+ <type>VoidReturnExpectation</type>
156
+ </expectation>
157
+ </instructionResult>
158
+ <instructionResult>
159
+ <instruction>{id='decisionTable_0_17', instruction='call', instanceName='decisionTable_0', methodName='setCreditCard', args=[no]}</instruction>
160
+ <slimResult></slimResult>
161
+ <expectation>
162
+ <instructionId>decisionTable_0_17</instructionId>
163
+ <col>1</col>
164
+ <row>4</row>
165
+ <type>VoidReturnExpectation</type>
166
+ </expectation>
167
+ </instructionResult>
168
+ <instructionResult>
169
+ <instruction>{id='decisionTable_0_18', instruction='call', instanceName='decisionTable_0', methodName='setPintsOfMilkRemaining', args=[1]}</instruction>
170
+ <slimResult></slimResult>
171
+ <expectation>
172
+ <instructionId>decisionTable_0_18</instructionId>
173
+ <col>2</col>
174
+ <row>4</row>
175
+ <type>VoidReturnExpectation</type>
176
+ </expectation>
177
+ </instructionResult>
178
+ <instructionResult>
179
+ <instruction>{id='decisionTable_0_20', instruction='call', instanceName='decisionTable_0', methodName='goToStore', args=[]}</instruction>
180
+ <slimResult>pass(no)</slimResult>
181
+ <expectation>
182
+ <status>pass</status>
183
+ <instructionId>decisionTable_0_20</instructionId>
184
+ <col>3</col>
185
+ <row>4</row>
186
+ <type>ReturnedValueExpectation</type>
187
+ <evaluationMessage>no</evaluationMessage>
188
+ </expectation>
189
+ </instructionResult>
190
+ <instructionResult>
191
+ <instruction>{id='decisionTable_0_22', instruction='call', instanceName='decisionTable_0', methodName='setCashInWallet', args=[0]}</instruction>
192
+ <slimResult></slimResult>
193
+ <expectation>
194
+ <instructionId>decisionTable_0_22</instructionId>
195
+ <col>0</col>
196
+ <row>5</row>
197
+ <type>VoidReturnExpectation</type>
198
+ </expectation>
199
+ </instructionResult>
200
+ <instructionResult>
201
+ <instruction>{id='decisionTable_0_23', instruction='call', instanceName='decisionTable_0', methodName='setCreditCard', args=[yes]}</instruction>
202
+ <slimResult></slimResult>
203
+ <expectation>
204
+ <instructionId>decisionTable_0_23</instructionId>
205
+ <col>1</col>
206
+ <row>5</row>
207
+ <type>VoidReturnExpectation</type>
208
+ </expectation>
209
+ </instructionResult>
210
+ <instructionResult>
211
+ <instruction>{id='decisionTable_0_24', instruction='call', instanceName='decisionTable_0', methodName='setPintsOfMilkRemaining', args=[1]}</instruction>
212
+ <slimResult></slimResult>
213
+ <expectation>
214
+ <instructionId>decisionTable_0_24</instructionId>
215
+ <col>2</col>
216
+ <row>5</row>
217
+ <type>VoidReturnExpectation</type>
218
+ </expectation>
219
+ </instructionResult>
220
+ <instructionResult>
221
+ <instruction>{id='decisionTable_0_26', instruction='call', instanceName='decisionTable_0', methodName='goToStore', args=[]}</instruction>
222
+ <slimResult>pass(no)</slimResult>
223
+ <expectation>
224
+ <status>pass</status>
225
+ <instructionId>decisionTable_0_26</instructionId>
226
+ <col>3</col>
227
+ <row>5</row>
228
+ <type>ReturnedValueExpectation</type>
229
+ <evaluationMessage>no</evaluationMessage>
230
+ </expectation>
231
+ </instructionResult>
232
+ </instructions>
233
+ </result>
234
+ <finalCounts>
235
+ <right>1</right>
236
+ <wrong>0</wrong>
237
+ <ignores>0</ignores>
238
+ <exceptions>0</exceptions>
239
+ </finalCounts>
240
+ <totalRunTimeInMillis>2610</totalRunTimeInMillis>
241
+ </testResults>
242
+
@@ -0,0 +1,49 @@
1
+ <?xml version="1.0"?>
2
+ <suiteResults>
3
+ <FitNesseVersion>v20160618</FitNesseVersion>
4
+ <rootPath>FrontPage</rootPath>
5
+ <pageHistoryReference>
6
+ <name>FrontPage.ShoudIBuyMilk</name>
7
+ <date>2016-07-16T22:01:47+01:00</date>
8
+ <pageHistoryLink>FrontPage.ShoudIBuyMilk?pageHistory&amp;resultDate=20160716220147</pageHistoryLink>
9
+ <counts>
10
+ <right>4</right>
11
+ <wrong>0</wrong>
12
+ <ignores>0</ignores>
13
+ <exceptions>0</exceptions>
14
+ </counts>
15
+ <runTimeInMillis>2609</runTimeInMillis>
16
+ </pageHistoryReference>
17
+ <executionLog>
18
+ <testSystem>slim:./OCSlimProjectTestRunner.sh</testSystem>
19
+ <command>./OCSlimProjectTestRunner.sh 8085</command>
20
+ <exitCode>0</exitCode>
21
+ <stdOut>Running Test Target "XCFitAcceptanceTests.app" with Slim Port "8085"
22
+ Simulator Device "iPhone-6", deployment Target "9.2"
23
+ </stdOut>
24
+ <stdErr>App Spec: &lt;DTiPhoneSimulatorApplicationSpecifier 0x7f7ffad126f0&gt; specified by app path /Users/shashi/Library/Developer/Xcode/DerivedData/XCFitDemo-evtjijidxcoeohcdnmjdsxaofpqt/Build/Products/Debug-iphonesimulator/XCFitAcceptanceTests.app
25
+ SDK Root: &lt;DTiPhoneSimulatorSystemRoot 0x7f7ffad79a10&gt; path=/Applications/Xcode.app/Contents/Developer/Platforms/WatchSimulator.platform/Developer/SDKs/WatchSimulator.sdk
26
+ Creating named pipe at `/var/folders/p5/08pcsdfs2qs8_13vyd5mcgmm0000gn/T//ios-sim-stderr-pipe-1468702905'
27
+ Creating named pipe at `/var/folders/p5/08pcsdfs2qs8_13vyd5mcgmm0000gn/T//ios-sim-stdout-pipe-1468702905'
28
+ using device family iphone
29
+ 2016-07-16 22:01:45.735 ios-sim[41055:1355635] [MT] DVTAssertions: Warning in /Library/Caches/com.apple.xbs/Sources/DVTFrameworks/DVTFrameworks-9542/DVTFoundation/PlugInArchitecture/PlugInManager/DVTPlugInManager.m:259
30
+ Details: Requested but did not find extension point with identifier Xcode.DVTFoundation.DevicePlatformMapping
31
+ Object: &lt;DVTPlugInManager: 0x7f7ffacb5cb0&gt;
32
+ Method: -extensionPointWithIdentifier:
33
+ Thread: &lt;NSThread: 0x7f7ffac0be50&gt;{number = 1, name = main}
34
+ Please file a bug at http://bugreport.apple.com with this warning message and any useful information you can provide.
35
+ Session started
36
+ Session did end with error (null)
37
+ Removing named pipe at `/var/folders/p5/08pcsdfs2qs8_13vyd5mcgmm0000gn/T//ios-sim-stderr-pipe-1468702905'
38
+ Removing named pipe at `/var/folders/p5/08pcsdfs2qs8_13vyd5mcgmm0000gn/T//ios-sim-stdout-pipe-1468702905'
39
+ </stdErr>
40
+ </executionLog>
41
+ <finalCounts>
42
+ <right>1</right>
43
+ <wrong>0</wrong>
44
+ <ignores>0</ignores>
45
+ <exceptions>0</exceptions>
46
+ </finalCounts>
47
+ <totalRunTimeInMillis>6832</totalRunTimeInMillis>
48
+ </suiteResults>
49
+