Skip to content

Commit ed5ee10

Browse files
author
Daniel Browne
committed
Refactor 'if let' to 'guard let' in 'Tests'
1 parent 291062b commit ed5ee10

File tree

6 files changed

+92
-57
lines changed

6 files changed

+92
-57
lines changed

Tests/Helpers/Helpers.swift

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,18 @@ import Foundation
33
@testable import PusherSwift
44

55
func convertStringToDictionary(_ text: String) -> [String: AnyObject]? {
6-
if let data = text.data(using: .utf8) {
7-
do {
8-
let json = try JSONSerialization.jsonObject(with: data, options: .mutableContainers) as? [String: AnyObject]
9-
return json
10-
} catch {
11-
print("Something went wrong")
12-
}
6+
guard let data = text.data(using: .utf8) else {
7+
return nil
8+
}
9+
10+
do {
11+
let json = try JSONSerialization.jsonObject(with: data, options: .mutableContainers) as? [String: AnyObject]
12+
return json
13+
} catch {
14+
print("Something went wrong")
15+
16+
return nil
1317
}
14-
return nil
1518
}
1619

1720
extension AuthMethod: Equatable {

Tests/Integration/AuthenticationTests.swift

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,11 @@ class AuthenticationTests: XCTestCase {
1010
var testingChannelName: String?
1111

1212
func subscribedToChannel(name: String) {
13-
if let cName = testingChannelName, cName == name {
14-
ex!.fulfill()
13+
guard let cName = testingChannelName, cName == name else {
14+
return
1515
}
16+
17+
ex!.fulfill()
1618
}
1719
}
1820

@@ -126,11 +128,15 @@ class AuthenticationTests: XCTestCase {
126128
XCTAssertFalse(chan.subscribed, "the channel should not be subscribed")
127129

128130
_ = pusher.bind({ (data: Any?) -> Void in
129-
if let data = data as? [String: AnyObject], let eventName = data["event"] as? String, eventName == "pusher:subscription_error" {
130-
XCTAssertEqual("private-test-channel", data["channel"] as? String)
131-
XCTAssertTrue(Thread.isMainThread)
132-
ex.fulfill()
131+
guard let data = data as? [String: AnyObject],
132+
let eventName = data["event"] as? String,
133+
eventName == "pusher:subscription_error" else {
134+
return
133135
}
136+
137+
XCTAssertEqual("private-test-channel", data["channel"] as? String)
138+
XCTAssertTrue(Thread.isMainThread)
139+
ex.fulfill()
134140
})
135141

136142
pusher.connect()

Tests/Integration/PusherIncomingEventHandlingTests.swift

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -235,12 +235,16 @@ class HandlingIncomingEventsTests: XCTestCase {
235235
let ex = expectation(description: "Callback should be called")
236236

237237
_ = pusher.bind({ (message: Any?) in
238-
if let message = message as? [String: AnyObject], let eventName = message["event"] as? String, eventName == "pusher:error" {
239-
if let data = message["data"] as? [String: AnyObject], let errorMessage = data["message"] as? String {
240-
XCTAssertEqual(errorMessage, "Existing subscription to channel my-channel")
241-
ex.fulfill()
242-
}
238+
guard let message = message as? [String: AnyObject],
239+
let eventName = message["event"] as? String,
240+
eventName == "pusher:error",
241+
let data = message["data"] as? [String: AnyObject],
242+
let errorMessage = data["message"] as? String else {
243+
return
243244
}
245+
246+
XCTAssertEqual(errorMessage, "Existing subscription to channel my-channel")
247+
ex.fulfill()
244248
})
245249
// pretend that we tried to subscribe to my-channel twice and got this error
246250
// back from Pusher

Tests/Integration/PusherTopLevelAPITests.swift

Lines changed: 35 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,12 @@ class PusherTopLevelApiTests: XCTestCase {
1616
}
1717

1818
func changedConnectionState(from old: ConnectionState, to new: ConnectionState) {
19-
if let stateCallbacks = callbacks[new] {
20-
for callback in stateCallbacks {
21-
callback()
22-
}
19+
guard let stateCallbacks = callbacks[new] else {
20+
return
21+
}
22+
23+
for callback in stateCallbacks {
24+
callback()
2325
}
2426
}
2527
}
@@ -30,9 +32,12 @@ class PusherTopLevelApiTests: XCTestCase {
3032
var connectionStubber = StubberForMocks()
3133

3234
func subscribedToChannel(name: String) {
33-
if let cName = testingChannelName, cName == name {
34-
ex!.fulfill()
35+
guard let cName = testingChannelName,
36+
cName == name else {
37+
return
3538
}
39+
40+
ex!.fulfill()
3641
}
3742

3843
func changedConnectionState(from old: ConnectionState, to new: ConnectionState) {
@@ -170,13 +175,15 @@ class PusherTopLevelApiTests: XCTestCase {
170175
_ = self.pusher.subscribe("test-channel")
171176

172177
self.socket.stubber.registerCallback { calls in
173-
if let name = calls.last?.name, name == "writeString" {
174-
let parsedSubscribeArgs = convertStringToDictionary(calls.last?.args!.first as! String)
175-
let expectedDict = ["data": ["channel": "test-channel"], "event": "pusher:subscribe"] as [String: Any]
176-
let parsedEqualsExpected = NSDictionary(dictionary: parsedSubscribeArgs!).isEqual(to: NSDictionary(dictionary: expectedDict) as [NSObject: AnyObject])
177-
XCTAssertTrue(parsedEqualsExpected)
178-
subscribed.fulfill()
178+
guard let name = calls.last?.name, name == "writeString" else {
179+
return
179180
}
181+
182+
let parsedSubscribeArgs = convertStringToDictionary(calls.last?.args!.first as! String)
183+
let expectedDict = ["data": ["channel": "test-channel"], "event": "pusher:subscribe"] as [String: Any]
184+
let parsedEqualsExpected = NSDictionary(dictionary: parsedSubscribeArgs!).isEqual(to: NSDictionary(dictionary: expectedDict) as [NSObject: AnyObject])
185+
XCTAssertTrue(parsedEqualsExpected)
186+
subscribed.fulfill()
180187
}
181188
}
182189

@@ -201,9 +208,13 @@ class PusherTopLevelApiTests: XCTestCase {
201208
let ex = expectation(description: "should call global callback")
202209
pusher.connect()
203210
let callback = { (data: Any?) -> Void in
204-
if let data = data as? [String: Any], let eName = data["event"] as? String, eName == "pusher:subscription_succeeded" {
205-
ex.fulfill()
211+
guard let data = data as? [String: Any],
212+
let eName = data["event"] as? String,
213+
eName == "pusher:subscription_succeeded" else {
214+
return
206215
}
216+
217+
ex.fulfill()
207218
}
208219
_ = pusher.bind(callback)
209220
_ = pusher.subscribe("test-channel")
@@ -368,13 +379,16 @@ class PusherTopLevelApiTests: XCTestCase {
368379
}
369380
let ex = expectation(description: "should send unsubscribe")
370381
socket.stubber.registerCallback { calls in
371-
if let name = calls.last?.name, name == "writeString" {
372-
let parsedSubscribeArgs = convertStringToDictionary(calls.last?.args!.first as! String)
373-
let expectedDict = ["data": ["channel": "test-channel"], "event": "pusher:unsubscribe"] as [String: Any]
374-
let parsedEqualsExpected = NSDictionary(dictionary: parsedSubscribeArgs!).isEqual(to: NSDictionary(dictionary: expectedDict) as [NSObject: AnyObject])
375-
if parsedEqualsExpected {
376-
ex.fulfill()
377-
}
382+
guard let name = calls.last?.name,
383+
name == "writeString" else {
384+
return
385+
}
386+
387+
let parsedSubscribeArgs = convertStringToDictionary(calls.last?.args!.first as! String)
388+
let expectedDict = ["data": ["channel": "test-channel"], "event": "pusher:unsubscribe"] as [String: Any]
389+
let parsedEqualsExpected = NSDictionary(dictionary: parsedSubscribeArgs!).isEqual(to: NSDictionary(dictionary: expectedDict) as [NSObject: AnyObject])
390+
if parsedEqualsExpected {
391+
ex.fulfill()
378392
}
379393
}
380394
waitForExpectations(timeout: 0.5)

Tests/Unit/Models/ClientEventTests.swift

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,14 @@ class ClientEventTests: XCTestCase {
4747
let ex = expectation(description: "send client event eventually")
4848
socket.stubber.registerCallback { calls in
4949
let expectedDict = ["data": ["data": "testing client events"], "event": "client-test-event", "channel": "private-channel"] as [String: Any]
50-
if let lastCall = calls.last, lastCall.name == "writeString" {
51-
let parsedSubscribeArgs = convertStringToDictionary(lastCall.args!.first as! String)
52-
let parsedEqualsExpected = NSDictionary(dictionary: parsedSubscribeArgs!).isEqual(to: NSDictionary(dictionary: expectedDict) as [NSObject: AnyObject])
53-
if parsedEqualsExpected {
54-
ex.fulfill()
55-
}
50+
guard let lastCall = calls.last, lastCall.name == "writeString" else {
51+
return
52+
}
53+
54+
let parsedSubscribeArgs = convertStringToDictionary(lastCall.args!.first as! String)
55+
let parsedEqualsExpected = NSDictionary(dictionary: parsedSubscribeArgs!).isEqual(to: NSDictionary(dictionary: expectedDict) as [NSObject: AnyObject])
56+
if parsedEqualsExpected {
57+
ex.fulfill()
5658
}
5759
}
5860
connection.connect()
@@ -71,13 +73,15 @@ class ClientEventTests: XCTestCase {
7173

7274
let ex = expectation(description: "send client event eventually")
7375
socket.stubber.registerCallback { calls in
74-
if let lastCall = calls.last, lastCall.name == "writeString" {
75-
let parsedSubscribeArgs = convertStringToDictionary(lastCall.args!.first as! String)
76-
let expectedDict = ["data": ["data": "more testing client events"], "event": "client-test-event", "channel": "private-channel"] as [String: Any]
77-
let parsedEqualsExpected = NSDictionary(dictionary: parsedSubscribeArgs!).isEqual(to: NSDictionary(dictionary: expectedDict) as [NSObject: AnyObject])
78-
if parsedEqualsExpected {
79-
ex.fulfill()
80-
}
76+
guard let lastCall = calls.last, lastCall.name == "writeString" else {
77+
return
78+
}
79+
80+
let parsedSubscribeArgs = convertStringToDictionary(lastCall.args!.first as! String)
81+
let expectedDict = ["data": ["data": "more testing client events"], "event": "client-test-event", "channel": "private-channel"] as [String: Any]
82+
let parsedEqualsExpected = NSDictionary(dictionary: parsedSubscribeArgs!).isEqual(to: NSDictionary(dictionary: expectedDict) as [NSObject: AnyObject])
83+
if parsedEqualsExpected {
84+
ex.fulfill()
8185
}
8286

8387
}

Tests/Unit/Protocols/PusherConnectionDelegateTests.swift

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,19 @@ class PusherConnectionDelegateTests: XCTestCase {
2424
}
2525

2626
open func subscribedToChannel(name: String) {
27-
if let cName = testingChannelName, cName == name {
28-
ex!.fulfill()
27+
guard let cName = testingChannelName, cName == name else {
28+
return
2929
}
30+
31+
ex!.fulfill()
3032
}
3133

3234
open func failedToSubscribeToChannel(name: String, response: URLResponse?, data: String?, error: NSError?) {
33-
if let cName = testingChannelName, cName == name {
34-
ex!.fulfill()
35+
guard let cName = testingChannelName, cName == name else {
36+
return
3537
}
38+
39+
ex!.fulfill()
3640
}
3741

3842
open func receivedError(error: PusherError) {

0 commit comments

Comments
 (0)