Skip to content

Commit c0a001c

Browse files
committed
Progress is now working properly
1 parent 3554952 commit c0a001c

2 files changed

Lines changed: 5 additions & 4 deletions

File tree

Sources/Apollo/SessionDelegate.swift

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ class SessionDelegate: NSObject {
2424
self.tasks[task.taskIdentifier] = SessionDelegateTask(completionHandler: completionHandler, progressHandler: progressHandler)
2525
}
2626

27-
func get(task: URLSessionTask) -> SessionDelegateTask? {
27+
fileprivate func get(task: URLSessionTask) -> SessionDelegateTask? {
2828
return lock.withLock {
2929
return self.tasks[task.taskIdentifier]
3030
}
3131
}
3232

33-
func remove(task: URLSessionTask) {
33+
fileprivate func remove(task: URLSessionTask) {
3434
self.lock.lock()
3535
defer { self.lock.unlock() }
3636

@@ -47,7 +47,8 @@ extension SessionDelegate: URLSessionDataDelegate {
4747
extension SessionDelegate: URLSessionTaskDelegate {
4848
func urlSession(_ session: URLSession, task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, totalBytesExpectedToSend: Int64) {
4949
if let sessionTask = self.get(task: task), let progressHandler = sessionTask.progressHandler {
50-
progressHandler(Progress((totalBytesSent/totalBytesExpectedToSend)) * 100)
50+
let progress = Float(totalBytesSent)/Float(totalBytesExpectedToSend)
51+
progressHandler(Progress(progress * 100))
5152
}
5253
}
5354

Tests/ApolloTestSupport/MockNetworkTransport.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ public final class MockNetworkTransport: NetworkTransport {
77
self.body = body
88
}
99

10-
public func send<Operation:>(operation: Operation, completionHandler: @escaping (GraphQLResponse<Operation>?, Error?) -> Void) -> Cancellable {
10+
public func send<Operation>(operation: Operation, completionHandler: @escaping (GraphQLResponse<Operation>?, Error?) -> Void) -> Cancellable {
1111
DispatchQueue.global(qos: .default).async {
1212
completionHandler(GraphQLResponse(operation: operation, body: self.body), nil)
1313
}

0 commit comments

Comments
 (0)