Skip to content

Commit 7a1a53e

Browse files
committed
add another test for special torus wallet flow
1 parent 4087e72 commit 7a1a53e

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

Tests/KukaiCryptoSwiftTests/KeyPairTests.swift

+21
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,27 @@ final class KeyPairTests: XCTestCase {
3838
XCTAssert(keyPair2?.publicKey.verify(message: watermarkedBytes, signature: signature2, hex: signatureHex2) == true)
3939
}
4040

41+
func testRegularTZ2() throws {
42+
let messageToSign = "something very interesting that needs to be signed".bytes
43+
let watermarkedBytes = messageToSign.addOperationWatermarkAndHash() ?? []
44+
45+
let privetKeyBytes: [UInt8] = [125, 133, 194, 84, 250, 98, 79, 41, 174, 84, 233, 129, 41, 85, 148, 33, 44, 186, 87, 103, 235, 213, 247, 99, 133, 29, 151, 197, 91, 106, 136, 214]
46+
let base58encodedKey = Base58Check.encode(message: privetKeyBytes, prefix: Prefix.Keys.Secp256k1.secret)
47+
48+
if let privateKey = PrivateKey(base58encodedKey, signingCurve: .secp256k1), let pubKey = KeyPair.secp256k1PublicKey(fromPrivateKeyBytes: privateKey.bytes) {
49+
let tempAddress = pubKey.publicKeyHash
50+
51+
let signature = privateKey.sign(bytes: watermarkedBytes) ?? []
52+
let signatureHex = signature.hexString
53+
54+
XCTAssert(tempAddress == "tz2HpbGQcmU3UyusJ78Sbqeg9fYteamSMDGo", tempAddress ?? "-")
55+
XCTAssert(signatureHex == "2c9f14f18a21867fd2fe3130ad3aaeca7cb1c9421d78d32537173b98b25ed07d054837a878c7e9fe2d237b42c90e5aa2a63a58774833221707cc303a2121b3e7", signatureHex)
56+
57+
} else {
58+
XCTFail("Failed to create private key or public key")
59+
}
60+
}
61+
4162
func testHD() throws {
4263
let messageToSign = "something very interesting that needs to be signed".bytes
4364
let watermarkedBytes = messageToSign.addOperationWatermarkAndHash() ?? []

0 commit comments

Comments
 (0)