Skip to content

Commit

Permalink
Merge pull request #437 from MaisaMilena/WCPairingTests
Browse files Browse the repository at this point in the history
Adds more unit tests for WCPairing
  • Loading branch information
André Vants authored Aug 19, 2022
2 parents 8ddc520 + f36d571 commit a82c6ac
Showing 1 changed file with 52 additions and 3 deletions.
55 changes: 52 additions & 3 deletions Tests/WalletConnectSignTests/WCPairingTests.swift
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import XCTest
import WalletConnectPairing
@testable import WalletConnectPairing
@testable import WalletConnectSign

final class WCPairingTests: XCTestCase {
Expand Down Expand Up @@ -35,18 +35,67 @@ final class WCPairingTests: XCTestCase {
XCTAssertEqual(pairing.expiryDate, inactiveExpiry)
}

func testUpdateExpiry() {
func testUpdateExpiryForTopic() {
var pairing = WCPairing(topic: "")
let activeExpiry = referenceDate.advanced(by: WCPairing.timeToLiveActive)
try? pairing.updateExpiry()
XCTAssertEqual(pairing.expiryDate, activeExpiry)
}

func testUpdateExpiryForUri() {
var pairing = WCPairing(uri: WalletConnectURI.stub())
let activeExpiry = referenceDate.advanced(by: WCPairing.timeToLiveActive)
try? pairing.updateExpiry()
XCTAssertEqual(pairing.expiryDate, activeExpiry)
}

func testActivate() {
func testActivateTopic() {
var pairing = WCPairing(topic: "")
let activeExpiry = referenceDate.advanced(by: WCPairing.timeToLiveActive)
XCTAssertFalse(pairing.active)
pairing.activate()
XCTAssertTrue(pairing.active)
XCTAssertEqual(pairing.expiryDate, activeExpiry)
}

func testActivateURI() {
var pairing = WCPairing(uri: WalletConnectURI.stub())
let activeExpiry = referenceDate.advanced(by: WCPairing.timeToLiveActive)
XCTAssertFalse(pairing.active)
pairing.activate()
XCTAssertTrue(pairing.active)
XCTAssertEqual(pairing.expiryDate, activeExpiry)
}

func testUpdateExpiryWhenValueIsGreaterThanMax() {
var pairing = WCPairing(topic: "", relay: .stub(), peerMetadata: .stub(), expiryDate: referenceDate)
XCTAssertThrowsError(try pairing.updateExpiry(40 * .day)) { error in
XCTAssertEqual(error as! WCPairing.Errors, WCPairing.Errors.invalidUpdateExpiryValue)
}
}

func testUpdateExpiryWhenNewExpiryDateIsLessThanExpiryDate() {
let expiryDate = referenceDate.advanced(by: 40 * .day)
var pairing = WCPairing(topic: "", relay: .stub(), peerMetadata: .stub(), expiryDate: expiryDate)
XCTAssertThrowsError(try pairing.updateExpiry(10 * .minute)) { error in
XCTAssertEqual(error as! WCPairing.Errors, WCPairing.Errors.invalidUpdateExpiryValue)
}
}

func testActivateWhenCanUpdateExpiry() {
var pairing = WCPairing(topic: "", relay: .stub(), peerMetadata: .stub(), expiryDate: referenceDate)
XCTAssertFalse(pairing.active)
pairing.activate()
XCTAssertTrue(pairing.active)
XCTAssertEqual(referenceDate.advanced(by: 30 * .day), pairing.expiryDate)
}

func testActivateWhenUpdateExpiryIsInvalid() {
let expiryDate = referenceDate.advanced(by: 40 * .day)
var pairing = WCPairing(topic: "", relay: .stub(), peerMetadata: .stub(), expiryDate: expiryDate)
XCTAssertFalse(pairing.active)
pairing.activate()
XCTAssertTrue(pairing.active)
XCTAssertEqual(expiryDate, pairing.expiryDate)
}
}

0 comments on commit a82c6ac

Please sign in to comment.