Skip to content

Commit

Permalink
Throw error on wrong API param
Browse files Browse the repository at this point in the history
  • Loading branch information
flypaper0 committed Sep 1, 2022
1 parent 927c388 commit e00368f
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 4 deletions.
5 changes: 4 additions & 1 deletion Sources/Auth/AuthClient.swift
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import WalletConnectRelay
/// Access via `Auth.instance`
public class AuthClient {
enum Errors: Error {
case malformedPairingURI
case pairingUriWrongApiParam
case unknownWalletAddress
case noPairingMatchingTopic
}
Expand Down Expand Up @@ -92,6 +92,9 @@ public class AuthClient {
/// - When URI is invalid format or missing params
/// - When topic is already in use
public func pair(uri: WalletConnectURI) async throws {
guard uri.api = .auth else {
throw Errors.pairingUriWrongApiParam
}
try await walletPairService.pair(uri)
}

Expand Down
3 changes: 3 additions & 0 deletions Sources/WalletConnectSign/Sign/SignClient.swift
Original file line number Diff line number Diff line change
Expand Up @@ -169,6 +169,9 @@ public final class SignClient {
/// - When URI has invalid format or missing params
/// - When topic is already in use
public func pair(uri: WalletConnectURI) async throws {
guard uri.api = .sign else {
throw WalletConnectError.pairingUriWrongApiParam
}
try await pairEngine.pair(uri)
}

Expand Down
6 changes: 3 additions & 3 deletions Sources/WalletConnectSign/WalletConnectError.swift
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
enum WalletConnectError: Error {

case pairingProposalFailed
case malformedPairingURI
case pairingUriWrongApiParam
case noPairingMatchingTopic(String)
case noSessionMatchingTopic(String)
case sessionNotAcknowledged(String)
Expand Down Expand Up @@ -29,8 +29,8 @@ extension WalletConnectError {
switch self {
case .pairingProposalFailed:
return "Pairing proposal failed."
case .malformedPairingURI:
return "Pairing URI string is invalid."
case .pairingUriWrongApiParam:
return "Pairing URI containt wrong API param"
case .noPairingMatchingTopic(let topic):
return "There is no existing pairing matching the topic: \(topic)."
case .noSessionMatchingTopic(let topic):
Expand Down

0 comments on commit e00368f

Please sign in to comment.