40 lines
1.6 KiB
Swift
40 lines
1.6 KiB
Swift
//
|
|
// LiberatedInviteTests.swift
|
|
// ZirclesTests
|
|
//
|
|
// Created by Francisco Gindre on 7/3/20.
|
|
// Copyright © 2020 Electric Coin Company. All rights reserved.
|
|
//
|
|
|
|
import XCTest
|
|
@testable import Zircles
|
|
class LiberatedInviteTests: XCTestCase {
|
|
|
|
let extendedViewingKey: String = "zxviews1qvhluf0pqqqqpq8ywsuq89wulufzghltkt76vz33rrhpaekeakr68at2lglxwfuxkth58vw8cp9s8z0qguqzxc0wfaz6f4mp7vfs47hex6n38tczds7uakalf3a25qwth56v8tz95p4qfyjquk7thwzr3uq6hwgwu4emxm3wrf3yspgatcvup83pl96jrvaymznxa5vdlh6dfgfuzja3egv96hg5eyelrlgkf29su9hucds8zjt2lnsqlcaajq7klkjxc40v80d6sfqkvwjet"
|
|
|
|
let zircleName = "Hackathon Drinks"
|
|
let height: Int = 663190
|
|
|
|
func expectedUrlString() -> String {
|
|
LiberatedInviteHandler.InviteComponents.scheme.rawValue +
|
|
"://" +
|
|
LiberatedInviteHandler.InviteComponents.host.rawValue + "?name=\(zircleName.replacingOccurrences(of: " ", with: "%20"))&vk=\(extendedViewingKey)&height=\(height)"
|
|
}
|
|
|
|
func testHappyPath() throws {
|
|
guard let parsedInvite = LiberatedInviteHandler.parseInvite(URL(string: expectedUrlString())!) else {
|
|
XCTFail("parsed invite nil")
|
|
return
|
|
}
|
|
XCTAssertEqual(parsedInvite.name, zircleName)
|
|
XCTAssertEqual(parsedInvite.height, height)
|
|
XCTAssertEqual(parsedInvite.viewingKey, extendedViewingKey)
|
|
}
|
|
|
|
func testLiberatedPaymentGeneration() {
|
|
let invite = LiberatedInviteHandler.inviteWith(name: zircleName, viewingkey: extendedViewingKey, height: height)
|
|
|
|
XCTAssertEqual(invite, URL(string: expectedUrlString())!)
|
|
}
|
|
}
|