Skip to content

Commit e8c4b4c

Browse files
committed
Updated tests
1 parent ac644e3 commit e8c4b4c

File tree

2 files changed

+51
-1
lines changed

2 files changed

+51
-1
lines changed

CobaltTests/CobaltTests-Requests.swift

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,55 @@ import Foundation
1414
@testable import Cobalt
1515

1616
class CobaltTestsRequests: CobaltTests {
17+
func testRequestQueue() {
18+
waitUntil(expectedFulfillmentCount: 2) { done in
19+
20+
let accessToken = AccessToken(host: self.config.host!)
21+
accessToken.accessToken = "access_token1"
22+
accessToken.expireDate = Date(timeIntervalSinceNow: 10)
23+
accessToken.grantType = .clientCredentials
24+
accessToken.store()
25+
26+
let request1 = Request {
27+
$0.authentication = .client
28+
$0.path = "/some_strange_request"
29+
$0.authentication = .oauth2(.clientCredentials)
30+
}
31+
32+
self.client.request(request1).subscribe { event in
33+
switch event {
34+
case .success:
35+
XCTAssert(false, "Should not get here")
36+
37+
case .failure:
38+
break
39+
}
40+
done?()
41+
}.disposed(by: self.disposeBag)
42+
43+
let request2 = Request {
44+
$0.authentication = .client
45+
$0.path = "/api/users"
46+
$0.parameters = [
47+
"per_page": 10
48+
]
49+
$0.authentication = .oauth2(.clientCredentials)
50+
}
51+
52+
self.client.request(request2).subscribe { event in
53+
switch event {
54+
case .success(let json):
55+
XCTAssert(json["data"].arrayValue.count == 10)
56+
57+
case .failure(let error):
58+
XCTAssert(false, "\(error)")
59+
}
60+
done?()
61+
}.disposed(by: self.disposeBag)
62+
}
63+
}
64+
65+
1766
func testRequestGET() {
1867
waitUntil { done in
1968
let request = Request {

CobaltTests/CobaltTests.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,9 @@ class CobaltTests: XCTestCase {
3030
super.tearDown()
3131
}
3232

33-
func waitUntil(_ handler: @escaping (((() -> Void)?) -> Void)) {
33+
func waitUntil(expectedFulfillmentCount: Int = 1, _ handler: @escaping (((() -> Void)?) -> Void)) {
3434
let expectation = self.expectation(description: "test")
35+
expectation.expectedFulfillmentCount = expectedFulfillmentCount
3536
handler({ expectation.fulfill() })
3637
waitForExpectations(timeout: 15, handler: nil)
3738
}

0 commit comments

Comments
 (0)