26
26
// Version 1.1 (the "License"); you may not use this file except in
27
27
// compliance with the License. You may obtain a copy of the License at
28
28
// https://www.mozilla.org/MPL/
29
- //
29
+ //
30
30
// Software distributed under the License is distributed on an "AS IS"
31
31
// basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
32
32
// License for the specific language governing rights and limitations
@@ -89,7 +89,7 @@ class ConnectionRecoveryIntegrationTest: XCTestCase {
89
89
90
90
ch. confirmSelect ( )
91
91
92
- ex1. publish ( " before close " )
92
+ ex1. publish ( " before close " . dataUsingEncoding ( NSUTF8StringEncoding ) )
93
93
XCTAssertEqual ( 0 , dispatch_semaphore_wait ( consumerSemaphore, TestHelper . dispatchTimeFromNow ( semaphoreTimeout) ) ,
94
94
" Timed out waiting for message " )
95
95
@@ -98,9 +98,9 @@ class ConnectionRecoveryIntegrationTest: XCTestCase {
98
98
XCTAssert ( TestHelper . pollUntil { delegate. recoveredConnection != nil } ,
99
99
" Didn't finish recovery " )
100
100
101
- q. publish ( " after close 1 " )
101
+ q. publish ( " after close 1 " . dataUsingEncoding ( NSUTF8StringEncoding ) )
102
102
dispatch_semaphore_wait ( consumerSemaphore, TestHelper . dispatchTimeFromNow ( semaphoreTimeout) )
103
- ex1. publish ( " after close 2 " )
103
+ ex1. publish ( " after close 2 " . dataUsingEncoding ( NSUTF8StringEncoding ) )
104
104
dispatch_semaphore_wait ( consumerSemaphore, TestHelper . dispatchTimeFromNow ( semaphoreTimeout) )
105
105
106
106
var acks : Set < NSNumber > ?
@@ -111,18 +111,20 @@ class ConnectionRecoveryIntegrationTest: XCTestCase {
111
111
dispatch_semaphore_signal ( confirmSemaphore)
112
112
}
113
113
114
- XCTAssertEqual ( [ " before close " , " after close 1 " , " after close 2 " ] , messages. map { $0. content } )
114
+ XCTAssertEqual ( " before close " . dataUsingEncoding ( NSUTF8StringEncoding) , messages [ 0 ] . body)
115
+ XCTAssertEqual ( " after close 1 " . dataUsingEncoding ( NSUTF8StringEncoding) , messages [ 1 ] . body)
116
+ XCTAssertEqual ( " after close 2 " . dataUsingEncoding ( NSUTF8StringEncoding) , messages [ 2 ] . body)
115
117
116
118
XCTAssertEqual ( 0 , dispatch_semaphore_wait ( confirmSemaphore, TestHelper . dispatchTimeFromNow ( semaphoreTimeout) ) )
117
119
XCTAssert ( acks!. union ( nacks!) . isSupersetOf ( [ 2 , 3 ] ) ,
118
120
" Didn't receive acks for publications post-recovery (pre-recovery acks can be lost) " )
119
121
120
122
// test recovery of queue arguments - in this case, x-max-length
121
123
consumer. cancel ( )
122
- q. publish ( " 4 " )
123
- q. publish ( " 5 " )
124
- q. publish ( " 6 " )
125
- q. publish ( " 7 " )
124
+ q. publish ( " 4 " . dataUsingEncoding ( NSUTF8StringEncoding ) )
125
+ q. publish ( " 5 " . dataUsingEncoding ( NSUTF8StringEncoding ) )
126
+ q. publish ( " 6 " . dataUsingEncoding ( NSUTF8StringEncoding ) )
127
+ q. publish ( " 7 " . dataUsingEncoding ( NSUTF8StringEncoding ) )
126
128
127
129
var messagesPostCancel : [ RMQMessage ] = [ ]
128
130
q. subscribe { m in
@@ -133,7 +135,9 @@ class ConnectionRecoveryIntegrationTest: XCTestCase {
133
135
for _ in 5 ... 7 {
134
136
XCTAssertEqual ( 0 , dispatch_semaphore_wait ( consumerSemaphore, TestHelper . dispatchTimeFromNow ( semaphoreTimeout) ) )
135
137
}
136
- XCTAssertEqual ( [ " 5 " , " 6 " , " 7 " ] , messagesPostCancel. map { $0. content } )
138
+ XCTAssertEqual ( " 5 " . dataUsingEncoding ( NSUTF8StringEncoding) , messagesPostCancel [ 0 ] . body)
139
+ XCTAssertEqual ( " 6 " . dataUsingEncoding ( NSUTF8StringEncoding) , messagesPostCancel [ 1 ] . body)
140
+ XCTAssertEqual ( " 7 " . dataUsingEncoding ( NSUTF8StringEncoding) , messagesPostCancel [ 2 ] . body)
137
141
}
138
142
139
143
func testReenablesConsumersOnEachRecoveryFromConnectionClose( ) {
@@ -167,7 +171,7 @@ class ConnectionRecoveryIntegrationTest: XCTestCase {
167
171
dispatch_semaphore_signal ( semaphore)
168
172
}
169
173
170
- ex. publish ( " before close " )
174
+ ex. publish ( " before close " . dataUsingEncoding ( NSUTF8StringEncoding ) )
171
175
XCTAssertEqual ( 0 , dispatch_semaphore_wait ( semaphore, TestHelper . dispatchTimeFromNow ( semaphoreTimeout) ) ,
172
176
" Timed out waiting for message " )
173
177
@@ -177,24 +181,30 @@ class ConnectionRecoveryIntegrationTest: XCTestCase {
177
181
" Didn't finish recovery the first time " )
178
182
delegate. recoveredConnection = nil
179
183
180
- q. publish ( " after close 1 " )
184
+ q. publish ( " after close 1 " . dataUsingEncoding ( NSUTF8StringEncoding ) )
181
185
dispatch_semaphore_wait ( semaphore, TestHelper . dispatchTimeFromNow ( semaphoreTimeout) )
182
- ex. publish ( " after close 2 " )
186
+ ex. publish ( " after close 2 " . dataUsingEncoding ( NSUTF8StringEncoding ) )
183
187
dispatch_semaphore_wait ( semaphore, TestHelper . dispatchTimeFromNow ( semaphoreTimeout) )
184
188
185
- XCTAssertEqual ( [ " before close " , " after close 1 " , " after close 2 " ] , messages. map { $0. content } )
189
+ XCTAssertEqual ( " before close " . dataUsingEncoding ( NSUTF8StringEncoding) , messages [ 0 ] . body)
190
+ XCTAssertEqual ( " after close 1 " . dataUsingEncoding ( NSUTF8StringEncoding) , messages [ 1 ] . body)
191
+ XCTAssertEqual ( " after close 2 " . dataUsingEncoding ( NSUTF8StringEncoding) , messages [ 2 ] . body)
186
192
187
193
try ! closeAllConnections ( )
188
194
189
195
XCTAssert ( TestHelper . pollUntil { delegate. recoveredConnection != nil } ,
190
196
" Didn't finish recovery the second time " )
191
197
192
- q. publish ( " after close 3 " )
198
+ q. publish ( " after close 3 " . dataUsingEncoding ( NSUTF8StringEncoding ) )
193
199
dispatch_semaphore_wait ( semaphore, TestHelper . dispatchTimeFromNow ( semaphoreTimeout) )
194
- ex. publish ( " after close 4 " )
200
+ ex. publish ( " after close 4 " . dataUsingEncoding ( NSUTF8StringEncoding ) )
195
201
dispatch_semaphore_wait ( semaphore, TestHelper . dispatchTimeFromNow ( semaphoreTimeout) )
196
202
197
- XCTAssertEqual ( [ " before close " , " after close 1 " , " after close 2 " , " after close 3 " , " after close 4 " ] , messages. map { $0. content } )
203
+ XCTAssertEqual ( " before close " . dataUsingEncoding ( NSUTF8StringEncoding) , messages [ 0 ] . body)
204
+ XCTAssertEqual ( " after close 1 " . dataUsingEncoding ( NSUTF8StringEncoding) , messages [ 1 ] . body)
205
+ XCTAssertEqual ( " after close 2 " . dataUsingEncoding ( NSUTF8StringEncoding) , messages [ 2 ] . body)
206
+ XCTAssertEqual ( " after close 3 " . dataUsingEncoding ( NSUTF8StringEncoding) , messages [ 3 ] . body)
207
+ XCTAssertEqual ( " after close 4 " . dataUsingEncoding ( NSUTF8StringEncoding) , messages [ 4 ] . body)
198
208
}
199
209
200
210
private func connections( ) -> [ RMQHTTPConnection ] {
0 commit comments