Skip to content

Commit cbf5783

Browse files
author
Perki
committed
Fixing serviceInfo - bug file upload
1 parent 8f99ffd commit cbf5783

File tree

6 files changed

+33
-25
lines changed

6 files changed

+33
-25
lines changed

Podfile.lock

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
PODS:
2-
- Alamofire (5.2.1)
3-
- Mocker (2.2.0)
4-
- PromisesObjC (1.2.9)
5-
- PromisesSwift (1.2.9):
6-
- PromisesObjC (= 1.2.9)
2+
- Alamofire (5.10.2)
3+
- Mocker (2.5.5)
4+
- PromisesObjC (2.4.0)
5+
- PromisesSwift (2.4.0):
6+
- PromisesObjC (= 2.4.0)
77
- Socket.IO-Client-Swift (15.2.0):
88
- Starscream (~> 3.1)
99
- Starscream (3.1.1)
@@ -24,13 +24,13 @@ SPEC REPOS:
2424
- Starscream
2525

2626
SPEC CHECKSUMS:
27-
Alamofire: e911732990610fe89af59ac0077f923d72dc3dfd
28-
Mocker: d0ceb340eddd5c28539a691ce67d068674cef9a0
29-
PromisesObjC: b48e0338dbbac2207e611750777895f7a5811b75
30-
PromisesSwift: 991ad88e9851c45410d6697d1fe5df88fd3deb08
27+
Alamofire: 7193b3b92c74a07f85569e1a6c4f4237291e7496
28+
Mocker: 8c731a8104962f246cadf2b02556218e9edc1390
29+
PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47
30+
PromisesSwift: 9d77319bbe72ebf6d872900551f7eeba9bce2851
3131
Socket.IO-Client-Swift: 1e3e3a1f09f3312a167f0d781eb2f383d477357c
3232
Starscream: 4bb2f9942274833f7b4d296a55504dcfc7edb7b0
3333

3434
PODFILE CHECKSUM: d6dc12204b40b69e26fe720e542ae7850f7739af
3535

36-
COCOAPODS: 1.10.0
36+
COCOAPODS: 1.16.2

PryvSwiftKit.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = 'PryvSwiftKit'
3-
s.version = '2.1.0'
3+
s.version = '2.1.1'
44
s.summary = 'Pryv Swift library for iOS'
55

66
s.description = <<-DESC

PryvSwiftKit/Service.swift

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public class Service: Equatable {
3434
private var session: Session!
3535
private var pryvServiceInfoUrl: String
3636
private var serviceCustomization: Json?
37-
private var pryvServiceInfo: Promise<PryvServiceInfo>?
37+
private var pryvServiceInfo: PryvServiceInfo?
3838
private var pollingInfo: (poll: String, poll_ms: Double, callback: (AuthResult) -> ())? {
3939
didSet {
4040
var currentState: AuthState? = nil
@@ -81,21 +81,25 @@ public class Service: Equatable {
8181
/// - Returns: promise to service info object, customized if needed
8282
public func info(forceFetch: Bool = false) -> Promise<PryvServiceInfo> {
8383
if forceFetch || pryvServiceInfo == nil {
84-
pryvServiceInfo = Promise<PryvServiceInfo>(on: .global(qos: .background), { (fullfill, reject) in
84+
var pryvServiceInfoPromise = Promise<PryvServiceInfo>(on: .global(qos: .background), { (fullfill, reject) in
8585
self.session.request(URL(string: self.pryvServiceInfoUrl)!).responseDecodable(of: PryvServiceInfo.self) { response in
8686
switch response.result {
8787
case .success(var serviceInfo):
88-
serviceInfo = self.customize(serviceInfo: serviceInfo, with: self.serviceCustomization)
89-
fullfill(serviceInfo)
88+
self.pryvServiceInfo = self.customize(serviceInfo: serviceInfo, with: self.serviceCustomization)
89+
90+
fullfill(self.pryvServiceInfo!)
9091
case .failure(let error):
9192
let servError = PryvError.requestError(error.localizedDescription)
9293
reject(servError)
9394
}
9495
}
9596
})
97+
return pryvServiceInfoPromise
9698
}
9799

98-
return pryvServiceInfo!
100+
return Promise<PryvServiceInfo>(on: .global(qos: .background), { (fullfill, reject) in
101+
fullfill(self.pryvServiceInfo!)
102+
})
99103
}
100104

101105
/// Return service info parameters
@@ -106,7 +110,7 @@ public class Service: Equatable {
106110
if pryvServiceInfo == nil {
107111
return nil
108112
}
109-
return try? await(pryvServiceInfo!)
113+
return self.pryvServiceInfo!
110114
}
111115

112116
/// Return an API Endpoint from a username and token and a PryvServiceInfo
@@ -127,7 +131,7 @@ public class Service: Equatable {
127131
/// - token (optional)
128132
/// - Returns: API Endpoint from a username and token and the PryvServiceInfo
129133
public func apiEndpointFor(username: String, token: String? = nil) -> Promise<String> {
130-
let serviceInfoPromise = pryvServiceInfo ?? info()
134+
let serviceInfoPromise = info()
131135

132136
return serviceInfoPromise.then { serviceInfo in
133137
return self.buildApiEndpoint(serviceInfo: serviceInfo, username: username, token: token)
@@ -184,7 +188,7 @@ public class Service: Equatable {
184188
/// }
185189
/// ```
186190
public func setUpAuth(authSettings: Json, stateChangedCallback: @escaping (AuthResult) -> ()) -> Promise<String> {
187-
let serviceInfoPromise = pryvServiceInfo ?? info()
191+
let serviceInfoPromise = info()
188192
return serviceInfoPromise.then { serviceInfo in
189193
let string = serviceInfo.register.hasSuffix("/") ? serviceInfo.register + "access" : serviceInfo.register + "/access"
190194
var request = URLRequest(url: URL(string: string)!)

PryvSwiftKitTests/ConnectionTests.swift

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,13 @@ class ConnectionTests: XCTestCase {
1818
private let testuser = "testuser"
1919
private let service = Service(pryvServiceInfoUrl: "https://reg.pryv.me/service/info")
2020
private let callBatches: [APICall] = [
21+
[
22+
"method": "streams.create",
23+
"params": [
24+
"id": "position",
25+
"name": "Position"
26+
]
27+
],
2128
[
2229
"method": "events.create",
2330
"params": [
@@ -72,7 +79,6 @@ class ConnectionTests: XCTestCase {
7279
var events = [Event]()
7380
var a = 0
7481
let results = connection?.api(APICalls: callBatches, handleResults: [0: { result in a = 2 }])
75-
7682
XCTAssert(waitForPromises(timeout: timeout))
7783
XCTAssertNil(results?.error)
7884
XCTAssertNotNil(results?.value)

PryvSwiftKitTests/ConnectionWebSocketTests.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ import XCTest
1212
@testable import PryvSwiftKit
1313

1414
class ConnectionWebSocketTests: XCTestCase {
15-
private let url = "https://testuser.pryv.me/testuser?auth=ckclwj7m504fo1od3fkt6ptqb"
16-
private let apiEndpoint = "https://ckclwj7m504fo1od3fkt6ptqb@testuser.pryv.me/"
15+
private let url = "https://testuser.pryv.me/testuser?auth=cm5wjb0fp003o1vpce4bc7rxj"
16+
private let apiEndpoint = "https://cm5wjb0fp003o1vpce4bc7rxj@testuser.pryv.me/"
1717
private let streamId = "lib-swift-test"
1818

1919
private var connectionWebSocket: ConnectionWebSocket!

PryvSwiftKitTests/ServiceTests.swift

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,7 @@ class ServiceTests: XCTestCase {
5151
XCTAssertEqual(serviceInfo?.api, "https://{username}.pryv.me/")
5252
XCTAssertEqual(serviceInfo?.name, "Pryv Lab")
5353
XCTAssertEqual(serviceInfo?.home, "https://sw.pryv.me")
54-
XCTAssertEqual(serviceInfo?.support, "https://pryv.com/helpdesk")
55-
XCTAssertEqual(serviceInfo?.terms, "https://pryv.com/terms-of-use/")
56-
XCTAssertEqual(serviceInfo?.eventTypes, "https://api.pryv.com/event-types/flat.json")
54+
XCTAssertEqual(serviceInfo?.eventTypes, "https://pryv.github.io/event-types/flat.json")
5755
}
5856

5957
func testInfoCustomized() {

0 commit comments

Comments
 (0)